这一期,我们来讲解,IoTDA平台编解码插件开发,先让我们简单了解一下编辑码插件的含义及编解码插件的任务。
编解码插件
编解码插件的任务是负责南向二进制码流到北向profile定义的数据格式之间的翻译
NB-IoT设备和IoT平台之间采用CoAP协议通讯(在设备测,CoAP协议栈一般由NB-IoT芯片模组实现),CoAP消息的payload为应用层数据,应用层数据的格式由设备自行定义。
由于NB-IoT设备一般对省电要求较高,所以应用层数据一般不采用流行的json格式,而是采用二进制格式
设备厂商需要提供编解码插件,IoT平台负责调用编解码插件,实现二进制消息转json格式的功能,以提供应用服务器使用
解码过程(数据上报)
编码过程(命令下发)
实战操作流程:
步骤一:
进入我们上次教程,所创建的产品页面,并选择产品
步骤二:
打开产品页面选择插件开发功能,并选择图形化开发,也就是相应的编解码插件开发
进入后的界面
步骤三:
点击新增消息
在这里我们需要新增3条消息,2条数据上报消息,1条命令下发消息
数据上报
消息名:Smoke_Infomation | |||
---|---|---|---|
消息类型:数据上报 | |||
字段 | 数据类型 | 长度 | 是否地址域 |
messageId | int8u | 1 | 是 |
level | int8u | 1 | 否 |
temperature | int16u | 2 | 否 |
消息名:message | |||
---|---|---|---|
消息类型:数据上报 | |||
字段 | 数据类型 | 长度 | 是否地址域 |
messageId | int8u | 1 | 是 |
length(自定义字符串长度) | int8u | 1 | 否 |
message | varstring | length 0;1;0xff | 否 |
步骤四:
数据上报消息的字段建立映射关系
步骤五:
点击新增消息
选择命令下发、并添加响应字段
消息名:Set_Smoke | |||
---|---|---|---|
消息类型:命令下发、响应字段 | |||
字段 | 数据类型 | 长度 | 是否地址域 |
messageId | int8u | 1 | 是 |
mid | int16u | 2 | 响应标识字段 |
errcode | int8u | 1 | 命令执行状态字段 |
value | int8u | 1 | 否 |
result | int8u | 1 | 否 |
命令下发
响应字段
注:errcode字段:00表示成功,01表示失败
步骤六:
命令下发消息的字段建立映射关系
步骤七:
点击保存,并部署
以上就是编解码开发的全部教程。
注: 鉴于水平有限,本文难免存在纰漏,热心的读者也可把勘误留在评论区,祝您学习愉快!IoT的世界,我与您同行!