forked from M-Labs/thermostat
aioexample: Show polling while report mode on
WIP: handle KeyboardInterrupt
This commit is contained in:
parent
52550cf721
commit
5c8270834a
@ -1,7 +1,19 @@
|
|||||||
import asyncio
|
import asyncio
|
||||||
|
from contextlib import suppress
|
||||||
from pytec.aioclient import AsyncioClient
|
from pytec.aioclient import AsyncioClient
|
||||||
|
|
||||||
|
|
||||||
|
async def poll_for_info(tec):
|
||||||
|
while True:
|
||||||
|
print(tec.get_pwm())
|
||||||
|
print(tec.get_steinhart_hart())
|
||||||
|
print(tec.get_pid())
|
||||||
|
print(tec.get_postfilter())
|
||||||
|
print(tec.get_fan())
|
||||||
|
|
||||||
|
await asyncio.sleep(1)
|
||||||
|
|
||||||
|
|
||||||
async def main():
|
async def main():
|
||||||
tec = AsyncioClient()
|
tec = AsyncioClient()
|
||||||
await tec.connect() # (host="192.168.1.26", port=23)
|
await tec.connect() # (host="192.168.1.26", port=23)
|
||||||
@ -11,8 +23,14 @@ async def main():
|
|||||||
print(await tec.get_pwm())
|
print(await tec.get_pwm())
|
||||||
print(await tec.get_postfilter())
|
print(await tec.get_postfilter())
|
||||||
print(await tec.get_steinhart_hart())
|
print(await tec.get_steinhart_hart())
|
||||||
|
|
||||||
|
polling_task = asyncio.create_task(poll_for_info(tec))
|
||||||
|
|
||||||
async for data in tec.report_mode():
|
async for data in tec.report_mode():
|
||||||
print(data)
|
print(data)
|
||||||
|
|
||||||
|
polling_task.cancel()
|
||||||
|
with suppress(asyncio.CancelledError):
|
||||||
|
await polling_task
|
||||||
|
|
||||||
asyncio.run(main())
|
asyncio.run(main())
|
||||||
|
Loading…
Reference in New Issue
Block a user