接続情報
- Host: 中国ステーション: sensecap-openstream.seeed.cn グローバルステーション: sensecap-openstream.seeed.cc
- Port: MQTTの場合は1883、またはMQTT Over WebSocketの場合は8083
- ClientID: org-<Organization ID>-<Random ID>、<Orgnization ID>をSenseCAP Portalから取得したものに置き換え、<Random ID>をランダムに生成した数字と小文字に置き換えてください。
- Username: org-<Organization ID>、<Organization ID>をダッシュボードから取得したものに置き換えてください(クイックスタートを参照)。
- Password: SenseCAP Portalの「security /API Access Key」でAccess API keysを取得してください(クイックスタートを参照)。
パブリッシュ・アンド・サブスクライブモデル
SenseCAP OpenStream APIは、MQTTプロトコルと同様に「パブリッシュ・アンド・サブスクライブモデル」を実装しています。標準的なpub-subプロトコルで通信するために、MQTTまたはMQTT Over WebSocketを通じてサーバーをSenseCAP OpenStream APIに接続できます。メッセージを受信するために「subscribe」できます。「subscribe」は、デバイスからのテレメトリデータを継続的に監視する最も一般的な方法です。
メッセージトピック
デバイスのテレメトリデータの受信
トピック形式: /device_sensor_data/<OrgID>/<DeviceEUI>/<Channel>/<Reserved>/<MeasurementID>フィールド | 説明 |
---|---|
OrgID | あなたの「Organization ID」で、SenseCAP Portalで確認できます。固有のOrganization IDを所有しており、すべてのトピックでこれが必要になります。 |
DeviceEUI | デバイスの一意識別子 |
Channel | センサーが接続されるデバイス上の物理ソケット |
Reserved | 予約済み |
MeasurementID | このドキュメントの「測定IDリスト」を参照してください |
注意: "+"は、このフィールドにフィルタリング条件がないことを意味し、すべての可能な設定にマッチします。したがって、"/+/+/+/+"は、すべての"<DeviceEUI>"、"<Channel>"、"<SensorEUI>"、"<MeasurementID>"をリッスンすることを意味します
トピックは、指定されたデバイス、チャネル、測定タイプでのリスニングを実装するためのフィルタリング条件を指定できます。例えば、デバイスIDが「2F000000000000」のデバイスのみをリッスンしたい場合、<DeviceEUI>フィールドを2F000000000000に置き換えることができます。この例の「2F000000000000」は、すでにあなたのアカウントにバインドされているデバイスである必要があります。そして、<OrgID>を常にあなた自身の「Organization ID」に置き換えることを忘れないでください。
メッセージボディ
{
"value": "437",
"timestamp": "1544151922137"
}
これは、デバイスによってアップロードされたセンサー測定データで、JSON形式に準拠しており、JSONパーサーで解析できます。一般的に、ほとんどの機能要件では、ボディはトピック内のいくつかのフィールドと組み合わせて使用する必要があります。
フィールド | 説明 |
---|---|
value | センサーの測定値 |
timestamp | データの収集タイムスタンプ、単位はミリ秒 |
デバイスのステータスデータの受信
トピック形式: /device_status_event/<OrgID>/<DeviceEUI>/<Reserved>/<StatusID>フィールド | 説明 |
---|---|
OrgID | あなたの「Organization ID」で、SenseCAP Portalで確認できます。固有のOrganization IDを所有しており、すべてのトピックでこれが必要になります。 |
DeviceEUI | デバイスの一意識別子 |
Reserved | 予約済み |
StatusID | このドキュメントの「デバイスステータスIDリスト」を参照してください |
予期しないIDへのサブスクライブを避けるために、デバイス状態IDリストに従って必要なStatusIDをサブスクライブしてください
メッセージボディ
{
"value": "437",
"timestamp": "1544151922137"
}
フィールド | 説明 |
---|---|
value | センサーのステータス値 |
timestamp | データの収集タイムスタンプ、単位はミリ秒 |