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

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 Cassandra docker无法通过JMX连接   java以编程方式在图片模式下启用图片   java访问json数组中的json数组   swing Java 2D API:空指针异常   java Storm 2.0.0内存不足   java为什么Splitter在Spring Integration中处理集合项时直接返回集合?   java Spring启动到Postgres数据库驱动程序问题   java如何将对象围绕其中心旋转90度?   无法返回变量。“java:找不到变量”   通过BigInteger进行Java基转换   在Java中获取日期格式   java构建具有依赖关系的jar并将其绑定到tar中。gz使用maven组装   java为什么Guice在main中从UncaughtExceptionHandler抛出$ComputeException?   spring升级到Java7时有哪些陷阱   java从JTable向数组获取值   java Android在启动新活动时会杀死多个以前的活动   postgresql是否可以在批处理过程中运行java命令?   安卓使用Java代码创建文件上传请求   java一些元素神奇地没有从ArrayList中删除