用于与Control4系统交互的Python 3 asyncio包
项目描述
pyControl4
一个异步库,通过内置的REST API与Control4系统交互。已知在OS 2.10.1.544795-res和OS 3.0+的控制器上运行。
自动生成的函数文档可在https://lawtancool.github.io/pyControl4找到
对于寻找预构建解决方案来控制他们设备的用户,这个库已在官方Home Assistant Control4集成中实现。
用法示例
from pyControl4.account import C4Account
from pyControl4.director import C4Director
from pyControl4.light import C4Light
import asyncio
import json
username = ""
password = ""
ip = "192.168.1.25"
"""Authenticate with Control4 account"""
account = C4Account(username, password)
asyncio.run(account.getAccountBearerToken())
"""Get and print controller name"""
accountControllers = asyncio.run(account.getAccountControllers())
print(accountControllers["controllerCommonName"])
"""Get bearer token to communicate with controller locally"""
director_bearer_token = asyncio.run(
account.getDirectorBearerToken(accountControllers["controllerCommonName"])
)["token"]
"""Create new C4Director instance"""
director = C4Director(ip, director_bearer_token)
"""Print all devices on the controller"""
print(asyncio.run(director.getAllItemInfo()))
"""Create new C4Light instance"""
light = C4Light(director, 253)
"""Ramp light level to 10% over 10000ms"""
asyncio.run(light.rampToLevel(10, 10000))
"""Print state of light"""
print(asyncio.run(light.getState()))
贡献
欢迎拉取请求!请使用flake8
对Python代码进行lint,并使用Black进行格式化。
免责声明
此库与Control4无关,也未获得Control4的认可。
项目详情
下载文件
下载适用于您平台的文件。如果您不确定选择哪个,请了解有关 安装包 的更多信息。
源分发
pycontrol4-1.2.1.tar.gz (17.9 kB 查看哈希值)
构建分发
pyControl4-1.2.1-py3-none-any.whl (20.7 kB 查看哈希值)