108 lines
2.7 KiB
Python
108 lines
2.7 KiB
Python
"""Hilo integration constants."""
|
|
|
|
import logging
|
|
|
|
from homeassistant.components.utility_meter.const import DAILY
|
|
|
|
LOG = logging.getLogger(__package__)
|
|
DOMAIN = "hilo"
|
|
HILO_ENERGY_TOTAL = "hilo_energy_total"
|
|
|
|
# Configurations
|
|
CONF_APPRECIATION_PHASE = "appreciation_phase"
|
|
DEFAULT_APPRECIATION_PHASE = 0
|
|
|
|
CONF_CHALLENGE_LOCK = "challenge_lock"
|
|
DEFAULT_CHALLENGE_LOCK = False
|
|
|
|
CONF_ENERGY_METER_PERIOD = "energy_meter_period"
|
|
DEFAULT_ENERGY_METER_PERIOD = DAILY
|
|
|
|
CONF_GENERATE_ENERGY_METERS = "generate_energy_meters"
|
|
DEFAULT_GENERATE_ENERGY_METERS = False
|
|
|
|
CONF_HQ_PLAN_NAME = "hq_plan_name"
|
|
DEFAULT_HQ_PLAN_NAME = "rate d"
|
|
|
|
CONF_LOG_TRACES = "log_traces"
|
|
DEFAULT_LOG_TRACES = False
|
|
|
|
CONF_PRE_COLD_PHASE = "pre_cold_phase"
|
|
DEFAULT_PRE_COLD_PHASE = 0
|
|
|
|
CONF_TRACK_UNKNOWN_SOURCES = "track_unknown_sources"
|
|
DEFAULT_TRACK_UNKNOWN_SOURCES = False
|
|
|
|
CONF_UNTARIFICATED_DEVICES = "untarificated_devices"
|
|
DEFAULT_UNTARIFICATED_DEVICES = False
|
|
|
|
DEFAULT_SCAN_INTERVAL = 300
|
|
EVENT_SCAN_INTERVAL = 1800
|
|
# During reduction phase, let's refresh the current challenge event
|
|
# more often to get the reward numbers
|
|
# Note ic-dev21: we'll stay at 300 until proper fix
|
|
EVENT_SCAN_INTERVAL_REDUCTION = 300
|
|
NOTIFICATION_SCAN_INTERVAL = 1800
|
|
MAX_SUB_INTERVAL = 120
|
|
MIN_SCAN_INTERVAL = 60
|
|
REWARD_SCAN_INTERVAL = 7200
|
|
WEATHER_SCAN_INTERVAL = 1800
|
|
|
|
CONF_TARIFF = {
|
|
"rate d": {
|
|
"low_threshold": 40,
|
|
"low": 0.07065,
|
|
"medium": 0.11142,
|
|
"high": 0,
|
|
"access": 0.46154,
|
|
"reward_rate": 0.58490,
|
|
},
|
|
"flex d": {
|
|
"low_threshold": 40,
|
|
"low": 0.04886,
|
|
"medium": 0.09103,
|
|
"high": 0.46463,
|
|
"access": 0.46154,
|
|
"reward_rate": 0.55,
|
|
},
|
|
}
|
|
|
|
|
|
TARIFF_LIST = ["high", "medium", "low"]
|
|
|
|
WEATHER_CONDITIONS = {
|
|
"Unknown": "mdi:weather-sunny-alert",
|
|
"Blowing Snow": "mdi:weather-snowy-heavy",
|
|
"Clear": "mdi:weather-sunny",
|
|
"Cloudy": "mdi:weather-cloudy",
|
|
"Fair": "mdi:weather-partly-cloudy",
|
|
"Foggy": "mdi:weather-fog",
|
|
"Hail Sleet": "mdi:weather-hail",
|
|
"Mostly Cloudy": "mdi:weather-partly-cloudy",
|
|
"Rain": "mdi:weather-rainy",
|
|
"Rain Snow": "mdi:weather-snowy-rainy",
|
|
"Snow": "mdi:weather-snowy",
|
|
"Thunder": "mdi:weather-lightning",
|
|
"Windy": "mdi:weather-windy",
|
|
}
|
|
|
|
# Class lists
|
|
LIGHT_CLASSES = ["LightDimmer", "WhiteBulb", "ColorBulb", "LightSwitch"]
|
|
HILO_SENSOR_CLASSES = [
|
|
"SmokeDetector",
|
|
"IndoorWeatherStation",
|
|
"OutdoorWeatherStation",
|
|
"Gateway",
|
|
]
|
|
CLIMATE_CLASSES = [
|
|
"Thermostat",
|
|
"FloorThermostat",
|
|
"Thermostat24V",
|
|
"MysaThermostat",
|
|
"TCC24V",
|
|
"SinopeThermostat",
|
|
"SinopeFloorThermostat",
|
|
"Sinope24V",
|
|
]
|
|
SWITCH_CLASSES = ["Outlet", "Ccr", "Cee", "SinopeWaterHeater"]
|