作者小头像 Lv.1
26 成长值

个人介绍

这个人很懒,什么都没有留下

感兴趣或擅长的领域

暂无数据
个人勋章
TA还没获得勋章~
成长雷达
20
6
0
0
0

个人资料

个人介绍

这个人很懒,什么都没有留下

感兴趣或擅长的领域

暂无数据

达成规则

发布时间 2025/02/06 10:13:53 最后回复 zhengyhua 2025/02/24 09:11:24 版块 IoT平台
106 5 0
他的回复:
大致写了一下,如果理解有误,你稍微修改一下即可。/* jshint esversion: 6 */ /** * 设备上报数据到物联网平台时调用此接口进行解码, 将设备的原始数据解码为符合产品模型定义的JSON格式数据。 * 该接口名称和入参已经定义好,开发者只需要实现具体接口即可。 * @param byte[] payload 设备上报的原始码流 * @param string topic MQTT设备上报数据时的topic,非MQTT设备上报数据时不携带该参数 * @return string json 符合产品模型定义的JSON格式字符串 */ function decode(payload, topic) { var jsonObj = {}; //设置serviceId参数值,该参数值对应产品模型中的服务类型TowerInfo var serviceId = 'TowerInfo'; var result = ''; for (let i = 0; i payload.length; i++) { result += String.fromCharCode(payload[i]); } const originalData = JSON.parse(result); //转换为属性上报的JSON格式 jsonObj = {"msg_type":"properties_report","services":[{"service_id":serviceId,"properties":{"Temp1": originalData.Temp1, "Temp2": originalData.Temp2}}]}; //转换为JSON格式的字符串数据 return JSON.stringify(jsonObj); } /** * 物联网平台下发指令时,调用此接口进行编码, 将产品模型定义的JSON格式数据编码为设备的原始码流。 * 该接口名称和入参格式已经定义好,开发者只需要实现具体接口即可。 * @param string json 符合产品模型定义的JSON格式字符串 * @return byte[] payload 编码后的原始码流 */ function encode(json) { let payload = []; return payload; }