solarrd/mockup.py

49 lines
1.1 KiB
Python
Raw Permalink Normal View History

2018-03-11 21:30:10 +01:00
#!/usr/bin/env python3
2018-04-27 02:03:42 +02:00
import os
2018-03-11 21:30:10 +01:00
import crcmod
from random import randint
2018-04-27 02:03:42 +02:00
from time import sleep
2018-03-11 21:30:10 +01:00
from config import *
2018-10-13 14:07:07 +02:00
from update import parse_line, create_database, update_database, update_graphs, upload_graphs
2018-03-11 21:30:10 +01:00
calc_crc = crcmod.predefined.mkCrcFun(CRC_TYPE)
def gen_line():
2018-04-27 02:03:42 +02:00
values = []
stored = {name : (minval, maxval) for name, minval, maxval in STORED_VALUES}
for name in FORMAT:
minval = 0
maxval = 1000
if name in stored.keys():
minval, maxval = stored[name]
values += [str(randint(minval, maxval))]
2018-03-11 21:30:10 +01:00
payload = ";".join(values) + ";"
crc = calc_crc(payload.encode('ascii'))
crc_str = chr((crc & 0xFF00) >> 8) + chr(crc & 0xFF)
return payload + crc_str + "\r\n"
def main():
2018-04-27 02:03:42 +02:00
if not os.path.exists(DATA_FILE) or not os.path.exists(ARCHIVE_DATA_FILE):
create_database()
sleep(60)
while True:
print("Adding Line...")
line = gen_line()
parsed = parse_line(line)
update_database(parsed)
update_graphs()
2018-10-13 14:07:07 +02:00
upload_graphs()
2018-04-27 02:03:42 +02:00
sleep(60)
2018-03-11 21:30:10 +01:00
if __name__ == '__main__':
main()