物联网平台具有双向设备通信的功能。一方面您可以通过设备侧接口,将数据上报到物联网平台,再通过订阅推送把数据推送到您的应用服务器,或者转发到其他服务通道。另一方面,可以通过应用侧接口或控制台,将命令下发给设备,实现对设备远程控制。
消息通信是基于物模型设计的,数据上行主要分为属性上报、消息上报,数据下行主要分为命令下发、消息下发、属性修改(下发)。基于物模型的包含属性、命令,事件,超出物模型定义之外的包含消息。
表1 **消息通信说明
数据类型 | 消息类型 | 差异点 | 相同点 |
---|---|---|---|
数据上行 | 属性上报 | 依赖产品模型,需要与产品模型中定义的的属性相匹配,支持在控制台的设备详情中查看最新上报的快照数据,支持推送给已订阅的应用侧,支持通过数据分析服务查看历史数据。 | 都可以通过设备侧接口上报数据给平台,都支持规则转发。 |
消息上报 | 不依赖产品模型,平台对消息内容不进行校验,不支持在控制台的设备详情中查看最新上报的快照数据,不支持通过数据分析服务查看历史数据。 | ||
数据下行 | 命令下发 | 依赖产品模型,需要与产品模型中定义的的命令相匹配,是同步的(命令下发后等待设备侧的回复响应,若无响应则超时失败),支持控制台下发命令。 | 都可以通过应用侧接口调用给设备下发指令。 |
属性修改 | 依赖产品模型,需要与产品模型中定义的属性相匹配,是同步的(属性修改后等待设备侧的回复响应,若无响应则超时失败),支持控制台属性配置(设备影子),支持通过设备影子修改设备属性实现异步方式。 | ||
消息下发 | 不依赖产品模型,平台下发消息给设备,是异步的(消息下发后无需等待设备侧回复响应),不支持控制台下发消息。 |