diff --git a/src/main.py b/src/main.py index 28bdc8b..6330bc4 100644 --- a/src/main.py +++ b/src/main.py @@ -2,10 +2,11 @@ import logging from volvo import authorize from mqtt import update_loop, connect from const import VERSION -from util import set_tz, setup_logging, set_mqtt_settings +from util import set_tz, setup_logging, set_mqtt_settings, validate_settings if __name__ == '__main__': + validate_settings() set_tz() set_mqtt_settings() setup_logging() diff --git a/src/util.py b/src/util.py index ba49066..ba7cc6d 100644 --- a/src/util.py +++ b/src/util.py @@ -136,3 +136,14 @@ def set_mqtt_settings(): config.settings["mqtt"]["port"] = broker_port config.settings["mqtt"]["username"] = broker_user config.settings["mqtt"]["password"] = broker_pass + + +def validate_settings(): + setting_keys = settings.volvoData["vccapikey"] + if isinstance(setting_keys, list): + if len(setting_keys) > 3: + raise Exception("Settings invalid! Maximum allowed vccapikeys are three!") + + update_interval = settings["updateInterval"] + if update_interval < 60: + raise Exception("Settings invalid! Minimum allowed update interval is 60 seconds!")