跳转到主要内容

KNX / EIB库

项目描述

travis-ci Wheel PyPI Version Python Version

一个简约的KNX / EIB python库。

发送电报

此库可用于向总线系统中的执行器发送数据电报。

例如,为了打开一盏灯,可以使用以下代码

>>> from knx import connect
>>> with connect() as c:
...     c.write('0/1/14', 1)

其中 0/1/14 是灯的地址,1 是数据电报的有效载荷,表示应该打开灯。

监听电报

此KNX库还可以用于监听发送到总线系统的电报。例如,如果您只想记录每次灯打开或关闭的条目

>>> import knx
>>> import asyncio

>>> @knx.coroutine
... def logger():
...     while True:
...         telegram = (yield)
...         print('Telegram from {0} sent to {1} with value: {2}'.format(
...               telegram.src, telegram.dst, telegram.value))

>>> loop = asyncio.get_event_loop()
>>> coro = knx.bus_monitor(logger(), host='localhost', port=6720)
>>> loop.run_until_complete(coro)

安装 & 要求

  • Python >= 3.6

使用pip安装

$ pip install knx

免责声明

我只测试了eibd 0.0.5和knxd分支作为网关。

替代方案

如果您正在寻找完整的家庭自动化解决方案,您可能想看看home-assistantsmarthome

开发

在您的首选编辑器中编辑knx.py,并使用python -m unittestpython tests.py运行测试。

如果您想在安装此库之前运行示例,可以使用

python -m examples.actor -- hostname '0/0/20'

(替换actor为适当的模块名,如果模块不需要参数则省略参数)

项目详情


下载文件

下载适合您平台的文件。如果您不确定选择哪个,请了解更多关于安装包的信息。

源代码分发

knx-0.4.0.tar.gz (8.4 kB 查看散列)

上传时间 源代码

构建分发

knx-0.4.0-py2.py3-none-any.whl (6.1 kB 查看散列)

上传时间 Python 2 Python 3

支持者

AWSAWS云计算和安全赞助商DatadogDatadog监控FastlyFastlyCDNGoogleGoogle下载分析MicrosoftMicrosoftPSF赞助商PingdomPingdom监控SentrySentry错误日志StatusPageStatusPage状态页面