检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
buffer_timeout Integer 参数说明:设备命令的缓存时间,单位为秒,表示物联网平台在把命令下发给设备前缓存命令的有效时间,超过这个时间后命令将不再下发,默认值为172800s(48小时)。
设备命令下发 API 说明 设备命令下发 物联网平台向设备下发命令,物联网平台通过LwM2M的/19/1/0资源对象将命令打包到LwM2M write消息的payload里下发给设备。 父主题: 设备侧LwM2M接口参考
该场景主要描述的是设备可以通过LWM2M协议与物联网平台进行交互,应用侧可以到物联网平台订阅设备侧变化的通知,也可以给设备侧下发命令。 核心知识点:产品模型、编解码插件、订阅推送、属性上报、命令下发。 最佳实践参考:基于NB-IoT小熊派开发智慧路灯。
表1 业务类型 业务类型 业务流程 设备状态 设备上线 设备下线 设备消息 物联网平台接收应用侧下发消息的请求 物联网平台向设备下发消息 物联网平台接收设备上报的消息 设备命令 物联网平台接收应用侧下发设备命令的请求 物联网平台向设备下发命令 物联网平台接收设备回复的命令响应 设备属性
将设备业务能力拆分成若干个服务后,再定义每个服务具备的属性、命令以及命令的参数。 以水表为例,水表具有多种能力,如上报水流、告警、电量、连接等各种数据,并且能够接受服务器下发的各种命令。
以管理员身份运行cmd命令行窗口。 执行cd c:\openssl\bin(请替换为openssl实际安装路径),进入openssl命令视图。 执行以下命令生成生成密钥对。
(3)编译和烧录,分为IDE方式和命令行方式,这里不一一介绍。可以参考图1 对应链接。 (4)烧录后,按下开发板RESET复位键,设备将启动。
图8 新增属性-longitude 图9 新增属性-latitude 单击添加命令,输入命令名称“FREQUENCY_LOCATION_SET”。
buffer_timeout 否 Integer 参数说明:设备命令的缓存时间,单位为秒,表示物联网平台在把命令下发给设备前缓存命令的有效时间,超过这个时间后命令将不再下发,默认值为172800s(48小时)。
- commands - - - 必选 设备可以执行的命令,如果本服务无命令则置null。 - - commandName - - 必选 命令的名字,命令名与参数共同构成一个完整的命令。 - - paras - - 必选 命令包含的参数。
选择左侧导航栏的“设备 > 所有设备”,单击具体设备“详情”进入设备详情,在“消息跟踪”页签内,启动“消息跟踪”。 图2 消息跟踪-启动消息跟踪 运行设备侧 SDK代码,使设备上线。
如设备侧订阅命令下发请求的topic $oc/devices/{device_id}/sys/commands/request_id={request_id}时,可以用$oc/devices/{device_id}/sys/commands/#。
应用侧接口的调用,需要设备侧的配合,例如应用侧下发命令,设备侧需要先订阅“平台命令下发”的下行Topic,否则设备无法收到平台命令,应用下发命令的接口也会报超时。 父主题: 设备侧MQTT/MQTTS接口参考
它将设备上报的二进制数据解码为JSON格式供应用服务器“阅读”,将应用服务器下行的JSON格式命令编码为二进制或JSON格式数据供终端设备(UE)“理解执行”。
项目结构说明 项目结构说明 图1 项目结构图 表1 类相关说明 类名称 描述 Main 主启动类。 BridgeService 网桥初始化:初始化同IoT平台的连接,设置平台下行数据监听 TcpServer TCP协议服务端启动类。
平台命令下发 平台/应用服务器按产品模型中定义的命令格式下发控制命令给设备。 平台事件下发 平台/应用服务器按产品模型中定义的事件格式下发事件给设备。
应用服务器如何下发缓存命令? 在调用“创建设备命令”接口时,“expireTime”参数设置为大于0的值。
下发异步设备命令 设备的产品模型中定义了物联网平台可向设备下发的命令,应用服务器可调用此接口向指定设备下发异步命令,以实现对设备的控制。 查询指定id的命令 可通过指定id查询某条特定命令。
设置“监控对象”为“命令行输入”,并输入相应的命令。 图3 设置监控对象 命令行输入使用Prometheus格式命令,如需查看Prometheus格式命令行的详细说明,请将光标移至搜索框后的处,单击“了解更多”。
Waiting for device start to update timeout 等待设备启动更新超时 请检查设备侧。 Waiting for device start download package timeout 等到设备开始下载固件包超时 请检查设备侧。