Initial Home Assistant Configuration
This commit is contained in:
@@ -0,0 +1,135 @@
|
||||
import voluptuous as vol
|
||||
from random import randint
|
||||
|
||||
DOMAIN = "nordpool"
|
||||
RANDOM_MINUTE = randint(10, 30)
|
||||
RANDOM_SECOND = randint(0, 59)
|
||||
EVENT_NEW_HOUR = "nordpool_update_hour"
|
||||
EVENT_NEW_DAY = "nordpool_update_day"
|
||||
EVENT_NEW_PRICE = "nordpool_update_new_price"
|
||||
SENTINEL = object()
|
||||
|
||||
_CURRENCY_LIST = ["DKK", "EUR", "NOK", "SEK"]
|
||||
|
||||
|
||||
CONFIG_SCHEMA = vol.Schema({DOMAIN: vol.Schema({})}, extra=vol.ALLOW_EXTRA)
|
||||
|
||||
NAME = DOMAIN
|
||||
VERSION = "0.0.17"
|
||||
ISSUEURL = "https://github.com/custom-components/nordpool/issues"
|
||||
|
||||
|
||||
tzs = {
|
||||
"DK1": "Europe/Copenhagen",
|
||||
"DK2": "Europe/Copenhagen",
|
||||
"FI": "Europe/Helsinki",
|
||||
"EE": "Europe/Tallinn",
|
||||
"LT": "Europe/Vilnius",
|
||||
"LV": "Europe/Riga",
|
||||
"NO1": "Europe/Oslo",
|
||||
"NO2": "Europe/Oslo",
|
||||
"NO3": "Europe/Oslo",
|
||||
"NO4": "Europe/Oslo",
|
||||
"NO5": "Europe/Oslo",
|
||||
"SE1": "Europe/Stockholm",
|
||||
"SE2": "Europe/Stockholm",
|
||||
"SE3": "Europe/Stockholm",
|
||||
"SE4": "Europe/Stockholm",
|
||||
# What zone is this?
|
||||
"SYS": "Europe/Stockholm",
|
||||
"FR": "Europe/Paris",
|
||||
"NL": "Europe/Amsterdam",
|
||||
"BE": "Europe/Brussels",
|
||||
"AT": "Europe/Vienna",
|
||||
"GER": "Europe/Berlin",
|
||||
}
|
||||
|
||||
# List of page index for hourly data
|
||||
# Some are disabled as they don't contain the other currencies, NOK etc,
|
||||
# or there are some issues with data parsing for some ones' DataStartdate.
|
||||
# Lets come back and fix that later, just need to adjust the self._parser.
|
||||
# DataEnddate: "2021-02-11T00:00:00"
|
||||
# DataStartdate: "0001-01-01T00:00:00"
|
||||
COUNTRY_BASE_PAGE = {
|
||||
# "SYS": 17,
|
||||
"NO": 23,
|
||||
"SE": 29,
|
||||
"DK": 41,
|
||||
# "FI": 35,
|
||||
# "EE": 47,
|
||||
# "LT": 53,
|
||||
# "LV": 59,
|
||||
# "AT": 298578,
|
||||
# "BE": 298736,
|
||||
# "DE-LU": 299565,
|
||||
# "FR": 299568,
|
||||
# "NL": 299571,
|
||||
# "PL": 391921,
|
||||
}
|
||||
|
||||
AREA_TO_COUNTRY = {
|
||||
"SYS": "SYS",
|
||||
"SE1": "SE",
|
||||
"SE2": "SE",
|
||||
"SE3": "SE",
|
||||
"SE4": "SE",
|
||||
"FI": "FI",
|
||||
"DK1": "DK",
|
||||
"DK2": "DK",
|
||||
"OSLO": "NO",
|
||||
"KR.SAND": "NO",
|
||||
"BERGEN": "NO",
|
||||
"MOLDE": "NO",
|
||||
"TR.HEIM": "NO",
|
||||
"TROMSØ": "NO",
|
||||
"EE": "EE",
|
||||
"LV": "LV",
|
||||
"LT": "LT",
|
||||
"AT": "AT",
|
||||
"BE": "BE",
|
||||
"DE-LU": "DE-LU",
|
||||
"FR": "FR",
|
||||
"NL": "NL",
|
||||
"PL ": "PL",
|
||||
}
|
||||
|
||||
INVALID_VALUES = frozenset((None, float("inf")))
|
||||
|
||||
DEFAULT_TEMPLATE = "{{0.0|float}}"
|
||||
|
||||
|
||||
_CENT_MULTIPLIER = 100
|
||||
_PRICE_IN = {"kWh": 1000, "MWh": 1, "Wh": 1000 * 1000}
|
||||
_REGIONS = {
|
||||
"DK1": ["DKK", "Denmark", 0.25],
|
||||
"DK2": ["DKK", "Denmark", 0.25],
|
||||
"FI": ["EUR", "Finland", 0.255],
|
||||
"EE": ["EUR", "Estonia", 0.22],
|
||||
"LT": ["EUR", "Lithuania", 0.21],
|
||||
"LV": ["EUR", "Latvia", 0.21],
|
||||
"NO1": ["NOK", "Norway", 0.25],
|
||||
"NO2": ["NOK", "Norway", 0.25],
|
||||
"NO3": ["NOK", "Norway", 0.25],
|
||||
"NO4": ["NOK", "Norway", 0.25],
|
||||
"NO5": ["NOK", "Norway", 0.25],
|
||||
"SE1": ["SEK", "Sweden", 0.25],
|
||||
"SE2": ["SEK", "Sweden", 0.25],
|
||||
"SE3": ["SEK", "Sweden", 0.25],
|
||||
"SE4": ["SEK", "Sweden", 0.25],
|
||||
# What zone is this?
|
||||
"SYS": ["EUR", "System zone", 0.25],
|
||||
"FR": ["EUR", "France", 0.055],
|
||||
"NL": ["EUR", "Netherlands", 0.21],
|
||||
"BE": ["EUR", "Belgium", 0.06],
|
||||
"AT": ["EUR", "Austria", 0.20],
|
||||
# Unsure about tax rate, correct if wrong
|
||||
"GER": ["EUR", "Germany", 0.23],
|
||||
}
|
||||
|
||||
# Needed incase a user wants the prices in non local currency
|
||||
_CURRENCY_TO_LOCAL = {"DKK": "Kr", "NOK": "Kr", "SEK": "Kr", "EUR": "€"}
|
||||
_CURRENTY_TO_CENTS = {"DKK": "Øre", "NOK": "Øre", "SEK": "Öre", "EUR": "c"}
|
||||
|
||||
DEFAULT_CURRENCY = "NOK"
|
||||
DEFAULT_REGION = list(_REGIONS.keys())[0]
|
||||
DEFAULT_NAME = "Elspot"
|
||||
Reference in New Issue
Block a user