物联网中继-数据源和目的地之间的中继数据。

iotrela的Python项目详细描述


物联网中继:为您的物品发声

版本v1.2.3

越来越多的"事物"能够收集数据 关于他们的环境。这些东西有一个接口来检索 正在进行测量,但无法将此数据推送到 互联网。例如,家庭气象站通常只包含一个USB接口 接口和无网络能力。其他设备可能有网络 功能,如ZigBee?,但仍无法直接发送 数据传输到连接到Internet的主机。

物联网中继是一个应用程序和框架 数据源和中继到目的地。有点像 发布/订阅,但它更倾向于 无法启动连接(必须对其进行轮询才能获取 数据)

物联网中继提供基本设置,并将数据源与感兴趣的 处理程序。剩下的工作留给插件来完成。

安装

通过PYPI提供物联网中继。

$ pip install iotrelay

还需要创建(最初为空)ini样式 文件: ~/.iotrerelay.cfg

[itorelay]

插件

在物联网中继可以做任何有用的事情之前,它需要插件。有 插件类型:源和处理程序。源插件生成数据。处理程序 插件处理或处理源插件生成的数据。 这些定义是开放式的。尽管物联网接力 开发的目的是在 处理程序可以查看远程源和远程目标 每个数据作为一个事件并触发一些操作。同样,数据源 插件不需要简单地传递它们收集的数据。他们 在将数据提供给 感兴趣的处理人员。

数据源示例插件

数据源定义是一个类,它提供 方法和接受 config 参数的构造函数。这个 方法必须返回 reading() 类或无。在本例中,创建一个名为 iotrelay_sample_source.py 并输入以下代码。

# iotrelay_sample_source.pyimportrandomfromiotrelayimportReadingclassDataSource(object):def__init__(self,config):self.config=configdefget_readings(self):returnReading('sample',random.randint(1,100))

IoT Relay使用setuptools查找注册在 物联网中继 组。数据源应使用入口点名称 来源 。在与 iotrerelay_sample_source.py相同的目录中, 下面的代码应该放在setup.py中

# setup.pyfromsetuptoolsimportsetupsetup(name='iotrelay-sample-source',install_requires=['iotrelay'],py_modules=['iotrelay_sample_source'],entry_points={'iotrelay':['source=iotrelay_sample_source:DataSource']})

键入以下命令安装源插件:

$ python setup.py install

数据处理程序示例插件

与前面的示例一样,创建一个包含两个文件的新目录:

# iotrelay_sample_handler.pyclassHandler(object):def__init__(self,config):self.config=configdefset_reading(self,reading):print(reading)# setup.pyfromsetuptoolsimportsetupsetup(name='iotrelay-sample-handler',install_requires=['iotrelay'],py_modules=['iotrelay_sample_handler'],entry_points={'iotrelay':['handler=iotrelay_sample_handler:Handler']})

键入以下命令安装处理程序插件:

$ python setup.py install

插件配置

本例中使用的最小源插件不需要任何 配置。处理程序配置中的"读取类型"选项 指定处理程序将接收的读取类型。为了 从"IoRelay样本源"插件接收读数 IoRelay示例处理程序中的"读取类型"选项将为"示例"。 这对应于由读取设置的读取类型属性 调用get_readings()时的构造函数。

节名直接对应于插件名,如定义的 在setup.py中。

; ~/.iotrelay.cfg[iotrelay][iotrelay-sample-source][iotrelay-sample-handler]reading types=sample

每个插件部分中指定的任何选项都将传递给 初始化期间插件的构造函数。

运行物联网继电器

使用以下命令启动IOT中继:

$ iotrelay

许可证

物联网中继根据BSD 2条款许可获得许可。

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
图像处理Java 8 ImageIO在Linux中无法正确读取JPEG   spring如何用Java 1.4兼容版本替换@Resource注释   java Http请求参数类型传播   在web浏览器中看不到Java Maven Tomcatplugin web应用程序   jvm在Java中使用直接内存的目的是什么?   如何从列表转换为字符串java   java setAdapter gridview发送上下文   SwingJava。方法上的lang.NullPointerException   java什么是shell脚本、makefile和ant文件   当使用getGraphics()方法时,java JPanel图形会闪烁   java如何将迭代转换为递归?   java为什么我的抽屉菜单在同一个XML上有ConstraintLayout时没有响应?   java如何在图像上画一个圆?   Android studio:Rabbitmq:Error:java。lang.ClassNotFoundException:类io。千分尺。果心仪器找不到仪表注册表