跳转到主要内容

物联网输入模块

项目描述

Beta License: AGPL-3 OCA/iot Translate me on Weblate Try me on Runboat

此插件允许使用设备自动向Odoo输入数据。

它打开一个设备可以使用的URL(带密码)以执行特定操作。

当设备只想向Odoo执行单一简单操作时,输入很有用。这样,设备不需要配置Odoo用户名和密码,由Odoo设备处理。

示例

  • 每三分钟发送温度。

  • 发送设备接收的RFID以执行某些操作

目录

使用方法

您可以使用以下两个端点:端点1:/iot/<serial>/action

接受application/x-www-form-urlencoded参数:passphase,value(其中value是一个JSON对象)

  1. 在物联网中创建设备 > 配置设备

  2. 访问设备的输入部分

  3. 创建一个输入。您必须定义序列号、passphrase、函数和模型

系统将调用的函数必须是以下类型

@api.model
    def call_function(self, key):
    return {}

其中key是设备发送的输入字符串,结果必须是一个字典,将作为JSON响应发送到设备。

端点2:/iot/<device_identification>/multi_input 它可以用于在单个POST请求中发送多个值,例如:- 同一设备的具有不同地址的输入的值(多输入)- 同一设备的具有相同地址但不同值的输入的值(多事件)- 上述两者的混合(多输入,多事件)

接受application/x-www-form-urlencoded参数:passphase,values(一个JSON数组,包含JSON对象)

通过device_identification调用,并传递两个POST参数:设备密钥和包含输入值数组的JSON字符串 - 地址键的值可以是字符串或数字(在内存受限设备上创建JSON对象时节省字节)并在解析时转换为字符串 - 值键的值可以是字符串、数字或布尔值,根据JSON规范。您可以在示例文件夹中看到一个有效的JSON输入对象的示例,使用了几个组合。

它要求系统将要调用的函数必须是以下类型

@api.model
    def call_function(self, key):
    'do something
    if err:
        return {'status': 'error', 'message': 'The error message you want to send to the device'}
    return {'status': 'ok', 'message': 'Optional success message'}

其中key是设备发送的字典,至少包含以下键的值:‘address’,‘value’

该函数必须始终返回包含状态和消息的JSON。如果值包含以‘uuid’为键的值,则它与对象一起返回,以使物联网设备能够按记录识别成功/失败。

具有完整的错误报告,返回值是一个至少包含状态和消息的字典JSON数组。错误消息响应在某些点上是通用的,尽管在Odoo服务器日志中进行了扩展日志记录。

错误跟踪器

在GitHub Issues上跟踪错误https://github.com/OCA/iot/issues。在遇到问题的情况下,请检查是否已经报告了您的问题。如果您是第一个发现它的人,请提供详细和受欢迎的反馈,以帮助我们将其摧毁。

请不要直接联系贡献者以获取支持或帮助解决技术问题。

致谢

作者

  • Creu Blanca

贡献者

维护者

此模块由OCA维护。

Odoo Community Association

OCA,即Odoo社区协会,是一个非营利组织,其使命是支持Odoo功能的协作开发并推广其广泛应用。

当前维护者

etobella

此模块是GitHub上的OCA/iot项目的一部分。

欢迎您做出贡献。要了解如何做,请访问https://odoo-community.org/page/Contribute

项目详情


下载文件

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

源代码分发

此版本没有可用的源代码分发文件。请参阅生成分发存档的教程。

构建分发

odoo_addon_iot_input_oca-17.0.1.0.0.4-py3-none-any.whl (39.1 kB 查看散列)

上传时间 Python 3