履歴の未加工コンテキスト情報の取得

STH コンポーネントは HTTP REST API を公開して、外部クライアントが使用可能な履歴の未加工のコンテキスト情報を照会できるようにします。

GET リクエストを使用してこの情報を照会する一般的な URL は、次のとおりです :

http://<sth-host>:<sth-port>/STH/v1/contextEntities/type/<entityType>/id/<entityId>/attributes/<attrName>?hLimit=3&hOffset=0&dateFrom=2016-01-01T00:00:00.000Z&dateTo=2016-01-31T23:59:59.999Z

前のURLでは、<> の間にいくつかのテンプレートを使用していますが、これは対応する実際の値で置き換えてください。

また、前のリクエストでは、ページネーションされたレスポンスが3エントリの制限と0エントリのオフセット(最初のページ)でリクエストされていることにも注意してください。

未加工のコンテキスト情報のリクエストには、次のクエリパラメータを使用できます :

  • lastN : リクエストされた最後のエントリだけが返されます。hLimit および hOffset が指定されていない場合は、必須パラメータです。
  • hLimit : ページネーションの場合は、1ページあたりのエントリ数。lastN が指定されていない場合、必須パラメータです。
  • hOffset : ページネーションの場合は、未加工のコンテキスト情報のリクエストされた検索に適用するオフセット。lastN が指定されていない場合、必須パラメータです。
  • dateFrom : 未加工のコンテキスト情報が必要な開始日時。オプション・パラメータです。
  • dateTo : 未加工のコンテキスト情報が必要となるまでの最終日時。オプション・パラメータです。
  • filetype : 未加工のコンテキスト情報は、クエリパラメータを目的のファイルタイプに設定するファイルとしてリクエストできます。現在、唯一サポートされている値とファイルタイプは csv です 。オプションのパラメータです。

前のようなリクエストに対する STH コンポーネントによって提供されるレスポンスの例は、次のとおりです :

{
    "contextResponses": [
        {
            "contextElement": {
                "attributes": [
                    {
                        "name": "attrName",
                        "values": [
                            {
                                "recvTime": "2016-01-14T13:43:33.306Z",
                                "attrValue": "21.28"
                            },
                            {
                                "recvTime": "2016-01-14T13:43:34.636Z",
                                "attrValue": "23.42"
                            },
                            {
                                "recvTime": "2016-01-14T13:43:35.424Z",
                                "attrValue": "22.12"
                            }
                        ]
                    }
                ],
                "id": "entityId",
                "isPattern": false
            },
            "statusCode": {
                "code": "200",
                "reasonPhrase": "OK"
            }
        }
    ]
}

有効なクエリが作成されてもデータが返されない場合、たとえば、指定された時間枠の未加工のコンテキスト情報がないなどの場合、有効なクエリであるため、空の値のプロパティ配列を含むコード 200 のレスポンスが返されます。