ez1-m-cloud-poll/run.py

35 lines
819 B
Python

import asyncio
import os
import toml
from Inverter import Inverter
from Usertoken import generate_user_token, cache_user_token_on_disk, get_cached_user_token
async def main():
os.path.dirname(__file__)
with open("config.toml", "r") as f:
config = toml.load(f)
token = get_cached_user_token()
if not token:
token = generate_user_token(config["username"], config["password"])
cache_user_token_on_disk(token)
inverter_stefan = "E07000000405"
inverter_christian = "E07000000083"
queue = asyncio.Queue()
inverters = [Inverter(queue, inverter_christian, token)]
for inverter in inverters:
asyncio.create_task(inverter.start())
while True:
item = await queue.get()
print(item)
if __name__ == '__main__':
asyncio.run(main())