Skip to content

数据推送格式

数据推送默认开始推送,包括数据变化推送和定时推送。

系统会向主题 /openapi/data/scheduled/{appKey} 发布消息,第三方平台需要订阅这个主题。

实时数据、告警、在线状态都是向同一个主题推送,但是 pushType 不同,接收方注意区分 pushType 来区分实时数据、告警、在线状态。

dataType 是推送类型:change 是数据发生变化时的上报,scheduled 是定时上报。

5.1 实时数据推送格式

  • 订阅推送主题: /openapi/data/scheduled/{appKey}
  • Content-Type: application/json
  • pushType: realdata

数据样例:

json
{
  "pushType": "realdata",
  "dataType": "change",
  "timestamp": 1732694400000,
  "data": {
    "deviceId": 123,
    "deviceName": "设备 001",
    "businessId": "IMEI123456",
    "regionId": 1,
    "productId": 1,
    "productName": "温湿度",
    "regionName": "一级区域",
    "onlineStatus": 1,
    "metrics": [
      {
        "meteId": "1555",
        "meteName": "温度",
        "value": "25.5",
        "sValue": "25.5",
        "unit": "℃",
        "time": "2024-11-27 16:00:00"
      },
      {
        "meteId": "12125",
        "meteName": "湿度",
        "value": "60",
        "sValue": "60",
        "unit": "%",
        "time": "2024-11-27 16:00:00"
      }
    ]
  }
}

参数说明:

参数数据类型示例描述
pushTypeStringrealdata推送类型标识
dataTypeStringchange推送类型:change-变化上报,scheduled-定时上报
deviceIdLong719943688798277设备 ID
businessIdStringIMEI123456行业 ID
deviceNameString设备 001设备名称
productIdLong719943688798271产品 ID
productNameString温湿度产品名称
regionIdLong719943688795245区域 ID
regionNameString一级区域区域名称
onlineStatusInteger0在线状态,0-在线,1-离线
metricsList属性量列表
├─ meteIdString1855521量 ID
├─ meteNameString温度量名称
├─ valueString26.5实时值
├─ unitString单位
├─ timeString2025-01-01 14:00:00时间
└─ sValueString26.5翻译之后的实时值。枚举类型为翻译后的值,字符串类型与 value 等值

5.2 告警数据推送格式

  • 订阅推送主题: /openapi/data/scheduled/{appKey}
  • Content-Type: application/json
  • pushType: alarm

数据样例:

json
{
  "pushType": "alarm",
  "dataType": "change",
  "timestamp": 1732694400000,
  "data": {
    "alarmId": 456,
    "deviceId": 123,
    "deviceName": "设备 001",
    "businessId": "IMEI123456",
    "regionId": 1,
    "regionName": "一级区域",
    "meteId": "80015551",
    "meteName": "压力过低",
    "level": 1,
    "value": "155",
    "sValue": "155",
    "alarmTime": "2025-11-27 16:00:00",
    "state": "END",
    "closeTime": "2025-11-27 18:00:00"
  }
}

参数说明:

参数数据类型示例描述
alarmIdLong15454521告警 ID,告警恢复时以此 ID 为主键
deviceIdLong719943688798277设备 ID
businessIdStringIMEI123456行业 ID
deviceNameString设备 001设备名称
regionIdLong719943688795245区域 ID
regionNameString一级区域区域名称
meteIdString1545451告警量 ID
meteNameString温度过低告警量名称
levelInteger1告警等级 1 2 3 4
valueString22.5实时值
sValueString22.5翻译之后的实时值。枚举类型为翻译后的值,字符串类型与 value 等值
alarmTimeString2025-11-27 16:00:00告警时间
stateStringBEGINBEGIN 是告警中,END 是已关闭
closeTimeString2025-11-27 18:00:00恢复时间,如果是 END 才会有 closeTime

5.3 在线状态推送格式

  • 订阅推送主题: /openapi/data/scheduled/{appKey}
  • Content-Type: application/json
  • pushType: onlinestatus

数据样例:

json
{
  "pushType": "onlinestatus",
  "dataType": "change",
  "timestamp": 1732694400000,
  "data": {
    "deviceId": 123,
    "deviceName": "设备 001",
    "businessId": "IMEI123456",
    "status": 0
  }
}

参数说明:

参数数据类型示例描述
deviceIdLong719943688798277设备 ID
businessIdStringIMEI123456行业 ID
deviceNameString设备 001设备名称
statusInteger00-在线,1-离线