from MQTTClient import create_mqtt_client from get_config import get_parameter import logging from homedom_logger import set_logger set_logger("hometts", logging.DEBUG) def signal_handler(signal, frame): logging.info("Interpreted signal {}, exiting now...".format(signal)) sys.exit(0) signal.signal(signal.SIGINT, signal_handler) signal.signal(signal.SIGTERM, signal_handler) MQTT_HOST = get_parameter("mqtt_host") MQTT_PORT = get_parameter("mqtt_port") MQTT_TOPICS = get_parameter("hometts_topics") mqtt_client = None tts_lock = Lock() def on_message(client, userdata, msg): payload = str(msg.payload, 'utf-8') event_manager(msg.topic, payload) def event_manager(topic, payload): try: json_payload = json.loads(payload) target = json_payload['target']
from MQTTClient import create_mqtt_client from get_config import get_parameter import logging from homedom_logger import set_logger set_logger("enocean", logging.DEBUG) def signal_handler(signal, frame): logging.info("Interpreted signal {}, exiting now...".format(signal)) sys.exit(0) signal.signal(signal.SIGINT, signal_handler) signal.signal(signal.SIGTERM, signal_handler) MQTT_HOST = get_parameter("mqtt_host") MQTT_PORT = get_parameter("mqtt_port") MQTT_TOPICS = get_parameter("enocean_topics") mqtt_client = None serial_thread = None def on_message(client, userdata, msg): payload = str(msg.payload, 'utf-8') event_manager(msg.topic, payload) def event_manager(topic, payload): try: json_payload = json.loads(payload) if topic == "inputs":
from get_config import get_parameter import logging from homedom_logger import set_logger set_logger("lifx", logging.DEBUG) def signal_handler(signal, frame): logging.info("Interpreted signal {}, exiting now...".format(signal)) sys.exit(0) signal.signal(signal.SIGINT, signal_handler) signal.signal(signal.SIGTERM, signal_handler) MQTT_HOST = get_parameter("mqtt_host") MQTT_PORT = get_parameter("mqtt_port") MQTT_TOPICS = get_parameter("lifx_topics") IP = get_parameter("lifx_1_ip") MAC = get_parameter("lifx_1_mac") mqtt_client = None def on_message(client, userdata, msg): payload = str(msg.payload, 'utf-8') event_manager(msg.topic, payload) def turnOnLampWithLifx(lifxcolor): bulb = lifxlan.Light(MAC, IP) bulb.set_color(lifxcolor)
from flask import Flask, render_template from threading import Thread from time import sleep import sys import signal import logging from MQTTClient import create_mqtt_client from get_config import get_parameter from homedom_logger import set_logger set_logger("webapp", logging.DEBUG) MQTT_HOST = get_parameter("mqtt_host") MQTT_PORT = get_parameter("mqtt_port") MQTT_TOPICS = get_parameter("actionmanager_topics") mqtt_client = None def on_message(client, userdata, msg): payload = str(msg.payload, 'utf-8') event_manager(msg.topic, payload) def event_manager(topic, payload): try: pass except Exception as e: logging.error("Error in event_manager(): {}".format(e)) def signal_handler(signal, frame): logging.info("Interpreted signal {}, exiting now...".format(signal))
import datetime from googletrans import Translator import logging from homedom_logger import set_logger set_logger("weather", logging.DEBUG) def signal_handler(signal, frame): logging.info("Interpreted signal {}, exiting now...".format(signal)) sys.exit(0) signal.signal(signal.SIGINT, signal_handler) signal.signal(signal.SIGTERM, signal_handler) MQTT_HOST = get_parameter("mqtt_host") MQTT_PORT = get_parameter("mqtt_port") MQTT_TOPICS = get_parameter("weather_topics") mqtt_client = None tz = pytz.timezone('Europe/Paris') translator = Translator() RENNES = 2983990 APIKEY = "98a19c144b3105dc774646a8a9429a52" FORECAST_SIZE = 3 def weather_data_to_string(data): date = datetime.datetime.fromtimestamp(data['dt'], tz) #meteo_main = translator.translate(data['weather'][0]['main'], src='en', dest='fr').text meteo_description = translator.translate(data['weather'][0]['description'], src='en', dest='fr').text
from get_config import get_parameter import cep import database from homedom_logger import set_logger set_logger("homevents", logging.DEBUG) app = Flask(__name__) mqtt_client = None regexs_handler = None rules_handler = None config_handler = None database_handler = None MQTT_HOST = get_parameter("mqtt_host") MQTT_PORT = get_parameter("mqtt_port") MQTT_TOPICS = ["inputs", "outputs", "events"] @app.route('/config', methods=['GET']) def get_config(): try: logging.info(request.method + " " + request.url + " ...") data = config_handler.get_config() return jsonify(data) except Exception as e: logging.error("Error in get_config: " + str(e)) return jsonify({"error": str(e)}), 500
from MQTTClient import create_mqtt_client from get_config import get_parameter import logging from homedom_logger import set_logger set_logger("discordinho", logging.INFO) def signal_handler(signal, frame): logging.info("Interpreted signal {}, exiting now...".format(signal)) sys.exit(0) signal.signal(signal.SIGINT, signal_handler) signal.signal(signal.SIGTERM, signal_handler) MQTT_HOST = get_parameter("mqtt_host") MQTT_PORT = get_parameter("mqtt_port") MQTT_TOPICS = get_parameter("discordinho_topics") mqtt_client = None #discord specific client = discord.Client() server_name = 'Home_Dom' channel_inputs = None channel_outputs = None channel_events = None @client.event async def on_ready():
from get_config import get_parameter import requests import logging from homedom_logger import set_logger set_logger("actionmanager", logging.DEBUG) def signal_handler(signal, frame): logging.info("Interpreted signal {}, exiting now...".format(signal)) sys.exit(0) signal.signal(signal.SIGINT, signal_handler) signal.signal(signal.SIGTERM, signal_handler) MQTT_HOST = get_parameter("mqtt_host") MQTT_PORT = get_parameter("mqtt_port") MQTT_TOPICS = get_parameter("actionmanager_topics") HOMEVENTS_IP = get_parameter("homevents_ip") HOMEVENTS_PORT = get_parameter("homevents_port") HOMEVENTS_URL = "http://{}:{}".format(HOMEVENTS_IP, HOMEVENTS_PORT) mqtt_client = None colors = { "RED": [65535, 65535, 65535, 3500], "ORANGE": [6500, 65535, 65535, 3500], "YELLOW": [9000, 65535, 65535, 3500], "GREEN": [16173, 65535, 65535, 3500], "CYAN": [29814, 65535, 65535, 3500], "BLUE": [43634, 65535, 65535, 3500], "PURPLE": [50486, 65535, 65535, 3500],