work: проервил работу bluetooth. Все работает.
This commit is contained in:
@@ -0,0 +1,8 @@
|
|||||||
|
|
||||||
|
|
||||||
|
# Константы и классы
|
||||||
|
|
||||||
|
# Константы
|
||||||
|
|
||||||
|
# MAC Bluetooth бризера
|
||||||
|
TION_MAC = "d1:74:9b:eb:ee:a6"
|
||||||
@@ -0,0 +1,59 @@
|
|||||||
|
#d1749bebeea6
|
||||||
|
|
||||||
|
import asyncio
|
||||||
|
import json
|
||||||
|
import logging
|
||||||
|
|
||||||
|
from tion_btle import TionS4
|
||||||
|
from my_dataclasses import *
|
||||||
|
|
||||||
|
|
||||||
|
def print_state(state: dict):
|
||||||
|
print(json.dumps(
|
||||||
|
state,
|
||||||
|
indent=2,
|
||||||
|
ensure_ascii=False
|
||||||
|
))
|
||||||
|
|
||||||
|
|
||||||
|
async def main():
|
||||||
|
# Убираем лишнее логирование
|
||||||
|
logging.getLogger("asyncio").setLevel(logging.WARNING)
|
||||||
|
logging.getLogger("bleak").setLevel(logging.WARNING)
|
||||||
|
logging.getLogger("tion_btle").setLevel(logging.WARNING)
|
||||||
|
|
||||||
|
tion = TionS4(TION_MAC)
|
||||||
|
|
||||||
|
print("=== Подключение к Tion ===")
|
||||||
|
await tion.connect()
|
||||||
|
|
||||||
|
try:
|
||||||
|
# 1. Получаем исходное состояние
|
||||||
|
print("\n=== Исходное состояние ===")
|
||||||
|
state = await tion.get()
|
||||||
|
print_state(state)
|
||||||
|
|
||||||
|
# 2. Включаем Tion и устанавливаем скорость 2
|
||||||
|
print("\n=== Включаю Tion, скорость 2 ===")
|
||||||
|
|
||||||
|
await tion.set({
|
||||||
|
"state": "on",
|
||||||
|
"fan_speed": 2
|
||||||
|
})
|
||||||
|
|
||||||
|
await asyncio.sleep(1)
|
||||||
|
|
||||||
|
# 3. Повторно читаем реальное состояние
|
||||||
|
print("\n=== Состояние после команды ===")
|
||||||
|
state = await tion.get()
|
||||||
|
print_state(state)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
finally:
|
||||||
|
print("\n=== Отключение ===")
|
||||||
|
await tion.disconnect()
|
||||||
|
|
||||||
|
|
||||||
|
if __name__ == "__main__":
|
||||||
|
asyncio.run(main())
|
||||||
|
|||||||
Reference in New Issue
Block a user