检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
rc = InternalConnect(); } return rc; } private int InternalConnect() {
perature”大于80的数据。 您也可以使用模拟器模拟设备订阅Topic: “$oc/devices/{device_id}/sys/properties/report”(其中{deviceId}需要替换成实际设备ID)后,上报“temperature”大于80的数据,操作方
用于设备按产品模型中定义的格式将属性数据上报给平台。属性上报和消息上报的区别,请查看消息通信说明。 低配置且资源受限或者对网络流量有要求的设备,不适合直接构造JSON数据与物联网平台通信时,可将原始二进制数据透传到物联网平台。通过开发编解码插件实现二进制数据到平台定义JSON格式的转换。
在设备上线后发送数据(支持配置,最长缓存时间24小时)。平台对每个设备默认只保存20条消息,超过20条后,后续的消息会替换下发最早的消息。同时,消息下发支持使用自定义topic的格式进行数据下发。 表1 消息下发Topic类别 消息下发Topic类别 描述 系统Topic 平台预
perature。 数据类型 int:当上报的数据为整数时,可配置为此类型。 long: 当上报的数据为长整型时,可配置为此类型。 decimal:当上报的数据为小数时,可配置为此类型。配置“经纬度”属性时,数据类型建议使用“decimal”。 string:当上报的数据为字符串
/// 创建Connection /// </summary> /// <returns>Connection</returns> static Connection CreateConnection() {
this.options = options; } public String getId() { return options.getClientId(); } public void initialize() throws Exception
当设备和物联网平台完成对接后,物联网平台可通过以下方式发送数据到设备: 数据下发 描述 适用场景 设备影子 同步或异步 平台是否缓存 支持协议(设备侧) 物模型 消息下发 平台向设备直接下发消息,不依赖产品模型。提供给设备的单向通知,具有消息缓存功能,若设备不在线,则在设备上线后发送数据(支持配置,最长缓存时间24小时)。
SDK代码,使设备上线。 运行应用侧代码,当设备接收到设备下发的命令后,进行数据处理及响应。设备侧收到的命令下发样例如下: 图8 设备侧命令下发成功结果 “消息跟踪”显示结果如下: 图9 消息跟踪-命令下发 父主题: 云端数据下发
业务场景说明 自建MQTT Broker基于MQTT协议的上行数据和下行指令的业务定义如下: 表1 业务场景 业务场景 通信Topic 报文Payload 设备上报数据 /aircondition/data/up { "temperature": 26.0 } 服务端控制指令 /aircondition/cmd
导入和导出产品模型 设备数据订阅流转 支持通过API或控制台订阅数据,将数据推送到大数据平台或数据消息总线;支持订阅获取的数据:设备业务信息(如设备生命周期管理、设备数据上报、设备消息状态、设备状态等)和管理信息(软固件升级状态和升级结果); 支持推送到数据接入服务 DIS、分布式
Container # 重连次数 reconnectTimes = 0 def current_time_millis(): return str(int(round(time.time() * 1000))) class AmqpClient(MessagingHandler):
"service_id" : "temperature,", "service_type" : "temperature", "properties" : [ { "property_name" : "temperature", "data_type"
指导详见线下开发参考。 在线开发产品模型时,如何选择数据类型? 数据类型的配置可以参考如下原则: int:当上报的数据为整数或布尔值时,可以匹配为此类型。插件开发中可匹配int型或array类型。 decimal:当上报的数据为小数时,可以匹配为此类型。插件开发中可匹配string或者int或者array类型。
为1-2。 “长度”根据“数据类型”的配置自动填充。 “默认值”不填。此处火灾级别level不固定,无默认值。 图4 插件开发-添加字段level 添加temperature字段,表示温度。 “数据类型”,在产品模型中,temperature属性的“数据类型”为int,最大值10
oT Device SDK后,可以直接与物联网平台通信。不支持TCP/IP协议栈的设备,例如蓝牙设备、ZigBee设备等需要利用网关将设备数据转发给物联网平台,此时网关需要事先集成IoT Device SDK。 设备接入前,需创建产品(可通过控制台创建或者调用应用侧API接口创建产品)。
立链接后不拉取数据,则会导致数据积压在服务端。服务端仅保存最近24小时,且占用磁盘容量小于1GB的数据,如果用户不及时拉取数据,物联网平台会滚动清除超期和超出容量限制的数据。若用户收到消息后来不及响应,长连接中断,则未响应的数据会在下次链接后重新推送。 如何进行数据订阅 应用服务
1天 接收平台推送的消息 客户端和平台之间的Receiver Link建链成功后,基于这个link,支持客户端主动拉取数据(推荐使用,客户端可根据自身能力来拉取数据)和注册监听由服务端推送两种方式。 父主题: 使用AMQP转发
备的属性数据。设备收到属性设置请求后,需要将执行结果返回给平台,如果设备没回响应平台会认为属性设置请求执行超时。 低配置且资源受限或者对网络流量有要求的设备,不适合直接构造JSON数据与物联网平台通信时,可将原始二进制数据透传到物联网平台。通过开发编解码插件实现二进制数据到平台定义JSON格式的转换。
P原始码流。 UpLinkHandler 设备上行数据处理类。把TCP协议数据转成平台格式数据,并调用SDK接口进行上报 DownLinkHandler IoT平台下发数据处理类。将平台下发数据转换为TCP协议数据,并下发给设备。 DeviceSessionManger 设备会话管理。管理设备同服务端的连接。