RFXCOM RFXtrx库,适用于Python 3.3+
项目描述
一个Python库,用于与您的RFXTrx进行自动化项目。
此库设计用于与Python 3.3+和asyncio(但可以实施其他传输)一起使用。目前,它主要用于home项目,这是一个用于管理和可视化您的智能家居设备的仪表板。
此库相对较新,因此支持的设备数量有限,仅限于@d0ugal所拥有的设备。这意味着,当前完全支持的协议列表包括
如果您想使用某个设备,并且认为它不受支持或不确定,请打开一个问题。
安装
建议您通过pip从PyPI获取最新版本
pip install rfxcom
但是,如果您想获取最新的开发版本,可以直接从github下载存储库,并在存储库的根目录中运行python setup.py install。
文档
快速示例
以下示例展示了此库的一些基本用法,它设置了 asyncio 事件循环,将库指向串行设备路径,并附加了一个简单的处理函数,该函数打印出它接收的所有数据包的信息。例如,查看它对能源使用传感器的输出。
from asyncio import get_event_loop from rfxcom.transport import AsyncioTransport dev_name = '/dev/serial/by-id/usb-RFXCOM_RFXtrx433_A1WYT9NA-if00-port0' loop = get_event_loop() def handler(packet): # Print out the packet - the string representation will show us the type. print(packet) # Each packet will have a dictionary which contains parsed data. print(packet.data) # You can access the raw bytes from the packet too. print(packet.raw) try: rfxcom = AsyncioTransport(dev_name, loop, callback=handler) loop.run_forever() finally: loop.close()
您还可以将协程用作 AsyncioTransport 的回调
from asyncio import get_event_loop, coroutine from rfxcom.transport import AsyncioTransport dev_name = '/dev/serial/by-id/usb-RFXCOM_RFXtrx433_A1WYT9NA-if00-port0' loop = get_event_loop() @coroutine def handler(packet): print(packet) yield from some_io(packet) try: rfxcom = AsyncioTransport(dev_name, loop, callback=handler) loop.run_forever() finally: loop.close()
贡献
如果您想为 python-rfxcom 贡献,您需要使用 tox 来运行测试。这将针对 Python 3.3、Python 3.4 进行测试,使用 pyflakes 进行代码检查,并构建文档。要这样做,您只需安装 tox,然后在 python-rfxcom git 仓库的根目录下调用 tox 即可。
pip install tox tox
如果您无法在本地针对 Python 3.3 和 Python 3.4 进行测试,请不要担心,许多人可能只有一个安装。我们使用出色的 Travis CI 来验证所有拉取请求。
项目详情
下载文件
下载适用于您平台的文件。如果您不确定选择哪个,请了解有关 安装软件包 的更多信息。
源分布
rfxcom-0.5.0.tar.gz (14.5 kB 查看散列)
构建分布
rfxcom-0.5.0-py2.py3-none-any.whl (18.0 kB 查看散列)
关闭
rfxcom-0.5.0.tar.gz 的散列
算法 | 散列摘要 | |
---|---|---|
SHA256 | 5f5081053fe9b86b459983afb927c5aac0f4fca0650e837dae0229685ee9d480 |
|
MD5 | b5fcb370309041d236dddf40fd2a9bec |
|
BLAKE2b-256 | e14188076dc4e04620442e005af11c108ad5556704f843f00d25aaeab5a97c15 |
关闭
rfxcom-0.5.0-py2.py3-none-any.whl 的散列
算法 | 散列摘要 | |
---|---|---|
SHA256 | 2635fe269a77e5e6c81b7e50f697fd50cdbe4db9e241269a239dce8220703a2c |
|
MD5 | 6c3539595d173250eda016d4216465f2 |
|
BLAKE2b-256 | 92556762d10b866a32b2e679b9ec77d24cb28bd32965995fb6240897340c2617 |