本文以解析上、下行属性数据的脚本为例,介绍为数据格式为透传/自定义的产品下的物模型数据解析脚本编写方法。
步骤一:编辑脚本
步骤二:在线测试脚本
脚本编辑完成后,在模拟输入下,选择模拟类型,输入模拟数据在线测试脚本。
- 模拟解析设备上报的属性数据。
选择模拟类型为设备上报数据,输入以下模拟的设备上报数据,然后单击执行。说明 以下传入参数模拟数据仅适用于JavaScript脚本,Python脚本的传入参数模拟数据请参见Python脚本示例,PHP脚本的传入参数模拟数据请参见PHP脚本示例。
0x00002233441232013fa00000
数据解析引擎会按照脚本规则,将透传数据转换为JSON格式数据。
单击运行结果,查看解析结果。
{ "method": "thing.event.property.post", "id": "2241348", "params": { "prop_float": 1.25, "prop_int16": 4658, "prop_bool": 1 }, "version": "1.0" }
- 模拟解析物联网平台下发的返回结果数据。
选择模拟类型为设备接收数据,输入以下JSON格式数据,然后单击执行。
{ "id": "12345", "version": "1.0", "code": 200, "method": "thing.event.property.post", "data": {} }
数据解析引擎会将JSON格式数据转换为以下数据。
0x0200003039c8
- 模拟解析物联网平台下发的属性设置数据。
选择模拟类型为设备接收数据,输入以下JSON格式数据,然后单击执行。
{ "method": "thing.service.property.set", "id": "12345", "version": "1.0", "params": { "prop_float": 123.452, "prop_int16": 333, "prop_bool": 1 } }
数据解析引擎会将JSON格式数据转换为以下数据。
0x0100003039014d0142f6e76d
- 模拟解析设备返回的属性设置结果数据。
选择模拟类型为设备上报数据,输入以下数据,然后单击执行。
0x0300223344c8
数据解析引擎会将透传数据转换为以下JSON格式数据。
{ "code": "200", "data": {}, "id": "2241348", "version": "1.0" }
步骤三:提交脚本
确认脚本可以正确解析数据后,单击提交,将该脚本提交到物联网平台系统,以供数据上下行时,物联网平台调用该脚解析数据。
说明 仅提交后的脚本才能被物联网平台调用;草稿状态的脚本不能被调用。
步骤四:使用真实设备调试
正式使用脚本之前,请使用真实设备与物联网平台进行上下行消息通信,以验证物联网平台能顺利调用脚本,解析上下行数据。
- 测试上报属性数据。
- 使用设备端上报设备属性数据,例如
0x00002233441232013fa00000
。 - 在物联网平台控制台,选择 。
- 单击设备对应的查看,然后在设备详情页运行状态页签下,查看是否有相应的属性数据。
- 使用设备端上报设备属性数据,例如
- 测试下发属性数据。
- 在物联网平台控制台,选择 。
- 选择要调试的产品和设备,并选择调试真实设备,功能选择为要调试的属性identifier,如属性(prop_int16),方法选择为设置,输入以下数据,单击发送指令。
{ "method": "thing.service.property.set", "id": "12345", "version": "1.0", "params": { "prop_float": 123.452, "prop_int16": 333, "prop_bool": 1 } }
- 查看设备端是否收到该属性设置指令。
- 在该设备的设备详情页运行状态页签下,查看设备是否上报当前属性数据。
相关文档
- 查看JavaScript(ECMAScript 5)脚本模板和示例,请参见JavaScript脚本示例。
- 查看Python 2.7脚本模板和示例,请参见Python脚本示例。
- 查看PHP 7.2脚本模板和示例,请参见PHP脚本示例。
- 了解数据解析流程等基本信息,请参见解析数据。