アプリケーション開発
データ記録~IoTアクセス制御エンジンに記録されたデータの取得方法 (cURL編)
ステップ2:記録データの取得
IoTアクセス制御エンジンに記録されたデータを取得します。
以下のコマンドで、リソース一覧を取得します。
curl -X GET https://dsymphony.com/archive/v2/me/devices/ -H 'authorization: Bearer XXXX'
XXXX:ログイン時に取得したアクセストークンを入力してください。
検索結果が表示されます。
記録を開始している機能は、"state"が"2"になっています。
{"result":0,"error":null,"deviceList":[ ・ ・ ・ {"actionId":"XXXX","summary":"","thingId":"XXXX","deviceName":"赤外線リモコン","gatewayId":"XXXX","gatewayName":"XXXX","gatewayType":"mobile","url":"/humidity:get","state":2,"isGatewayOnline":true}, ・ ・ ・ ..."state":2,"isGatewayonline":true}]}
以下のコマンドで、指定した機能の記録データを検索します。
curl -X GET "https://dsymphony.com/archive/v2/me/records/summaries?thingId=XXXX&actionId=XXXX" -H 'authorization: Bearer XXXX'
XXXX:「赤外線学習リモコン+テレビの操作」ステップ2:「赤外線学習リモコンの登録」手順①の検索結果に表示された"thingId"の値を入力してください。
XXXX:手順①の検索結果に表示された"actionId"の値を入力してください。
期間または取得件数を指定して、表示件数を絞り込むこともできます。
XXXX:ログイン時に取得したアクセストークンを入力してください。
検索結果が表示されます。
{"result":0,"error":null,"summaryList":[{"recordId":"XXXX","thingId":"XXXX","deviceName":"赤外線リモコン","actionId":"XXXX","summary":"","url":"/humidity:get","registerDate":"yyyy-mm-ddThh:mm:ss+09:00"},{"recordId":"XXXX","thingId":"XXXX","deviceName":"赤外線リモコン","actionId":"XXXX","summary":"","url":"/humidity:get","registerDate":"yyyy-mm-ddThh:mm:ss+09:00"}]}
以下のいずれかの方法でデータを取得します。
- データを個別に取得:以下のコマンドを入力します。
curl -X GET https://dsymphony.com/archive/v2/me/records/XXXX -H 'authorization: Bearer XXXX'
XXXX:手順②の検索結果に表示された、"recordId"の値を入力してください。
XXXX:ログイン時に取得したアクセストークンを入力してください。
以下の結果が表示されます。
{"result":0,"error":null,"record":{"recordId":"XXXX","data":"{\"result\":0,\"product\":\"DeviceConnectManager\",\"statusCode\":\"200\",\"version\":\"1.2.0\",\"humidity\":67.4}","registerDate":"yyyy-mm-ddThh:mm:ss+09:00"}}
- データを一括取得:以下のコマンドを入力します。
curl -X GET https://dsymphony.com/archive/v2/me/records -H 'authorization: Bearer XXXX'
XXXX:ログイン時に取得したアクセストークンを入力してください。
以下の結果が表示されます。
{"result":0,"error":null,"recordDataList":[{"recordId":"XXXX","data":"{\"result\":0,\"product\":\"DeviceConnectManager\",\"statusCode\":\"200\",\"version\":\"1.2.0\",\"humidity\":67.4}","registerDate":"yyyy-mm-ddThh:mm:ss+09:00"},{"recordId":"XXXX","data":"{\"result\":0,\"product\":\"DeviceConnectManager\",\"statusCode\":\"200\",\"version\":\"1.2.0\",\"humidity\":67.7}","registerDate":"yyyy-mm-ddThh:mm:ss+09:00"},{"recordId":"XXXX","data":"{\"result\":0,\"product\":\"DeviceConnectManager\",\"statusCode\":\"200\",\"version\":\"1.2.0\",\"humidity\":68.1}","registerDate":"yyyy-mm-ddThh:mm:ss+09:00"}]}
<取得データの表示内容>
項目 | 意味 |
---|---|
result | API実行結果 |
product | エージェントアプリの名称 |
statusCode | HTTPステータスコード 200:正常、400:不正なリクエスト、401:認証エラー、403:アクセス不可、 500:サーバー内部エラー、503:サービス利用不可エラー |
version | エージェントアプリのバージョン |
humidity(※) | 湿度 |
registerDate | データが登録された日時 |
※アクセスしたホームデバイスの機能によって、内容が変わります。
これで、記録されたデータを取得できました。