def save(self): try: with open(self.config_path + "config.json", 'w') as fh: fh.write(json.dumps(self.config)) except IOError: tools.warning("Could not write config file.") sys.exit(1)
def load(self): try: folder_exists = make_sure_path_exists(self.config_path) if (folder_exists and os.path.isfile(self.config_path + "config.json")): initialized = True else: initialized = False except OSError: tools.warning("Unable to create ~/.config folder.") sys.exit(1) if not initialized: self.initialize() else: try: with open(self.config_path + "config.json", 'r') as fh: self.config = json.load(fh) except (ValueError, IOError): tools.warning("Config file could not be read.") sys.exit(1)
def load(self): try: folder_exists = make_sure_path_exists(self.config_path) if(folder_exists and os.path.isfile(self.config_path + "config.json")): initialized = True else: initialized = False except OSError: tools.warning("Unable to create ~/.config folder.") sys.exit(1) if not initialized: self.initialize() else: try: with open(self.config_path + "config.json", 'r') as fh: self.config = json.load(fh) except (ValueError, IOError): tools.warning("Config file could not be read.") sys.exit(1)
config.get("database")) engine = create_engine(database_url, echo=config.get("debug")) create_session = sessionmaker(bind=engine) database.Base.metadata.create_all(engine) try: while True: power = random.randint(0, 4000) power = math.sin(time.clock() * 2)**2 * 2000 print("New encrypted packet:" + str(power)) db = create_session() sensor = (db.query( database.Sensor).filter_by(name="CitizenWatt").first()) if not sensor: tools.warning("Got packet " + str(power) + " but install is not " + "complete ! Visit http://citizenwatt first.") db.close() else: now = datetime.datetime.now().timestamp() measure_db = database.Measures(sensor_id=sensor.id, value=power, timestamp=now, night_rate=get_rate_type(db)) db.add(measure_db) db.commit() print(now) print("Saved successfully.") time.sleep(8) except KeyboardInterrupt: pass
# Configuration config = Config() # DB initialization database_url = (config.get("database_type") + "://" + config.get("username") + ":" + config.get("password") + "@" + config.get("host") + "/" + config.get("database")) engine = create_engine(database_url, echo=config.get("debug")) create_session = sessionmaker(bind=engine) database.Base.metadata.create_all(engine) sensor = get_cw_sensor() while not sensor or not sensor.aes_key: tools.warning("Install is not complete ! " + "Visit http://citizenwatt.local first.") time.sleep(1) sensor = get_cw_sensor() key = json.loads(sensor.aes_key) key = struct.pack("<16B", *key) try: assert(stat.S_ISFIFO(os.stat(config.get("named_fifo")).st_mode)) except (AssertionError, FileNotFoundError): sys.exit("Unable to open fifo " + config.get("named_fifo") + ".") try: with open(config.get("named_fifo"), 'rb') as fifo: while True:
# Configuration config = Config() # DB initialization database_url = (config.get("database_type") + "://" + config.get("username") + ":" + config.get("password") + "@" + config.get("host") + "/" + config.get("database")) engine = create_engine(database_url, echo=config.get("debug")) create_session = sessionmaker(bind=engine) database.Base.metadata.create_all(engine) sensor = get_cw_sensor() while not sensor or not sensor.aes_key: tools.warning("Install is not complete ! " + "Visit http://citizenwatt.local first.") time.sleep(1) sensor = get_cw_sensor() key = json.loads(sensor.aes_key) key = struct.pack("<16B", *key) try: assert (stat.S_ISFIFO(os.stat(config.get("named_fifo")).st_mode)) except (AssertionError, FileNotFoundError): sys.exit("Unable to open fifo " + config.get("named_fifo") + ".") try: with open(config.get("named_fifo"), 'rb') as fifo: while True: measure = fifo.read(16)
engine = create_engine(database_url, echo=config.get("debug")) create_session = sessionmaker(bind=engine) database.Base.metadata.create_all(engine) try: while True: power = random.randint(0, 4000) power = math.sin(time.clock()*2)**2 * 2000 print("New encrypted packet:" + str(power)) db = create_session() sensor = (db.query(database.Sensor) .filter_by(name="CitizenWatt") .first()) if not sensor: tools.warning("Got packet "+str(power)+" but install is not " + "complete ! Visit http://citizenwatt first.") db.close() else: now = datetime.datetime.now().timestamp() measure_db = database.Measures(sensor_id=sensor.id, value=power, timestamp=now, night_rate=get_rate_type(db)) db.add(measure_db) db.commit() print(now) print("Saved successfully.") time.sleep(8) except KeyboardInterrupt: pass
# Configuration config = Config() # DB initialization database_url = (config.get("database_type") + "://" + config.get("username") + ":" + config.get("password") + "@" + config.get("host") + "/" + config.get("database")) engine = create_engine(database_url, echo=config.get("debug")) create_session = sessionmaker(bind=engine) database.Base.metadata.create_all(engine) sensor = get_cw_sensor() while not sensor or not sensor.aes_key: tools.warning("Install is not complete ! " + "Visit http://citizenwatt.local first.") time.sleep(1) sensor = get_cw_sensor() key = json.loads(sensor.aes_key) key = struct.pack("<16B", *key) try: while True: power = random.randint(0, 3000) print("Power: "+str(power)) db = create_session() measure_db = database.Measures(sensor_id=sensor.id, value=power,