Midea/midea.py
2023-09-26 19:42:50 +02:00

75 lines
2 KiB
Python

import security;
import cloud;
import aiohttp;
import asyncio;
import discover;
import device;
import devicee1;
async def test():
cl = cloud.MSmartHomeCloud(
"MSmartHome",
aiohttp.ClientSession(),
"michaelh.95@t-online.de",
"Hoda.semi1"
)
devices = discover.discover()
if len(devices) > 0:
# for device_id in devices:
# token = "702b9dfc3ac6c82979986ee3a053a76f75f9e9c763ce5c25af5c2cc982f797a9409adff3745e23fee3a464d745e005c839efb0b84082acc962e59ab8683e0299"
# key = "52b2feee353841588994e630dcb59819ec71ce1ffacb48628f4f436f5c54f11e"
# device_info = devices[device_id]
# dev = device.MiedaDevice(
# name="",
# device_id=device_id,
# device_type=225,
# ip_address=device_info['ip_address'],
# port=device_info['port'],
# token=token,
# key=key,
# protocol=3,
# model=device_info['model'],
# attributes={}
# )
# if dev.connect(False):
# print("success")
# else:
# print("fail")
if await cl.login():
for device_id in devices:
keys = await cl.get_keys(device_id)
for k in keys:
token = keys[k]['token']
key = keys[k]['key']
device_info = devices[device_id]
dev = devicee1.MideaE1Device(
name="",
device_id=device_id,
ip_address=device_info['ip_address'],
port=device_info['port'],
token=token,
key=key,
protocol=3,
model=device_info['model'],
customize=""
)
if dev.connect(True):
return dev
dev = asyncio.run(test())
print(dev)