一、属性(Property)
属性一般用于简单的开关功能 或 状态数据上报,以下为概述内容。MQTT协议属性上报、设置等机制请参见:物模型属性MQTT通讯协议。
1、设备上报属性
设备端最基础的机制,即 设备端状态变更时 主动上报属性值。
由于 MQTT Broker 当前 QoS 0 的限制,单次上报可能存在数据丢失的情况,设备端可根据业务场景的需要使用 HTTP 协议 上报设备物模型属性值。
2、应用程序设置属性值
App / 应用程序 设置属性指令到设备,适用于简单的功能操作(eg:功能开关)。通过 MQTT 协议 异步设置属性指令到设备。
3、应用程序设置属性期望值
针对 实效性要求不高,但消息最终必答 的场景,平台提供了 “设置属性期望值” 的机制以 “保证数据的最终一致性”。应用程序/客户端通过设置期望值 ,IoT平台向设备端下发属性设置消息,设备端收到设置消息 或 上线后 或 定时轮询期望值后执行业务。
4、应用程序获取属性值
App端或应用程序主动向设备查询属性值,设备将属性变量的数据进行上报,设备不执行当前属性变量的数据变更操作。
当前应用程序通过HTTP协议查询设备物模型属性上报值数据时,物模型服务不会发请求至设备。
二、事件上报(Event)
设备向云端上报组合数据,事件可支持上报多个参数。例如某项任务完成后的通知信息、门锁被打开、设备发生故障时的温度\时间信息、设备告警时的运行状态、事件类型的埋点等。MQTT协议的事件上报机制请参见:物模型事件MQTT通讯协议。
HTTP事件上报协议,请参见:上报物模型事件、查询设备上报事件记录。
三、行为调用(Action)
应用程序通过 ”行为“的方法调用,完成较为复杂的业务逻辑,支持异步和同步,by行为进行定义。相比于属性,行为可通过一条指令实现更复杂的业务逻辑。例如:开始清洁、开始拍照等。MQTT协议的行为调用机制请参见:物模型行为MQTT通讯协议。
1. 异步行为调用
触发行为调用的HTTP接口,请参见:触发调用设备行为。
2. 同步行为调用
触发行为调用的HTTP接口,请参见:触发调用设备行为。
最后编辑:陈勇琦 更新时间:2024-10-18 16:29