IoT Platform DRC(オンデマンドデータ収集) インターフェースリファレンス (14.0_0版) |
<改版履歴>
版数 |
説明 |
日付 |
9.0_0版 |
初版 |
2019/8/22 |
11.0_0版 |
版数を修正 |
2021/1/16 |
14.0_0版 |
機能エンハンス 変更なし |
2022/4/1 |
はじめに
このたびは「IoT Platformサービス(以下、本サービス)」をご検討いただき、誠にありがとうございます。
この「IoT Platform DRC(オンデマンドデータ収集) インターフェースリファレンス(以下、本書)」は、本サービスをご契約いただいたお客様、またはご採用いただくお客様のための資料です。下記につきましてご了承くださいますよう、よろしくお願いいたします。
1. ご検討中のお客様は、本書を本サービスご採用可否のご判断のためにのみ、ご参照願います。
2. 本書および本書の内容について、第三者へご開示、ご提供にはならないようにお願いいたします。
3. 発行元の許可なく、本書の記載内容を複写、転写することを禁止します。
本書には本サービスをご採用いただくための重要な情報を記載しています。
ご契約いただいたお客様は、ご利用前に本書をよくお読みの上、本サービスをご利用ください。なお、本書は大切に保管してください。
ご採用いただけないお客様は、お客様の責任で本書をすみやかに廃棄願います。
本書の作成にあたって、細心の注意を払い可能な限り分かりやすい記載に努めていますが、本書の記述に誤りや欠落があっても弊社はいかなる責任も負わないものとします。本書及びその記述内容は予定なく変更される場合があります。
本書の内容の一部または全部を無断で複製・転載・改編しないでください。
免責事項について
・本サービスのマニュアルに記載されていない操作を行なったことで思わぬ誤動作や、予期せぬ課金が発生した場合であっても一切の責任を追いかねます。
・本サービスの利用、または利用できなかったことにより万が一損害(業務の中断・データの破損/損失・事故などによる損害や第三者からの賠償請求の可能性を含む)が生じたとしても、責任を一切負いかねます。
<用語>
用語 |
説明 |
備考 |
IoT |
Internet of Thingsの略 「モノのインターネット」と言われるが、「モノがインターネットプロトコル(インターネット言語)でネットワークされている状態」のこと。 |
|
REST |
REpresentational State Transfer の略 複数のソフトウェア連携に適した設計原則をWebに適用したソフトウェアの設計様式を示す。 ※特定のURLにパラメータを指定してHTTPでアクセスするとXMLで記述されたメッセージが送られてくるような、呼び出しインターフェース(「RESTful API」と呼ばれる)。 本サービスではXMLではなくJSON形式で返信する。 |
|
DRC(オンデマンドデータ収集) |
エッジに蓄積された実データを効率よく利活用できる機能 |
|
リソース |
リソースデータの収集単位 |
|
リソースデータ |
1つのデータ |
|
アクセスコード |
リソースを対象に設定する認可情報 |
|
- 目次 -
本書はIoT Platform(以下:本サービス)に含まれるDRC(オンデマンドデータ収集)機能(以下:本機能)のご利用に際し、APIを利用しアプリケーションを開発する方向けの「インターフェースリファレンス」です。
サービスのご利用に際し、お客様を支援するための以下のマニュアルをご用意しております。
マニュアル名 |
説明 |
IoT Platform サービス詳細説明書 |
本サービスのサービス仕様を説明しています。 |
IoT Platform ユーザーガイド |
本サービスを利用したシステムを設計するにあたって、具体的な例を交えて設計指針の説明を行うマニュアルです。 |
IoT Platform APIリファレンス |
本サービスで提供するサービスを利用したアプリケーションを設計するためのAPIのリファレンスマニュアルです。 |
IoT Platform サービスポータル操作マニュアル |
Web インターフェース機能(以下:サービスポータル)に関するマニュアルです。 |
IoT Platform DRC(オンデマンドデータ収集)ユーザーガイド |
本機能を利用したシステムを設計するにあたって、具体的な例を交えて設計指針の説明を行うマニュアルです。 |
IoT Platform DRC(オンデマンドデータ収集)インターフェースリファレンス |
本機能で提供するサービスを利用したアプリケーションを設計するためのインターフェースのリファレンスマニュアルです。(本書) |
Memo リソース、アクセスコードなど本サービス全般の定義・考え方については、「IoT Platform サービスポータル操作マニュアル」第3章をご参照ください。 また、DRC(オンデマンドデータ収集)については「IoT Platform DRC(オンデマンドデータ収集)ユーザーガイド」を参照ください。 |
本機能は、本書にて定めるリソースに対し、本書にて定めるデータフォーマットとなるリソースデータを格納および取得することにより動作します。本章ではその共通事項について説明します。
本機能を利用するにあたっての前提事項を以下に示します。
l リソースデータの格納および取得には、本サービスのAPIを利用します。APIの詳細については「IoT Platform APIリファレンス」を参照してください。
l 本書にて記載するデータフォーマットにおいて、特に記載のない諸元値は本サービスのAPI仕様に準じます。諸元値の詳細については「IoT Platform APIリファレンス」を参照してください。
l 本機能を利用するにあたり、本サービスに対する以下の操作をあらかじめ行う必要があります。操作方法の詳細については「IoT Platformサービスポータル操作マニュアル」および「IoT Platform DRC(オンデマンドデータ収集) ユーザーガイド」を参照してください。
Ø リソース、アクセスコードの作成
Ø DRC(オンデマンドデータ収集)機能の有効化
本機能にて利用されるリソースパスの一覧を以下に示します。
No |
リソースパス |
用途 |
生成者 (生成時期) |
説明 |
1 |
<drc>/meta/gws |
エッジ機器(GW)情報の登録 エッジ機器(GW)登録情報の取得 |
システム (有効化時) |
4.1節 3.1節 |
2 |
<drc>/meta/publish |
メタデータの登録 |
システム (有効化時) |
4.2節 |
3 |
<drc>/meta/keys/<key> <drc>/meta/keys/<key>/<partition_id> |
分解されたメタデータの検索・取得 |
ご利用者様 (利用開始時) |
3.2節 |
4 |
<drc>/meta/confirm/<gw_id> |
メタデータ登録結果の取得 |
システム (GW登録時) |
4.3節 |
5 |
<drc>/request/search |
検索指示・検索キャンセル指示の登録 |
システム (有効化時) |
3.3節 |
6 |
<drc>/request/clients/<gw_id> |
検索指示・検索キャンセル指示の取得 |
システム (GW登録時) |
4.4節 |
7 |
<drc>/response/sent_flags/<gw_id> |
検索処理結果の登録 |
システム (GW登録時) |
4.5節 |
8 |
<drc>/response/search |
指示完了通知の登録 |
システム (有効化時) |
3.4節 |
9 |
<drc>/response/progress/<gw_id> |
指示進捗状況の登録 指示進捗状況の取得 |
システム |
4.6節3.5節 |
10 |
<drc>/response/preprocessed |
検索結果(処理済データ)の登録 検索結果(処理済データ)の取得 |
システム (有効化時) |
4.7節3.6節 |
(*) <drc>:本機能で利用するPrefixリソース(機能有効化時に指定)
本機能を利用するにあたっての注意事項を以下に示します。
本サービスのAPI仕様では、データ登録を行う際に登録日時を指定することができます。しかし、本機能を利用する際のデータ登録においては、登録日時の指定を行わないでください。登録日時の指定が行われた場合、正しく動作できない場合があります。
REST APIを利用したリソースからのデータ取得において、取得対象となるデータが1000件を超える場合、またはデータ総量が16MBを超える場合には、本サービスの仕様により一斉取得はできず、分割取得を行う必要があります。分割取得方法の詳細は、「IoT Platform ユーザーガイド」「IoT Platform APIリファレンス」を参照してください。
本書のリクエストの記載は、特に記載のない場合、本サービスのREST API仕様が前提となります。REST API仕様の詳細は「IoT Platform APIリファレンス」を参照してください。
本サービスにおいてREST APIにて格納データを取得した場合”_data”、”_date”、”_resource_path”の情報が通知されますが、本書では”_data”の内容のみ記載しています。
取得データ例:
[ {
{
"keyY": "valueY" }, "_date": "yyyymmddThhmmss.xxxZ", "_resource_path": "aaa/bbb/ccc" } ] |
本章では、活用システムから発行するインターフェースについて示します。
用途
4.1節で登録したエッジ機器(GW)情報を取得します。
Request
パラメータ |
値 |
Method |
GET |
URI |
<Base URL>/v1/<Tenant ID>/<drc>/meta/gws/_past?<Query> |
Body |
なし |
Query例:
用途 |
Query |
エッジ機器(GW)指定 |
$filter=gw_id eq ‘<gw_id>’ |
Response
Body
Parameters |
形式 |
M/O(*1) |
説明 |
最大長 |
|
gw_id |
string |
M |
4.1節にてgw_idに設定したエッジ機器(GW)ID 半角英数字および「-」「_」が利用できます。ただし、先頭に「-」「_」は使用できません。 |
文字列長 |
36 |
(*1) M:必須、O:オプション
取得データ例:
{ "gw_id": "b35947f0-831f-45cb-92e1-2170036e98b6" } |
用途
4.2節で登録し、分解格納されたメタデータの検索および取得を行います。
Request
パラメータ |
値 |
|
Method |
GET |
|
URI |
パーティション分割なし |
<Base URL>/v1/<Tenant ID>/<drc>/meta/keys/<key>/_past?<Query> |
パーティション指定 |
<Base URL>/v1/<Tenant ID>/<drc>/meta/keys/<key>/<partition ID>/_pas t?<QUERY> |
|
全パーティション指定 |
<Base URL>/v1/<Tenant ID>/<drc>/meta/keys/<key>/$all/_past?<Query> |
|
Body |
なし |
Query例:
用途 |
Query |
value指定 |
$filter=value eq <value> |
valueおよび時刻範囲指定 |
$filter=value eq <value> and _date gt <起点時刻> and _date lt <終点時刻> |
※_dateには、4.2節のメタデータ登録にて指定した「データ生成日時(meta._date)」が設定されています。
Response
Body
Parameters |
形式 |
M/O(*1) |
説明 |
最大長 |
|
idx_id |
string |
M |
4.2節にてidx_idに設定したメタデータID |
―(*2) |
|
gw_id |
string |
M |
4.2節にてgw_idに設定したエッジ機器(GW)ID 半角英数字および「-」「_」が利用できます。ただし、先頭に「-」「_」は使用できません。 |
文字列長 |
36 |
value |
任意 |
M |
4.2節にて<key>に設定した<value>の値 |
―(*2) |
(*1) M:必須、O:オプション
(*2) データ全体としてAPI仕様の最大データ長まで許容します。
データ例:
{ "idx_id": "f88787f0-5475-478d-b46d-3c7b78223322", "gw_id": "b35947f0-831f-45cb-92e1-2170036e98b6", "value": 139.9 } |
用途
エッジ機器(GW)に対する前処理およびデータ送信の要求指示、またはその要求のキャンセル指示を行います。
検索指示において、本機能は、本サービスに格納されたメタデータから<keys>:<filters>の検索条件すべてに合致するデータを検索し、それを格納したエッジ機器(GW)に対して検索指示を発行します。
検索キャンセル指示において、本機能は、req_idによって特定される検索指示にて指示を発行したエッジ機器(GW)に対し、検索キャンセル指示を発行します。
本機能により発行された検索指示、および検索キャンセル指示は、エッジ機器(GW)が4.4節のインターフェースを用いて取得します。
Request
パラメータ |
値 |
Method |
PUT |
URI |
<Base URL>/v1/<Tenant ID>/<drc>/request/search |
Body |
データ検索要求指示 検索要求のキャンセル指示 |
Body:検索指示
Parameters |
形式 |
M/O(*1) |
説明 |
最大長/値の範囲 |
||
req_id |
string |
M |
リクエストID |
―(*2) |
||
type |
string |
M |
“search”を指定します |
―(*2) |
||
preproc |
string |
M |
前処理メソッド名 |
―(*2) |
||
conditions |
object |
O |
前処理条件 |
―(*2) |
||
|
<key>:<value> |
任意 |
O |
エッジ機器(GW)で前処理を行う際の条件 |
―(*2) |
|
keys |
string (配列) |
M |
メタデータ検索条件とするkey名 |
要素数 |
1 - 10 |
|
文字列長 |
128 |
|||||
filters |
string (配列) |
M |
keysに設定したそれぞれのkeyに対応するfilter条件。条件に利用できる演算子は「IoT Platform APIリファレンス」の「リソース_JSONのデータ検索」節を参照ください。 |
要素数 |
1 - 10 |
|
文字列長 |
128 |
|||||
graceful |
object |
O |
― |
要素数 |
0 - 3 |
|
|
searchreq_all_timeout |
integer |
O |
検索要求のタイムアウト時間(秒) ・0を指定した場合はタイムアウトしません。 ・指定されていない場合、0として扱います。 |
0 - 21474835 |
|
|
number_limit |
integer |
O |
検索対象データ数の上限値 ・指定されていない場合、10000として扱います。 |
1 - 2147483647 |
|
|
gw_limit |
integer |
O |
検索対象エッジ機器(GW)数の上限値 ・指定されていない場合、10000として扱います。 |
1 - 2147483647 |
|
verbose |
boolean |
O |
詳細ログの出力有無 ・指定されていない場合、falseとして扱います。 |
― |
(*1) M:必須、O:オプション
(*2) データ全体としてAPI仕様の最大データ長まで許容します。
データ例:
{ "req_id": "d92ef5bb-f109-4568-8b77-8350e7fa39d8", "type": "search", "preproc": "PeopleCounting", "conditions": { "datetime": "20190305T123456.000Z" }, "keys": [ "content", "device_id" ], "filters": [ "value eq 'motion' and _date ge 20190305T123456.000Z", "value eq 'dev-001'" ], "graceful": { "searchreq_all_timeout": 3600, "number_limit": 1000, "gw_limit": 1000 }, "varbose": true } |
Body:検索キャンセル指示
Parameters |
形式 |
M/O(*1) |
説明 |
最大長 |
req_id |
string |
M |
検索要求指示で指定したリクエストID |
―(*2) |
type |
string |
M |
“cancel”を指定します |
―(*2) |
(*1) M:必須、O:オプション
(*2) データ全体としてAPI仕様の最大データ長まで許容します。
データ例:
{ "req_id": "d92ef5bb-f109-4568-8b77-8350e7fa39d8", "type": "cancel" } |
Response
Body
なし。
用途
3.3節で発行した検索・キャンセル要求の結果を取得します。指示完了通知は、本機能が以下の契機で格納します。
検索要求の受付(検索要求でverboseにtrueを設定した場合)
エッジ機器(GW)への検索指示の発行完了(検索要求でverboseにtrueを設定した場合)
検索指示を発行した全エッジ機器(GW)からの送信完了を受付、検索要求タイムアウト満了、キャンセル要求の受付のいずれか
Request
パラメータ |
値 |
Method |
GET |
URI |
<Base URL>/v1/<Tenant ID>/<drc>/response/search/_past?<Query> |
Body |
なし |
Query例:
用途 |
Query |
リクエストID指定 |
$filter=req_id eq ‘<req_id>’ |
Response
Body
Parameters |
形式 |
M/O(*1) |
説明 |
最大長/値の範囲 |
|||||
req_id |
string |
M |
3.3節にて指定したリクエストID |
―(*2) |
|||||
preproc |
string |
M |
3.3節にて指定した前処理メソッド名 |
―(*2) |
|||||
conditions |
object |
O |
3.3節にて指定した前処理条件 |
―(*2) |
|||||
|
<key>:<value> |
任意 |
O |
3.3節にて指定したエッジ機器 (GW)で前処理を行う際の条件 |
―(*2) |
||||
keys |
string (配列) |
M |
3.3節にて指定したメタデータ検索条件とするkey名 |
要素数 |
1 - 10 |
||||
文字列長 |
128 |
||||||||
filters |
string (配列) |
M |
3.3節にて指定したkeysに設定したそれぞれのkeyに対応するfilter条件。 |
要素数 |
1 - 10 |
||||
文字列長 |
128 |
||||||||
graceful |
object |
O |
― |
要素数 |
0 - 3 |
||||
|
searchreq_all_timeout |
integer |
O |
3.3節にて指定した検索要求のタイムアウト時間(秒) |
0 - 2147483647 |
||||
|
number_limit |
integer |
O |
3.3節にて指定した検索対象データ数の上限値 |
1 - 2147483647 |
||||
|
gw_limit |
integer |
O |
3.3節にて指定した検索対象エッジ機器 (GW)数の上限値 |
1 - 2147483647 |
||||
verbose |
boolean |
O |
3.3節にて指定した詳細ログの出力有無 |
― |
|||||
detail |
object |
M |
― |
― |
|||||
|
message |
string |
O |
エラーメッセージ(1) |
―(*2) |
||||
|
searchreq_number_limit |
integer |
O |
検索要求上限数 |
1 – 100 |
||||
|
inprogress |
boolean |
M |
検索処理の実行状況 ・TRUE : 処理中 ・FALSE : 完了 |
― |
||||
|
gws_status_summary |
object |
O |
エッジ機器(GW)の集計結果 |
― |
||||
|
|
processing |
integer |
O |
処理中エッジ機器(GW)数 |
0 – 2147483647 |
|||
|
|
succeeded |
integer |
O |
処理成功エッジ機器(GW)数 |
0 – 2147483647 |
|||
|
|
failed |
integer |
O |
処理失敗エッジ機器(GW)数 |
0 – 2147483647 |
|||
|
|
canceled |
integer |
O |
処理キャンセル済エッジ機器(GW)数 |
0 – 2147483647 |
|||
|
data_status_summary |
object |
O |
データの集計結果 |
― |
||||
|
|
processing |
integer |
O |
処理中データ数 |
0 – 2147483647 |
|||
|
|
succeeded |
integer |
O |
処理成功データ数 |
0 – 2147483647 |
|||
|
|
failed |
integer |
O |
処理失敗データ数 |
0 – 2147483647 |
|||
|
|
canceled |
integer |
O |
処理キャンセル済データ数 |
0 – 2147483647 |
|||
|
gws_status |
object |
O |
エッジ機器(GW)ごとの処理結果 |
― |
||||
|
|
<gw_id> |
object |
O |
エッジ機器(GW)ID 半角英数字および「-」「_」が利用できます。ただし、先頭に「-」「_」は使用できません。 |
文字列長 |
36 |
||
|
|
|
status |
string |
O |
前処理結果。以下の文字列のいずれかが指定されます。 ・succeeded ・failed ・timeout ・canceled |
―(*2) |
||
|
|
|
error_message |
string |
O |
エラーメッセージ(2) |
―(*2) |
||
(*1) M:必須、O:オプション
(*2) データ全体としてAPI仕様の最大データ長まで許容します。
取得データ例:
{ "req_id": "d92ef5bb-f109-4568-8b77-8350e7fa39d8", "preproc": "PeopleCounting", "conditions": { "datetime": "20190305T123456.000Z" }, "keys": [ "content", "device_id" ], "filters": [ "value eq 'motion' and _date ge 20190305T123456.000Z", "value eq 'dev-001'" ], "graceful": { "searchreq_all_timeout": 3600, "number_limit": 1000, "gw_limit": 1000 }, "varbose": true, "detail": { "inprogress": false, "gws_status_summary": { "processing": 0, "succeeded": 1, "failed": 1, "canceled": 2 }, "data_status_summary": { "processing": 0, "succeeded": 5, "failed": 5, "canceled": 2 }, "gws_status": { "31f75c2d-5e29-441b-a19f-579119bd92fe": { "status": "failed", "error_message": "failed to execute" }, "384fdc12-3e49-1123-ab43-39db49e917a3": { "status": "succeeded" } <途中略> } } } |
メッセージ一覧(エラーメッセージ(1))
No |
エラーメッセージ文字列 |
対処方針 |
出力単位 |
1 |
Request Parameter error. (Error=[<異常パラメータ詳細>]) |
リクエストパラメータに異常があります。リクエストパラメータを見直してください。 |
検索要求 |
2 |
req_id is already used. (requestId=<リクエストID>) |
実施中の検索要求とリクエストIDが重複しています。以下のいずれかを実施してください。 ・先に実行した検索要求の完了を待ち、再度要求する。 ・先に実行した検索要求に対しキャンセル要求を発行し、再度要求を発行する。 ・リクエストIDを変更し、再度要求を発行する。 |
検索要求 |
3 |
Search Request limit has been exceeded. (requestID=<リクエストID>) |
検索要求数上限を超えています。以下のいずれかを実施してください。 ・先に実行した検索要求の完了を待ち、再度要求する。 ・先に実行した検索要求に対しキャンセル要求を発行し、再度要求を発行する。 |
検索要求 |
4 |
Request Received. |
検索要求を受け付けました。 (verboseにtrueを指定したときのみ出力されます) |
検索要求 |
5 |
Invalid filter condition. (Error=Failed to parse filter, filter=<filter条件>) |
filter条件の書式に誤りがあります。 filter条件の設定内容を見直してください。 |
検索要求 |
6 |
As a result of metadata search, there is no target data. (Url=<検索したURL>) |
指定されたkeys,filtersで検索した結果、適合したデータが0件でした。検索条件を確認してください。 |
検索要求 |
7 |
The request ID is not in process. |
キャンセル要求されたリクエストIDは処理中ではありません。リクエストIDを確認してください。 |
キャンセル要求 |
8 |
Search buffer limit exceeded. |
検索バッファの上限を超えました。 検索結果が少なくなるよう条件を変更してください。 |
検索要求 |
エラーメッセージ一覧(エラーメッセージ(2))
No |
エラーメッセージ文字列 |
対処方針 |
出力単位 |
1 |
failed to execute |
検索・キャンセル指示の書き込みに失敗しました。少し待ってから再実行してください。 |
エッジ機器(GW) |
2 |
GW number limit exceeded |
検索対象ゲートウェイ数の上限値を超えています。上限値を見直してください。 |
エッジ機器(GW) |
3 |
data number limit exceeded |
検索対象データ数の上限値を超えています。上限値を見直してください。 |
エッジ機器(GW) |
4 |
failed to preprocess in GW |
エッジ機器(GW)での処理が失敗しています。エッジ機器(GW)の処理を確認してください。 |
エッジ機器(GW) |
5 |
search request timeout |
検索要求がタイムアウトしました。検索要求のタイムアウト時間を見直してください。 |
エッジ機器(GW) |
用途
4.6節で登録した進捗情報を取得します。
Request
パラメータ |
値 |
|
Method |
GET |
|
URI |
全エッジ機器(GW)の進捗確認 |
<Base URL>/v1/<Tenant ID>/<drc>/response/progress/$all/_past?<Query> |
特定エッジ機器(GW)の進捗確認 |
<Base URL>/v1/<Tenant ID>/<drc>/response/progress/<gw_id>/_past?<QUERY> |
|
Body |
なし |
Query例:
用途 |
Query |
リクエストID指定 |
$filter=req_id eq ‘<req_id>’ |
Response
Body
Parameters |
形式 |
M/O(*1) |
説明 |
最大長/値の範囲 |
|
req_id |
string |
M |
4.6節にて設定したリクエストID |
―(*2) |
|
%complete |
integer |
O |
4.6節にて設定した前処理の進捗状況 |
0 – 100 |
|
gw_id |
string |
M |
4.6節にて設定したエッジ機器(GW)ID。半角英数字および「-」「_」が利用できます。ただし、先頭に「-」「_」は使用できません。 |
文字列長 |
36 |
date |
string |
O |
4.6節にて設定した進捗通知時刻 |
―(*2) |
|
num_tasks |
integer |
O |
4.6節にて設定した前処理対象のデータ数 |
1-1000 |
|
preproc |
string |
O |
4.6節にて設定した前処理メソッド名 |
―(*2) |
|
<key>:<value> |
任意 |
O |
4.6節にて設定した任意の<key>:<value> |
―(*2) |
(*1) M:必須、O:オプション
(*2) データ全体としてAPI仕様の最大データ長まで許容します。
取得データ例:
{ "req_id": "d92ef5bb-f109-4568-8b77-8350e7fa39d8", "%complete": 50, "gw_id": "b35947f0-831f-45cb-92e1-2170036e98b6", "date": "20190305T123456.000Z", "num_tasks": 10, "preproc": "PeopleCounting" } |
用途
4.7節で登録した処理済データを取得します。
Request
パラメータ |
値 |
Method |
GET |
URI |
<Base URL>/v1/<Tenant ID>/<drc>/response/preprocessed/_past?<Query> |
Body |
なし |
Query例:
用途 |
Query |
リクエストID指定 |
$filter=req_id eq ‘<req_id>’ |
Response
Body
Parameters |
形式 |
M/O(*1) |
説明 |
最大長/値の範囲 |
|
req_id |
string |
M |
4.6節にて設定したリクエストID |
―(*2) |
|
gw_id |
string |
M |
4.6節にて設定したエッジ機器(GW)ID。半角英数字および「-」「_」が利用できます。ただし、先頭に「-」「_」は使用できません。 |
文字列長 |
36 |
<key>:<value> |
任意 |
O |
4.6節にて設定した任意の<key>:<value> |
―(*2) |
(*1) M:必須、O:オプション
(*2) データ全体としてAPI仕様の最大データ長まで許容します。
取得データ例:
{ "req_id": "d92ef5bb-f109-4568-8b77-8350e7fa39d8", "gw_id": "b35947f0-831f-45cb-92e1-2170036e98b6", "count": 100 } |
本章では、エッジ機器(GW)から発行するインターフェースについて示します。
用途
新しいエッジ機器(GW)を登録します。以後のエッジ機器(GW)が利用する以下のリソースが作成されます。
No |
リソースパス |
1 |
<drc>/meta/confirm/<gw_id> |
2 |
<drc>/request/clients/<gw_id> |
3 |
<drc>/response/sent_flags/<gw_id> |
4 |
<drc>/response/progress/<gw_id> |
(*) <drc>:本機能で利用するPrefixリソース(機能有効化時に指定)
Request
パラメータ |
値 |
Method |
PUT |
URI |
<Base URL>/v1/<Tenant ID>/<drc>/meta/gws |
Body |
エッジ機器(GW)ID情報 |
Body
Parameters |
形式 |
M/O(*1) |
説明 |
最大長 |
|
gw_id |
string |
M |
エッジ機器(GW)ID 全エッジ機器(GW)でユニークとなる文字列を指定してください。 半角英数字および「-」「_」が利用できます。ただし、先頭に「-」「_」は使用できません。 |
文字列長 |
36 |
(*1) M:必須、O:オプション
データ例:
{ "gw_id": "b35947f0-831f-45cb-92e1-2170036e98b6" } |
Response
Body
なし
用途
エッジ機器(GW)で生成したメタデータを登録します。
本機能は、登録されたメタデータを<key>ごとに分解し、3.2節で取得できる形式に変換して格納します。
Request
パラメータ |
値 |
Method |
PUT |
URI |
<Base URL>/v1/<Tenant ID>/<drc>/meta/publish |
Body |
エッジ機器(GW)で生成したメタデータ |
Body
Parameters |
形式 |
M/O(*1) |
説明 |
最大長/値の範囲 |
||
idx_id |
string |
M |
メタデータID 全てのメタデータでユニークとなる文字列を設定してください。 |
―(*2) |
||
gw_id |
string |
M |
4.1節にてgw_idに設定したエッジ機器(GW)ID 半角英数字および「-」「_」が利用できます。ただし、先頭に「-」「_」は使用できません。 |
文字列長 |
36 |
|
meta |
object |
M |
メタデータ |
オブジェクト数 |
2 - 11 |
|
|
_date |
string |
M |
データ生成日時(*3) ISO8601(基本表記としてのミリ秒表現を使用)に従います(20141225T103612.001Z など)。精度はミリ秒(ミリ秒を省略した場合、0ミリ秒とみなします)です。 |
文字列長 |
16 - 24 |
|
<key>:<value> |
任意 |
O |
<key>に対するメタデータの実体 ひとつ以上の設定が必要です。複数個を設定できます。<key>には半角英数字および「-」「_」が利用できます。ただし、先頭に「-」「_」は使用できません。 |
―(*4) |
|
partition_id |
string |
O |
メタデータの登録先分割の単位(*5) 半角英数字および「-」「_」が利用できます。ただし、先頭に「-」「_」は使用できません。 |
文字列長 |
113(*6) |
(*1) M:必須、O:オプション
(*2) データ全体としてAPI仕様の最大データ長まで許容します。
(*3) 本機能により<key>ごとに分解して格納される際の登録時刻(_date)として利用されます。
(*4) keyの文字列長は、<drc>/meta/keys/<key>が128文字以内となるようにしてください。
(*5) 本機能により<key>ごとに分解して格納される先のリソースパスに<partition_id>を付与します。
(*6) partition_idの文字列長は、本要求に含まれる最大長の<key>に対して、<drc>/meta/keys/<keys>/<partition_id>が128文字以内となるようにしてください。
データ例:
{ "idx_id": "f88787f0-5475-478d-b46d-3c7b78223322", "gw_id": "b35947f0-831f-45cb-92e1-2170036e98b6", "meta": { "_date": "20190305T123456.000Z", "geo_lng": 139.9, "geo_lat": 35.6 }, "partition_id": "jp-east" } |
Response
Body
なし。
用途
4.2節で登録したメタデータが格納できたかを確認します。登録確認データは、登録されたメタデータを本機能が処理した後に登録されます。
Request
パラメータ |
値 |
Method |
GET |
URI |
<Base URL>/v1/<Tenant ID>/<drc>/meta/confirm/<gw_id>/_past?<Query> |
Body |
なし |
Query例:
用途 |
Query |
メタデータID指定 |
$filter=idx_id eq ‘<idx_id>’ |
Response
Body
Parameters |
形式 |
M/O(*1) |
説明 |
最大長 |
||
idx_id |
string |
M |
4.2節にてidx_idに設定したメタデータID |
―(*2) |
||
status |
object |
M |
格納状況 |
オブジェクト数 |
2 - 31 |
|
|
<key>:<value> |
string |
M |
<key>に対する格納成否 “succeeded”または“failed”が指定されます。 |
― |
|
|
_date |
string |
M |
4.2節にて_dateに指定したデータ生成日時 |
文字列長 |
16 - 24 |
(*1) M:必須、O:オプション
(*2) データ全体としてAPI仕様の最大データ長まで許容します。
取得データ例:
{ "idx_id": "f88787f0-5475-478d-b46d-3c7b78223322", "status": { "geo_lng": "succeeded", "geo_lat": "succeeded", "_date": "20190305T123456.000Z" } } |
用途
3.3節で要求し、本機能が各エッジ機器(GW)に対して発行した検索指示・検索キャンセル指示を取得します。
Request
パラメータ |
値 |
Method |
GET |
URI |
<Base URL>/v1/<Tenant ID>/<drc>/request/clients/<gw_id>/_past?<Query> |
Body |
なし |
Query例:
用途 |
Query |
前回取得した指示データ以降の時刻指定 |
$filter=_date ge <前回取得した指示の_dateの値> |
(*) 前回取得した指示データも再度取得されますので、idx_idを保持しておくなどして2度目に取得したデータを無視する考慮が必要です。比較演算子に「gt」を利用すれば前回取得した指示データを取得しなくなりますが、複数の指示データ発生と本処理が短時間に競合した場合、すべての時刻が同一となり取得取りこぼしが発生する可能性があります。
Response
Body:検索指示
Parameters |
形式 |
M/O(*1) |
説明 |
最大長 |
||
req_id |
string |
M |
3.3節にてreq_idに設定したリクエストID |
―(*2) |
||
type |
string |
M |
“search” 固定 |
― |
||
preproc |
string |
M |
3.3節にてpreprocに指定した前処理メソッド名 |
―(*2) |
||
conditions |
object |
O |
前処理条件 |
―(*2) |
||
|
<key>:<value> |
任意 |
O |
3.3節にてconditionsに指定したエッジ機器(GW)で前処理を行う際の条件 |
―(*2) |
|
idx_ids |
string 配列 |
M |
メタデータ検索にて抽出された、4.2節にて設定されたメタデータID |
要素数 |
1 - 1000 |
|
(*1) M:必須、O:オプション
(*2) データ全体としてAPI仕様の最大データ長まで許容します。
取得データ例:
{ "req_id": "d92ef5bb-f109-4568-8b77-8350e7fa39d8", "type": "search", "preproc": "PeopleCounting", "conditions": { "datetime": "20190305T123456.000Z" }, "idx_ids": [ "f88787f0-5475-478d-b46d-3c7b78223322", "937ff8b2-6723-4741-8ca0-6e100522ec6d" ] } |
Body:キャンセル指示
Parameters |
形式 |
M/O(*1) |
説明 |
最大長 |
req_id |
string |
M |
3.3節にてreq_idに設定したリクエストID |
―(*2) |
type |
string |
M |
“cancel” 固定 |
― |
(*1) M:必須、O:オプション
(*2) データ全体としてAPI仕様の最大データ長まで許容します。
取得データ例:
{ "req_id": "d92ef5bb-f109-4568-8b77-8350e7fa39d8", "type": "cancel" } |
用途
4.4節にて受信した検索指示に対し、前処理およびデータ送信が完了したことを本機能に通知します。
本機能は、検索指示を発行したエッジ機器(GW)からの送信完了登録を集約し、活用システムに対する指示完了通知を発行します。この指示完了通知は、活用システムが3.4節のインターフェースを用いて取得します。
Request
パラメータ |
値 |
Method |
PUT |
URI |
<Base URL>/v1/<Tenant ID>/<drc>/response/sent_flags/<gw_id> |
Body |
データ送信完了通知 |
Body
Parameters |
形式 |
M/O(*1) |
説明 |
最大長/値の範囲 |
|
req_id |
string |
M |
4.4節にてreq_idに取得したリクエストID |
―(*2) |
|
gw_id |
string |
M |
4.1節にてgw_idに設定したエッジ機器(GW)ID 半角英数字および「-」「_」が利用できます。ただし、先頭に「-」「_」は使用できません。 |
文字列長 |
36 |
preproc |
string |
M |
4.4節にてpreprocに取得した前処理メソッド名 |
―(*2) |
|
status |
string |
M |
“succeeded”または“failed”を指定します。 |
― |
(*1) M:必須、O:オプション
(*2) データ全体としてAPI仕様の最大データ長まで許容します。
データ例:
{ "req_id": "d92ef5bb-f109-4568-8b77-8350e7fa39d8", "gw_id": "b35947f0-831f-45cb-92e1-2170036e98b6", "preproc": "PeopleCounting", "status": "succeeded" } |
Response
Body
なし。
用途
4.4節にて受信した検索指示の処理進捗情報を登録します。
Request
パラメータ |
値 |
Method |
PUT |
URI |
<Base URL>/v1/<Tenant ID>/<drc>/response/progress/<gw_id> |
Body |
処理進捗情報 |
Body
Parameters |
形式 |
M/O(*1) |
説明 |
最大長/値の範囲 |
|
req_id |
string |
M |
4.4節にてreq_idに取得したリクエストID |
―(*2) |
|
%complete |
integer |
O |
前処理の進捗状況 |
0 – 100 |
|
gw_id |
string |
M |
4.1節にて設定したエッジ機器(GW)ID。半角英数字および「-」「_」が利用できます。ただし、先頭に「-」「_」は使用できません。 |
文字列長 |
36 |
date |
string |
O |
進捗通知時刻 |
―(*2) |
|
num_tasks |
integer |
O |
前処理対象のデータ数 |
1-1000 |
|
preproc |
string |
O |
前処理メソッド名 |
―(*2) |
|
<key>:<value> |
任意 |
O |
任意の<key>:<value> |
―(*2) |
(*1) M:必須、O:オプション
(*2) データ全体としてAPI仕様の最大データ長まで許容します。
データ例:
{ "req_id": "d92ef5bb-f109-4568-8b77-8350e7fa39d8", "%complete": 50, "gw_id": "b35947f0-831f-45cb-92e1-2170036e98b6", "date": "20190305T123456.000Z", "num_tasks": 10, "preproc": "PeopleCounting" } |
Response
Body
なし。
用途
4.4節にて受信した検索指示の結果としての処理済データを登録します。
Request
パラメータ |
値 |
Method |
PUT |
URI |
<Base URL>/v1/<Tenant ID>/<drc>/response/preprocessed |
Body |
処理済データ |
Body
Parameters |
形式 |
M/O(*1) |
説明 |
最大長/値の範囲 |
|
req_id |
string |
M |
4.4節にてreq_idに取得したリクエストID |
―(*2) |
|
gw_id |
string |
M |
4.1節にて設定したエッジ機器(GW)ID。半角英数字および「-」「_」が利用できます。ただし、先頭に「-」「_」は使用できません。 |
文字列長 |
36 |
<key>:<value> |
任意 |
O |
前処理後の実データ。任意の<key>:<value>形式で指定します。 |
―(*2) |
(*1) M:必須、O:オプション
(*2) データ全体としてAPI仕様の最大データ長まで許容します。
データ例:
{ "req_id": "d92ef5bb-f109-4568-8b77-8350e7fa39d8", "gw_id": "b35947f0-831f-45cb-92e1-2170036e98b6", "count": 100 } |
Response
Body
なし。