import serverrequests as serverrequests import JsonHandling import energymeter import energyproducer import energyuser import time import datetime import json import main # Gehe in eine Dauerschlaufe ID = "SRING_TO_DEFINE" producer_values = [] producers =[] meter_values = [] meter = [] user_values = [] users = [] Collector = JsonHandling.DataCollector() data = {} def calcSomeStuff(): return while True: # Neue Konfig holen config = serverrequests.update_config_on_server(ID, data) if JsonHandling.JsonHandling.check_config_has_changed(config): producers = energyproducer.EnergyProducer.create_producerlist_from_json(config) meter = energymeter.EnergyMeter.create_meterlist_from_json(config) users = energyuser.EnergyUser.create_userlist_from_json(config) producer_values = energyproducer.EnergyProducer.get_all_current_values(producers) meter_values = energymeter.EnergyMeter.get_all_current_values(meter) calcSomeStuff() for user in users: user.calc_used_power() main.EnergyUserFactory.distribute_energy(users, meter_values["Meter_Sum"]["PowerReal_P_Sum"]) user_values = energyuser.EnergyUser.get_all_current_values(users) Collector.collect_and_store_data(producer_values, meter_values, user_values) data = Collector.data time.sleep(5)