def start_mqtt_publisher_server():
    text_name = "MQTT Publisher"
    function = _mqtt_publisher_server
    app_cached_variables.mqtt_publisher_thread = CreateMonitoredThread(function, thread_name=text_name)
    if not app_config_access.mqtt_publisher_config.enable_mqtt_publisher:
        logger.primary_logger.debug("MQTT Publisher Disabled in Configuration")
        app_cached_variables.mqtt_publisher_thread.current_state = "Disabled"
Example #2
0
def start_https_server():
    if https_import_errors:
        log_message = "--- Failed to Start HTTPS Server - Missing Required Dependencies: "
        logger.primary_logger.critical(log_message + str(https_import_error_msg))
    else:
        text_name = "HTTPS Server"
        function = CreateSensorHTTP
        app_cached_variables.http_server_thread = CreateMonitoredThread(function, thread_name=text_name)
def start_graph_email_server():
    text_name = "Graph Email Server"
    function = _graph_email_server
    app_cached_variables.graph_email_thread = CreateMonitoredThread(
        function, thread_name=text_name)
    if not app_config_access.email_config.enable_graph_emails:
        logger.primary_logger.debug("Graph Emails Disabled in Configuration")
        app_cached_variables.graph_email_thread.current_state = "Disabled"
def _hardware_interactive_server():
    """ If available starts additional hardware Interaction thread. """
    while not app_config_access.installed_sensors.raspberry_pi_sense_hat:
        sleep(15)
    text_name = "Sensor Interactive Service"
    function = sensors_direct.rp_sense_hat_a.start_joy_stick_commands
    app_cached_variables.interactive_sensor_thread = CreateMonitoredThread(
        function, thread_name=text_name)
Example #5
0
def start_open_sense_map_server():
    if osm_config.open_sense_map_enabled:
        text_name = "Open Sense Map"
        function = _open_sense_map_server
        app_cached_variables.open_sense_map_thread = CreateMonitoredThread(
            function, thread_name=text_name)
    else:
        logger.primary_logger.debug("Open Sense Map Disabled in Configuration")
def start_weather_underground_server():
    if weather_underground_config.weather_underground_enabled:
        text_name = "Weather Underground"
        function = _weather_underground_server
        app_cached_variables.weather_underground_thread = CreateMonitoredThread(
            function, thread_name=text_name)
    else:
        logger.primary_logger.debug(
            "Weather Underground Disabled in Configuration")
Example #7
0
def start_display_server():
    text_name = "Display"
    function = _display_server
    app_cached_variables.mini_display_thread = CreateMonitoredThread(
        function, thread_name=text_name)
Example #8
0
def start_luftdaten_server():
    if luftdaten_config.luftdaten_enabled:
        text_name = "Luftdaten"
        app_cached_variables.luftdaten_thread = CreateMonitoredThread(_luftdaten_server, thread_name=text_name)
    else:
        logger.primary_logger.debug("Luftdaten Disabled in Configuration")
Example #9
0
def start_sensor_checkins():
    text_name = "Sensor Checkins"
    function = CreateCheckinServer
    app_cached_variables.sensor_checkin_thread = CreateMonitoredThread(
        function, thread_name=text_name)
def start_automatic_upgrades_server():
    text_name = "Automatic Upgrades Server"
    function = _thread_start_automatic_upgrades_server
    app_cached_variables.automatic_upgrades_thread = CreateMonitoredThread(
        function, thread_name=text_name)
def _trigger_variance_recording():
    """ Starts recording all enabled sensors to the SQL database based on set trigger variances (set in config). """
    # Sleep to allow cached variables like sensor IP & hostname to populate
    sleep(10)
    logger.primary_logger.info(" -- Trigger Variance Recording Started")
    if trigger_variances.cpu_temperature_enabled:
        sensor_get_function = sensor_access.get_cpu_temperature
        sql_column_name_list = [database_variables.system_temperature]
        sleep_time = trigger_variances.cpu_temperature_wait_seconds
        variances_list = [trigger_variances.cpu_temperature_variance]
        app_cached_variables.trigger_variance_thread_cpu_temp = CreateMonitoredThread(
            StartTriggerVariance,
            thread_name="CPU Temperature Trigger Variance",
            args=(sensor_get_function, sql_column_name_list, sleep_time,
                  variances_list))
    if trigger_variances.env_temperature_enabled:
        sensor_get_function = sensor_access.get_environment_temperature
        sql_column_name_list = [database_variables.env_temperature]
        sleep_time = trigger_variances.env_temperature_wait_seconds
        variances_list = [trigger_variances.env_temperature_variance]
        app_cached_variables.trigger_variance_thread_env_temp = CreateMonitoredThread(
            StartTriggerVariance,
            thread_name="Environmental Temperature Trigger Variance",
            args=(sensor_get_function, sql_column_name_list, sleep_time,
                  variances_list))
    if trigger_variances.pressure_enabled:
        sensor_get_function = sensor_access.get_pressure
        sql_column_name_list = [database_variables.pressure]
        sleep_time = trigger_variances.pressure_wait_seconds
        variances_list = [trigger_variances.pressure_variance]
        app_cached_variables.trigger_variance_thread_pressure = CreateMonitoredThread(
            StartTriggerVariance,
            thread_name="Pressure Trigger Variance",
            args=(sensor_get_function, sql_column_name_list, sleep_time,
                  variances_list))
    if trigger_variances.altitude_enabled:
        sensor_get_function = sensor_access.get_altitude
        sql_column_name_list = [database_variables.altitude]
        sleep_time = trigger_variances.altitude_wait_seconds
        variances_list = [trigger_variances.altitude_variance]
        app_cached_variables.trigger_variance_thread_altitude = CreateMonitoredThread(
            StartTriggerVariance,
            thread_name="Altitude Trigger Variance",
            args=(sensor_get_function, sql_column_name_list, sleep_time,
                  variances_list))
    if trigger_variances.humidity_enabled:
        sensor_get_function = sensor_access.get_humidity
        sql_column_name_list = [database_variables.humidity]
        sleep_time = trigger_variances.humidity_wait_seconds
        variances_list = [trigger_variances.humidity_variance]
        app_cached_variables.trigger_variance_thread_humidity = CreateMonitoredThread(
            StartTriggerVariance,
            thread_name="Humidity Trigger Variance",
            args=(sensor_get_function, sql_column_name_list, sleep_time,
                  variances_list))
    if trigger_variances.distance_enabled:
        sensor_get_function = sensor_access.get_distance
        sql_column_name_list = [database_variables.distance]
        sleep_time = trigger_variances.distance_wait_seconds
        variances_list = [trigger_variances.distance_variance]
        app_cached_variables.trigger_variance_thread_distance = CreateMonitoredThread(
            StartTriggerVariance,
            thread_name="Distance Trigger Variance",
            args=(sensor_get_function, sql_column_name_list, sleep_time,
                  variances_list))
    if trigger_variances.gas_enabled:
        sensor_get_function = sensor_access.get_gas
        sql_column_name_list = [
            database_variables.gas_resistance_index,
            database_variables.gas_oxidising, database_variables.gas_reducing,
            database_variables.gas_nh3
        ]
        variances_list = [
            trigger_variances.gas_resistance_index_variance,
            trigger_variances.gas_oxidising_variance,
            trigger_variances.gas_reducing_variance,
            trigger_variances.gas_nh3_variance
        ]
        sleep_time = trigger_variances.gas_wait_seconds
        app_cached_variables.trigger_variance_thread_gas = CreateMonitoredThread(
            StartTriggerVariance,
            thread_name="GAS Trigger Variance",
            args=(sensor_get_function, sql_column_name_list, sleep_time,
                  variances_list))
    if trigger_variances.particulate_matter_enabled:
        sensor_get_function = sensor_access.get_particulate_matter
        sql_column_name_list = [
            database_variables.particulate_matter_1,
            database_variables.particulate_matter_2_5,
            database_variables.particulate_matter_4,
            database_variables.particulate_matter_10
        ]
        variances_list = [
            trigger_variances.particulate_matter_1_variance,
            trigger_variances.particulate_matter_2_5_variance,
            trigger_variances.particulate_matter_4_variance,
            trigger_variances.particulate_matter_10_variance
        ]

        sleep_time = trigger_variances.particulate_matter_wait_seconds
        app_cached_variables.trigger_variance_thread_particulate_matter = CreateMonitoredThread(
            StartTriggerVariance,
            thread_name="Particulate Matter Trigger Variance",
            args=(sensor_get_function, sql_column_name_list, sleep_time,
                  variances_list))
    if trigger_variances.lumen_enabled:
        sensor_get_function = sensor_access.get_lumen
        sql_column_name_list = [database_variables.lumen]
        sleep_time = trigger_variances.lumen_wait_seconds
        variances_list = [trigger_variances.lumen_variance]
        app_cached_variables.trigger_variance_thread_lumen = CreateMonitoredThread(
            StartTriggerVariance,
            thread_name="Lumen Trigger Variance",
            args=(sensor_get_function, sql_column_name_list, sleep_time,
                  variances_list))
    if trigger_variances.colour_enabled:
        sensor_get_function = sensor_access.get_ems_colors
        sleep_time = trigger_variances.colour_wait_seconds

        sql_column_name_list = [
            database_variables.red, database_variables.orange,
            database_variables.yellow, database_variables.green,
            database_variables.blue, database_variables.violet
        ]
        variances_list = [
            trigger_variances.red_variance, trigger_variances.orange_variance,
            trigger_variances.yellow_variance,
            trigger_variances.green_variance, trigger_variances.blue_variance,
            trigger_variances.violet_variance
        ]

        app_cached_variables.trigger_variance_thread_visible_ems = CreateMonitoredThread(
            StartTriggerVariance,
            thread_name="EMS Colours Trigger Variance",
            args=(sensor_get_function, sql_column_name_list, sleep_time,
                  variances_list))
    if trigger_variances.ultra_violet_enabled:
        sensor_get_function = sensor_access.get_ultra_violet
        sql_column_name_list = [
            database_variables.ultra_violet_a,
            database_variables.ultra_violet_b
        ]
        sleep_time = trigger_variances.ultra_violet_wait_seconds
        variances_list = [
            trigger_variances.ultra_violet_a_variance,
            trigger_variances.ultra_violet_b_variance
        ]
        app_cached_variables.trigger_variance_thread_ultra_violet = CreateMonitoredThread(
            StartTriggerVariance,
            thread_name="Ultra Violet Trigger Variance",
            args=(sensor_get_function, sql_column_name_list, sleep_time,
                  variances_list))
    if trigger_variances.accelerometer_enabled:
        sensor_get_function = sensor_access.get_accelerometer_xyz
        sql_column_name_list = [
            database_variables.acc_x, database_variables.acc_y,
            database_variables.acc_z
        ]
        sleep_time = trigger_variances.accelerometer_wait_seconds
        variances_list = [
            trigger_variances.accelerometer_x_variance,
            trigger_variances.accelerometer_y_variance,
            trigger_variances.accelerometer_z_variance
        ]
        app_cached_variables.trigger_variance_thread_accelerometer = CreateMonitoredThread(
            StartTriggerVariance,
            thread_name="Accelerometer Trigger Variance",
            args=(sensor_get_function, sql_column_name_list, sleep_time,
                  variances_list))
    if trigger_variances.magnetometer_enabled:
        sensor_get_function = sensor_access.get_magnetometer_xyz
        sql_column_name_list = [
            database_variables.mag_x, database_variables.mag_y,
            database_variables.mag_z
        ]
        sleep_time = trigger_variances.magnetometer_wait_seconds
        variances_list = [
            trigger_variances.magnetometer_x_variance,
            trigger_variances.magnetometer_y_variance,
            trigger_variances.magnetometer_z_variance
        ]
        app_cached_variables.trigger_variance_thread_magnetometer = CreateMonitoredThread(
            StartTriggerVariance,
            thread_name="Magnetometer Trigger Variance",
            args=(sensor_get_function, sql_column_name_list, sleep_time,
                  variances_list))
    if trigger_variances.gyroscope_enabled:
        sensor_get_function = sensor_access.get_gyroscope_xyz
        sql_column_name_list = [
            database_variables.gyro_x, database_variables.gyro_y,
            database_variables.gyro_z
        ]
        sleep_time = trigger_variances.gyroscope_wait_seconds
        variances_list = [
            trigger_variances.gyroscope_x_variance,
            trigger_variances.gyroscope_y_variance,
            trigger_variances.gyroscope_z_variance
        ]
        app_cached_variables.trigger_variance_thread_gyroscope = CreateMonitoredThread(
            StartTriggerVariance,
            thread_name="Gyroscope Trigger Variance",
            args=(sensor_get_function, sql_column_name_list, sleep_time,
                  variances_list))
Example #12
0
def start_interval_recording_server():
    text_name = "Interval Recording"
    function = _interval_recording
    app_cached_variables.interval_recording_thread = CreateMonitoredThread(
        function, thread_name=text_name)