(参考)设备模拟器接入平台

设备模拟器接入平台

设备接入IoT平台后,IoT平台才可以对设备进行管理。

IoT平台提供了设备模拟器,可以模拟真实设备接入IoT平台的场景。本节基于设备模拟器进行操作。

  1. 选择“模拟器”->“NB设备模拟器”->“绑定设备”,输入验证码,点击“确定”。

    输入的验证码需要和注册设备时使用的验证码(verifyCode)一致。

    图 1 设备模拟器
    (参考)设备模拟器接入平台 - 图1

  2. 选择“我的设备”,在设备列表中查看对应设备的状态。如果状态为“绑定(bound)”,则表示设备已经成功接入IoT平台。

    图 2 查看设备状态
    (参考)设备模拟器接入平台 - 图2

设备模拟器数据上报

设备在收到平台下发命令或者资源订阅后,会上报命令响应或资源订阅消息,由IoT平台将设备上报的消息推送到应用服务器或订阅的地址。如果上报数据的南向设备是NB-IoT设备或者使用LiteOS SDK端云互通组件集成的设备,IoT平台在将消息推送到应用服务器或订阅的地址之前,会先调用编解码插件对消息进行解析。

IoT平台提供了设备模拟器,可以模拟真实设备上报数据的场景。本节基于NB设备模拟器(NB设备模拟器也可以模拟LiteOS SDK端云互通组件 的数据上报功能)进行操作。

  1. 登录IoT平台的开发者Portal。开发者Portal的访问地址、账号和密码需要向IoT平台服务商申请。

  2. 选择“模拟器”->“NB设备模拟器”,输入需要上报的码流,点击“发送”。

    在“设备日志信息”->“数据发送”中,可以查看数据上报信息。

    在“设备日志信息”->“数据接收”中,可以查看数据上报响应信息。

    图 1 模拟数据上报
    (参考)设备模拟器接入平台 - 图3

  3. 在“我的设备”界面的设备列表中,选择上报数据的设备,查看“历史数据”,验证编解码插件是否可以对上报数据进行解析。

    图 2 查看数据上报结果
    (参考)设备模拟器接入平台 - 图4

    以一款Led灯设备的编解码插件为例进行说明,该款设备包含一种服务LightControl(设置多种服务包含多种属性、多种命令类似):

    • LightControl服务:包含light一种属性(灯亮或者灭)和一种命令(设置灯亮或者灭)。

      使用设备模拟器中上报“01”的十六进制码流后,在“历史数据中”获得的编解码插件解码结果将会为:

      LightControl:{ “light”: 1 }

  4. 在“我的设备”界面的设备列表中,选择上报数据的设备,查看“历史数据”,验证设备数据上报的情况。

    “历史数据”中显示为经过编解码插件解析后的结果。

应用模拟器命令下发

应用服务器需要调用IoT平台的命令下发接口,对设备下发控制指令。如果接收命令的设备是NB-IoT设备(或者集成LiteOS SDK端云互通组件的南向设备),IoT平台收到应用服务器下发的命令后,会先调用编解码插件进行转换,再发送给设备。

IoT平台提供了应用模拟器,可以模拟应用服务器下发命令的场景。本节基于应用模拟器进行操作。

  1. 在“我的设备”界面的设备列表中,选择接收命令的设备,点击“命令下发(</>)”。

    在弹出界面中,配置下发给设备的命令参数。

    图 1 命令下发
    (参考)设备模拟器接入平台 - 图5

  2. 在“我的设备”界面的设备列表中,选择接收命令的设备->“历史命令”,查看“状态”栏的显示。

    图 2 命令下发状态
    (参考)设备模拟器接入平台 - 图6

    状态说明如下:

    • 超期: 表示命令在IoT平台缓存时间超期,未向设备下发。
    • 成功: 表示IoT平台已经将命令下发给设备,且收到设备上报的命令执行结果。
    • 失败: 表示编解码插件解析为空,或执行结果响应里面有“ERROR CODE”等。
    • 超时: 表示IoT平台等待ACK响应超时。
    • 取消: 表示应用侧已经取消命令下发。
    • 等待: 表示命令在IoT平台缓存,还未下发给设备。
    • 已发送: 表示IoT平台已经将命令下发给设备。
    • 已送达: 表示IoT平台已经将命令下发给设备,且收到设备返回的ACK消息。
  3. 选择“模拟器”->“NB设备模拟器”->“设备日志信息”->“数据接收”,查看设备模拟器收到的命令信息。

    图 3 命令接收信息
    (参考)设备模拟器接入平台 - 图7