更新时间:2022-02-21 GMT+08:00

插件开发

概述

设备上报数据时,如果“数据格式”“二进制码流”,则该产品下需要进行编解码插件开发;如果“数据格式”“JSON”,则该产品下不需要进行编解码插件开发

以NB-IoT场景为例,NB-IoT设备和物联网平台之间采用CoAP协议通讯,CoAP消息的payload为应用层数据,应用层数据的格式由设备自行定义。由于NB-IoT设备一般对省电要求较高,所以应用层数据一般不采用流行的JSON格式,而是采用二进制格式。但是,物联网平台与应用侧使用JSON格式进行通信。因此,开发者需要开发编码插件,供物联网平台调用,以完成二进制格式和JSON格式的转换。

开发编解码插件

自定义新建产品时:如果选择使用系统模板,部分模板会包含编解码插件,开发者可以直接使用或在此基础上进行修改;如果选择自定义产品模板,则需要完整开发编解码插件,操作如下:

  1. 在产品开发空间,点击“编解码插件开发”

  2. “在线编解码插件编辑器”区域,点击“新增消息”

  3. 系统将弹出“新建消息”窗口,填写“消息名”“消息类型”选择“数据上报”,点击“完成”

    • 设备在上报数据后,如果需要物联网平台返回ACK响应消息,则需要勾选“添加响应字段”。ACK响应消息携带的数据可以在“响应数据”中配置,默认携带“AAAA0000”
    • “消息名”只能输入包含字母、数字、_和$,且不能以数字开头的字符。

  4. 点击数据上报字段后的“+”

  5. 系统将弹出“增加字段”窗口,勾选“标记为地址域”,其余参数将自动填充,点击“完成”

    当有相同类型的消息时(例如:两种数据上报的消息),需要添加地址域字段,且该字段在字段列表的位置必须一致。命令响应消息可看作一种数据上报消息,因此如果存在命令响应消息,则需要在数据上报消息中添加地址域。

  6. 点击数据上报字段后的“+”

  7. 系统将弹出“增加字段”窗口,完成各项参数配置后,点击“完成”

    • “字段名”只能输入包含字母、数字、_和$,且不能以数字开头的字符。
    • “数据类型”根据设备上报数据的实际情况进行配置,需要和Profile相应字段的定义相匹配。

  8. “编解码插件编辑器”区域,点击“新增消息”

  9. 系统将弹出“新建消息”窗口,填写“消息名”“消息类型”选择“命令下发”,点击“完成”

    • 设备在接到命令后,如果需要返回命令执行结果,则需要勾选“添加响应字段”。勾选后:
      • 需要在数据上报消息和命令响应消息中均定义地址域字段,并且该字段在两种消息的字段列表中的位置必须相同,使编解码插件可以对数据上报消息和命令响应消息进行区分。
      • 需要在命令下发消息和命令响应消息中定义响应标识字段,并且该字段在两种消息的字段列表中的位置必须相同,使编解码插件可以将命令下发消息和对应的命令响应消息进行关联。
    • “消息名”只能输入包含字母、数字、_和$,且不能以数字开头的字符。

  10. 点击命令下发字段后的“+”

  11. 系统将弹出“增加字段”窗口,勾选“标记为地址域”,其余参数将自动填充,点击“完成”

    当有相同类型的消息时(例如:两种命令下发的消息),需要添加地址域字段,且该字段在字段列表的位置必须一致。数据上报响应消息可看作一种命令下发消息,因此如果存在数据上报响应消息,则需要在命令下发消息中添加地址域。

  12. 点击命令下发字段后的“+”

  13. 系统将弹出“增加字段”窗口,勾选“标记为响应标识字段”,其余参数将自动填充,点击“完成”

  14. 点击命令下发后的“+”

  15. 系统将弹出“增加字段”窗口,完成各项参数配置后,点击“完成”

    • “字段名”只能输入包含字母、数字、_和$,且不能以数字开头的字符。
    • “数据类型”根据设备上报数据的实际情况进行配置,需要和Profile相应字段的定义相匹配。

  16. 点击响应字段后的“+”

  17. 系统将弹出“增加字段”窗口,勾选“标记为地址域”,其余参数将自动填充,点击“完成”

  18. 点击响应字段后的“+”

  19. 系统将弹出“增加字段”窗口,勾选“标记为响应标识字段”,其余参数将自动填充,点击“完成”

  20. 点击响应字段后的“+”

  21. 系统将弹出“增加字段”窗口,勾选“标记为命令执行状态字段”,完成各项参数配置后,点击“完成”

    • “名字”将自动填充。
    • “数据类型”根据设备命令响应的实际情况进行配置,需要和Profile相应字段的定义相匹配

  22. 点击响应字段后的“+”

  23. 系统将弹出“增加字段”窗口,完成各项参数配置后,点击“完成”

    • “字段名”只能输入包含字母、数字、_和$,且不能以数字开头的字符。
    • “数据类型”根据设备上报数据的实际情况进行配置,需要和Profile相应字段的定义相匹配。

  24. 拖动右侧“设备模型”区域的属性字段、命令字段和响应字段,与数据上报消息、命令下发消息和命令响应消息的相应字段建立映射关系。

  25. 点击“保存”,并在插件保存成功后点击“部署”,将编解码插件部署到物联网平台。