物联网输入模块
项目描述
此插件允许使用设备自动向Odoo输入数据。
它打开一个设备可以使用的URL(带密码)以执行特定操作。
当设备只想向Odoo执行单一简单操作时,输入很有用。这样,设备不需要配置Odoo用户名和密码,由Odoo设备处理。
示例
每三分钟发送温度。
发送设备接收的RFID以执行某些操作
目录
使用方法
您可以使用以下两个端点:端点1:/iot/<serial>/action
接受application/x-www-form-urlencoded参数:passphase,value(其中value是一个JSON对象)
在物联网中创建设备 > 配置设备
访问设备的输入部分
创建一个输入。您必须定义序列号、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。在遇到问题的情况下,请检查是否已经报告了您的问题。如果您是第一个发现它的人,请提供详细和受欢迎的反馈,以帮助我们将其摧毁。
请不要直接联系贡献者以获取支持或帮助解决技术问题。
致谢
贡献者
Enric Tobella <etobella@creublanca.es>
Dimitrios Tanis <dtanis@tanisfood.gr>
维护者
此模块由OCA维护。
OCA,即Odoo社区协会,是一个非营利组织,其使命是支持Odoo功能的协作开发并推广其广泛应用。
当前维护者
此模块是GitHub上的OCA/iot项目的一部分。
欢迎您做出贡献。要了解如何做,请访问https://odoo-community.org/page/Contribute。
项目详情
odoo_addon_iot_input_oca-17.0.1.0.0.4-py3-none-any.whl的散列
算法 | 散列摘要 | |
---|---|---|
SHA256 | e969f6b951566cfa81a49161e88cce284169b189c5d3db0cb61828d6df20aed8 |
|
MD5 | bdfe37e1ee8c8e354582150454c42d1b |
|
BLAKE2b-256 | 7b09fb96149d0b03dc631efb547b96c3936b63d05bbb6d9b314e2d5fe420565a |