アナウンスAPI

概要

MODEセンサーゲートウェイに対して、Local APIクライアントが利用するセンサーのスキーマを送付します。センサーデータを送信する前に最低1回は実行する必要があります。

インターフェース

エンドポイント

http://localhost:55299/announce

メソッド

POST

コンテントタイプ

application/json

パラメータ

{

  "model": "CUSTOM",

  "id": <string>,

  "sensors": [<string>, ...]

}


Attribute 名

必須

説明

model

モデル名です。Local APIクライアントはCUSTOM固定です。CUSTOM以外は受け付けません。

id

センサーモジュール識別IDです。

sensors

センサーを示すスキーマの配列です。順番に意味はありません。


レスポンス

成功の場合はHTTPステータスコード204(Not content)が返されます。Body部はありません。

データ送付API

概要

センサーデータをMODEセンサーゲートウェイの本体プロセスに対して送付します。送付されたデータは本体プロセスによってMODEセンサークラウドに送信されます。

Local APIクライアントは配列によって、一度に複数のセンサーのデータを送付することができます。

インターフェース

エンドポイント

http://localhost:55299/sensorModules/<センサーモジュールID>/sensorData

メソッド

POST

コンテントタイプ

application/json

パラメータ

センサーデータの配列で送付します。

[{

  "sensor": <string>,

  "timestamp": <string>,

  "value": <number>

},...]


Attribute 名

必須

説明

sensor

データのセンサーのスキーマ名です。

timestamp


センサーの値を採取した時刻のRFC3339形式です。省略した場合は、ゲートウェイがデータを受信した時刻をタイムスタンプとします。

value

センサーのデータです。64bit の浮動小数点数の値。

レスポンス

成功の場合はHTTPステータスコード204(Not content)が返されます。Body部はありません。

コマンド取得API

概要

MODEセンサークラウドおよびMODEセンサーゲートウェイから送信されたセンサーに対するコマンドを、コマンド取得APIによりLocal APIクライアントが受信できます。1-10秒に1回程度の頻度でコマンド取得APIをポーリングすることで、MODEセンサークラウドから送信されるコマンドをほぼリアルタイムで受信できます。

なお、クライアントはこのコマンドに必ずしも従う必要はありません。例えば、stopSensorsの実装を省いた場合、MODEセンサークラウドからセンサーの停止を設定してもデータが送信され続けますが、MODEセンサークラウドに技術的な問題が発生することはありません。

インターフェース

エンドポイント

http://localhost:55299/sensorModules/<センサーモジュールID>/command

メソッド

GET

コンテントタイプ

application/json

パラメータ

無し

レスポンス

MODEセンサークラウドから送信されたコマンドが存在しない場合は、HTTPステータスコード204(No content)が返されます。

MODEセンサークラウドから送信されたコマンドが存在する場合はHTTPステータスコード200が返されます。あわせて、Body部に次のようなJSONが返されます。


{

  "action": <string>,

  "interval": <number>,

  "sensors": [<string>,...]

}


Attribute 名

必須

説明

action

“startSensors”, “stopSensors” のいずれかです。

stopSensorsはセンサーを止めることが期待されます。startSensorsはセンサーを稼働することが期待されます。

interval

センサー値の採取の間隔が指定されます。単位は秒です。

sensors

action対象のセンサータイプの配列。