Skip to content

数据业务交互

提示:物模型数据业务的交互需要在创建产品时选择 物模型 协议。

根据智能香薰机实际项目需求拟定物模型功能,预添加物模型如下表所示。

功能ID功能类型功能名称数据格式读写类型单位
1属性精油当前容量FLOAT只读ML
2属性定时上报频率INT可读可写
3属性开关状态BOOL只读true:开启;
false:关闭;
4事件精油不足告警BOOL--true:告警;
false:告警恢复;
5属性香薰机运行模式ENUM读写1:工作模式一;
2:工作模式二;
3:工作模式三;
6服务设置工作模式ENUM--输出参数:ID 5

物模型数据业务交互

物模型是开发者中心 针对物理实体设备在开发者中心建立的数据模型,主要用于描述产品的功能,从而方便数据的解析。可以在设备成功接入开发者中心后,通过 AT+QIOTMODELTDAT+QIOTMODELRD 指令来实现与开发者中心的数据交互。

提示:详情请参考数据交互相关命令

一、物模型数据上行

开发建议:上报频率不宜过快,建议采用灵活上报的形式:
若是控制类的数据(如开关、工作模式),则可采用变化上报的方式。例如平台或者APP下发控制或者通过其他方式改状态值,设备再进行上报到平台端。
若是实时变化类的数据(如电流、温度值),则可采用定时上报。例如每隔5分钟设备定时上报一次到平台端。

1、响应应答数据

  • 开发者中心读取操作

    在开发者中心 设备信息 详情页的 设备调试 中,点击 批量读取 按钮可一键批量读取物模型属性数值。

    img

  • 设备侧响应操作

    img

    选择需要发送的请求包 ID。
    点击 发送应答数据 按钮即可向平台响应物模型数据。


  • 事件回调响应解析

    • +QIOTEVT: 5,10211,7,1,2,3,5
      5 :收到下行业务事件;
      10211 :收到平台读取物模型属性事件Code;
      7 :请求包 ID,该参数仅在模块接收物模型数据响应时有效;
      1,2,3,5 :需要读取物模型属性的ID号,分别是1、2、3、5;

2、物模型属性数据主动发送

设备端主动发送 精油剩余容量频率开关电源开关状态 的物模型属性数据到平台。

  • 设备侧发送操作

    img

    ①、 选择需要发送的物模型。
    ②、 点击 发送物模型数据 按钮即可向平台发送物模型数据。


  • 开发者中心效果

    终端设备发送物模型数据完成后,在开发者中心点击 设备信息 详情页中的 设备调试 可查看与终端设备数据的 实时记录 与实时上传 JSON 格式的物模型数据。此时开发者中心已经接收到终端设备上报的精油当前容量:189.5 、定时上报频率:30、开关状态:false。如下图所示。

    img

3、物模型告警事件发送

向平台发送 精油不足告警事件,事件ID为:4,输出参数ID为:1

  • 设备侧发送操作

    img

    ①、 选择需要发送的物模型事件。
    ②、 点击 发送物模型数据 按钮即可向平台发送物模型事件。

  • 开发者中心效果

    在开发者中心 设备详情 详情页的 事件日志 中可查看事件数据记录。

    img

二、物模型数据下行

开发者中心下发服务

打开物模型功能定义的 设备调试 > 服务调用,模拟远程下发控制命令场景,在设备调试中,选择 服务调用 > 设置工作模式 ,参数设置为:模式二 ,最后单击 发送指令

img

  • 非缓存模式

    非缓存模式 中,当终端设备接收到平台下发的数据,直接向 MCU 打印数据,例如,平台下发服务后。串口工具显示的结果如下所示。

    img

    交互数据解析

    • +QIOTEVT: 5,10210,13 :终端设备接收到物模型数据后,向 MCU 下发的事件通知。
      5 :事件类型,表示着接收到下行数据;
      10210 :事件Code,代表收到物模型下发数据;
      13 :接收到下发数据的长度;

    • {"6":{"5":2}} :接收到平台发送的物模型服务Json格式数据。


  • 缓存模式

    当模组接收到物模型数据时,模组会主动向 MCU 打印该事件: +QIOTEVT: 5,10210 ,该事件表示设备端接收到平台下发的物模型数据,如果想查看数据内容则需要 MCU 主动发送 AT+QIOTMODELRD=<req_length> 指令查看具体数据。

    点击 读取物模型数据 按钮即可读取缓存的物模型数据。如下图所示。 img

    交互数据解析

    • +QIOTEVT: 5,10210 :终端设备接收到物模型数据后,向 MCU 下发的事件通知。
      5 :事件类型,表示着接收到下行数据;
      10210 :事件Code,代表收到物模型下发数据;

    • +QIOTMODELRD: 13,0,0 :读取物模型数据响应。
      13 :返回的数据长度;
      0 :当前数据包剩余数据长度;
      0 :剩余数据包个数;

    • {"6":{"5":2}} :接收到平台发送的物模型服务Json格式数据。