Skip to content

主题订阅

订阅服务端消息

sys/产品ID/设备ID/service

基本数据格式

json
{
  // 随机字符串
  "id": "j544jdjak255kskkd1",
  // 版本号,目前固定为1.0
  "version": "1.0",
  // 消息类型,用户指令:service.control,系统指令:service.control.sys 
  "method": "service.control",
  "params": {
    // 服务标识
    "serviceName": "aaaaaa",
    // 服务参数
    "serviceParams": {
        "a": "aaa",
        "b": "bbb"
    }
  }
}

系统服务指令

在Arduino SDK中已经实现了wifi配置、OTA升级、重启设备等系统指令。

ping指令特殊,虽然method字段归类为系统指令,但实际上在SDK中属于用户指令,需要自己在回调函数中处理。

ping测试

建议设备收到ping指令后,主动上报全部属性。

json
{
  "id": "j544jdjak255kskkd1",
  "version": "1.0",
  "method": "service.control.sys",
  "params": {
    "serviceName": "miniiot_ping",
    "serviceParams": {}
  }
}

修改wifi配置

json
{
  "id": "j544jdjak255kskkd1",
  "version": "1.0",
  "method": "service.control.sys",
  "params": {
    "serviceName": "miniiot_wifi_update",
    "serviceParams": {
        // wifi名称
        "ssid": "ssid",
        // wifi密码
        "password": "password"
    }
  }
}

OTA升级

json
{
  "id": "j544jdjak255kskkd1",
  "version": "1.0",
  "method": "service.control.sys",
  "params": {
    "serviceName": "miniiot_ota_update",
    "serviceParams": {
        // 固件下载地址
        "url": "http://xxx.xxxx.com/xxx/xxx.bin",
    }
  }
}

重启设备

json
{
  "id": "j544jdjak255kskkd1",
  "version": "1.0",
  "method": "service.control.sys",
  "params": {
    "serviceName": "miniiot_reboot",
    "serviceParams": {}
  }
}

用户服务指令

示例

自定义服务指令,服务名称为test,参数为a、b

json
{
  "id": "j544jdjak255kskkd1",
  "version": "1.0",
  "method": "service.control",
  "params": {
    "serviceName": "test",
    "serviceParams": {
        "a": "aaa",
        "b": "bbb"
    }
  }
}