连接信息
- 主机: 中国站点:sensecap-openstream.seeed.cn 全球站点:sensecap-openstream.seeed.cc
- 端口:1883 用于 MQTT,或 8083 用于 MQTT 的 WebSocket
- 客户端 ID:org-<Organization ID>-<Random ID>,将 <Organization ID> 替换为从 SenseCAP Portal 获取的组织 ID,将 <Random ID> 替换为随机生成的数字和小写字母。
- 用户名:org-<Organization ID>,将 <Organization ID> 替换为从仪表板获取的组织 ID(参考快速入门)。
- 密码:在 SenseCAP Portal 的“安全 / API 访问密钥”中获取访问 API 密钥(参考快速入门)。
发布与订阅模型
SenseCAP OpenStream API 实现了“发布与订阅模型”,与 MQTT 协议类似。您可以通过 MQTT 或 MQTT 的 WebSocket 将服务器连接到 SenseCAP OpenStream API,以使用标准的发布-订阅协议进行通信。您可以通过“订阅”接收消息。“订阅”是持续监控设备遥测数据的最常见方式。
消息主题
接收设备的遥测数据
主题格式:/device_sensor_data/<OrgID>/<DeviceEUI>/<Channel>/<Reserved>/<MeasurementID>字段 | 描述 |
---|---|
OrgID | 您的“组织 ID”,可以在 SenseCAP Portal 上找到。您拥有唯一的组织 ID,所有主题都需要它。 |
DeviceEUI | 设备的唯一标识 |
Channel | 设备上用于连接传感器的物理接口 |
Reserved | 保留字段 |
MeasurementID | 请参考本文档中的“测量 ID 列表” |
注意: “+” 表示该字段没有过滤条件,匹配所有可能的配置。因此,“/+/+/+/+” 表示监听所有的 “<DeviceEUI>”、“<Channel>”、“<SensorEUI>”、“<MeasurementID>”。
主题可以指定过滤条件,以实现对指定设备、通道和测量类型的监听。例如,您可以仅监听设备 ID 为 “2F000000000000” 的设备,然后将 <DeviceEUI> 字段替换为 2F000000000000。此示例中的 “2F000000000000” 必须是您已绑定到账户的设备。并且您应始终记得将 <OrgID> 替换为您自己的“组织 ID”。
消息体
{
"value": "437",
"timestamp": "1544151922137"
}
这是设备上传的传感器测量数据,符合 JSON 格式,可以通过 JSON 解析器解析。通常,对于大多数功能需求,消息体需要与主题中的某些字段结合使用。
字段 | 描述 |
---|---|
value | 传感器的测量值 |
timestamp | 数据的采集时间戳,单位为毫秒 |
接收设备的状态数据
主题格式:/device_status_event/<OrgID>/<DeviceEUI>/<Reserved>/<StatusID>字段 | 描述 |
---|---|
OrgID | 您的“组织 ID”,可以在 SenseCAP Portal 上找到。您拥有唯一的组织 ID,所有主题都需要它。 |
DeviceEUI | 设备的唯一标识 |
Reserved | 保留字段 |
StatusID | 请参考本文件中的“设备状态 ID 列表” |
根据设备状态 ID 列表订阅所需的 StatusID,以避免订阅到意外的 ID。
消息体
{
"value": "437",
"timestamp": "1544151922137"
}
字段 | 描述 |
---|---|
value | 传感器的状态值 |
timestamp | 数据的采集时间戳,单位为毫秒 |