检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
信息: 接收下发命令 在FrmMqttDemo类中提供了接收平台下发命令的功能,在MQTT建链完成并成功订阅Topic后,可以在管理控制台设备详情中命令下发或使用应用侧Demo对该设备ID进行命令下发。下发成功后,在MQTT的回调函数中接收到平台下发给设备的命令。 1 2 3
消息内容:发送的自定义的消息内容。 模板选择:使用SMN云服务定义的模板,发送消息时将模板中变量替换成对应的参数值。设备接入定义了一些通用的模板变量,在规则触发后,以下模板变量将会替换成相应的具体值。 {ruleName}:触发的规则名称 {ruleId}:触发的规则ID {deviceId}:触发规则的设备ID
将设备上报的“二进制”格式数据,按照产品模型文件的定义的属性转换为“JSON”格式数据,便于物联网平台和应用服务器识别。同时,用户远程下发控制命令时,物联网平台会将“JSON”格式的命令转换为“二进制”格式数据下发给设备。 如果设备本身上报的是JSON格式数据,则不需要定义编解码插件。
同时在“设备详情”页面查看到上报的属性: 图2 查看上报数据-parameter 如果在“设备详情”页面没有最新上报数据,请确认设备上报的服务/属性和产品模型中的服务/属性一致。 接收下发命令 订阅了命令Topic后,可以在控制台下发同步命令。详情请参考MQTT设备同步命令下发。 命令下发后,demo中接收到命令:
物联网平台向设备下发命令 物联网平台接收设备回复的命令响应 设备属性 物联网平台接收应用侧修改设备属性的请求 物联网平台向设备修改属性 物联网平台接收设备上报的属性 物联网平台接收网关批量上报的设备属性 设备事件 物联网平台通知网关设备新增的事件 物联网平台通知网关设备删除的事件 物联网平台接收网关同步子设备列表的事件
送”,在“应用模拟器”区域查看数据上报的结果,在“消息跟踪”区域查看物联网平台处理日志。 图4 在线调试-模拟数据上报smokeInfo 在“应用模拟器”区域进行命令下发,在“设备模拟器”区域查看接收到的命令(以十六进制码流为例),在“消息跟踪”区域查看物联网平台处理日志。 图5
目的版本号,由ASCII字符组成,位数不足时,后补“0X00”。 分片序号 WORD 表示请求获取的分片序号,从0开始计算,分片的总数为软件包大小除以每个分片的大小并向上取整获得。设备可以保存已经收到的分片,下次直接从缺失的分片开始请求,达到断点续传的效果。 响应消息: 方向:平台->设备 字段 数据类型 描述及要求
command:应用端下发ssh命令给设备端。 command_response:设备端上报ssh命令执行响应给应用端。 disconnect:平台正常断开Websocket连接时发送数据给应用端。 ping:心跳的上行消息。 pong:平台回复心跳的响应。 tunnel_service_type
MQTT属性上报 切换到模拟推窗器的MQTT.fx,选择“Subscribe”页签。可以看到收到平台下发的“switch”取值为“on”的命令。 图7 查看下发命令 方法二: 您可以使用配置设备接入服务时注册的真实设备接入平台,上报“gaslevel”大于6的数据。设备会收到一条“swi
物联网平台MQTT协议设备接入域名和端口号是什么? 登录设备接入服务控制台,在左侧菜单栏单击“IoTDA实例”,选择您的实例并单击实例卡片进入。 图1 实例管理-切换实例 在左侧导航栏单击总览,单击“接入信息”,找到您的平台接入地址。 图2 总览-获取接入信息 进行MQTT连接的时候,是否需要服务端CA证书验证
number = 10; 定义服务的命令。设备收到平台下发的命令时,SDK会自动调用这里定义的命令。注解中name对应物模型的command_name,method对应接收命令的处理方法,命令的入参和返回值类型固定不能修改。 这里定义的是一个响铃报警命令,命令名为ringAlarm,下发
number = 10; 定义服务的命令。设备收到平台下发的命令时,SDK会自动调用这里定义的命令。注解中name对应物模型的command_name,method对应接收命令的处理方法,命令的入参和返回值类型固定不能修改。 这里定义的是一个响铃报警命令,命令名为ringAlarm,下发
设备创建成功,可在页面看到创建的设备。 数据上报 平台和开发板建立连接后,上报烟雾浓度值。 登录设备接入服务控制台,选择您的实例,单击实例卡片进入。选择“ 设备 > 所有设备”。 选择注册的设备,单击“详情”进入设备详情,查看上报到平台的数据。 图18 NB设备数据上报-查看数据Smoke 命令下发 登
service_id String 参数说明:设备命令所属的设备服务ID,在设备关联的产品模型中定义。 buffer_timeout Integer 参数说明:设备命令的缓存时间,单位为秒,表示物联网平台在把命令下发给设备前缓存命令的有效时间,超过这个时间后命令将不再下发,默认值为172800s(48小时)。
设备无法按照产品模型中定义的格式进行指令下发时,可使用此接口下发自定义格式的数据给设备。在此之上也可以使用平台封装的标准格式,即在应用侧API的下发设备消息中payload_format填写为“standard”,或者在设备详情页的云端下发-消息下发中下发时选择“按系统格式”。 消息下发和命令下发的区别,请查看消息通信说明。
实现。当设备收到平台下发的topic中包含request_id时,设备侧响应的request_id需要跟平台下发的保持一致。 设备侧订阅带{request_id}参数的topic时,可以使用通配#。如设备侧订阅命令下发请求的topic $oc/devices/{device_id
SDK概述 物联网平台提供应用侧SDK和设备侧SDK,方便设备通过集成SDK接入到平台,应用通过调用物联网平台的API,实现安全接入、设备管理、数据采集、命令下发等业务场景。 资源包名 描述 下载路径 应用侧开发 Java SDK Java SDK提供Java方法调用应用侧API与平台通信。使用指南可以参考Java
型搜索具体设备。 查看设备信息 可查看设备状态、设备名称、设备标识码等,也可以单击设备对应的“详情”,查看设备详情。 删除设备 单击设备对应的“删除”。 说明: 删除设备后,设备的相关数据也会被删除,在删除前请确保已经完成了数据备份,并谨慎操作。 如果需要删除的设备数量较多,为方
选择“DefaultQueue”。 设备端集成华为云SDK 设备端可以通过集成华为云IoT提供的设备端SDK,快速连接华为云IoT,进行命令的接收和属性上报。 配置设备侧SDK,配置连接参数,并进行命令的监听。 //加载iot平台的ca证书,获取链接参考:https://support.huaweicloud
创建产品:在物联网平台上规定好某一款产品的协议类型、数据格式、厂商名称、设备类型。此处我们需要按照智慧路灯的特征,在控制台创建智慧路灯的产品。 定义产品模型:产品模型是用来描述设备能力的文件,通过JSON的格式定义了设备的基本属性、上报数据和下发命令的消息格式。定义产品模型,即在物联网平台构建一款设备的抽象模型