2

我正在使用 Cygnus 和 Mongo 和 sth sink 来检索历史数据。

在 cygnus mongo sink 的当前实现中,属性元数据不存储在数据库中。所以我更新了 cygnus 以便能够存储属性元数据。但是当我使用 STH-comet 检索历史时,API 显然不支持检索属性元数据。

我是否缺少某种配置或 API 不支持属性元数据,因为我从 STH-comet 得到的响应是:

    {
  "contextResponses": [
    {
      "contextElement": {
        "attributes": [
          {
            "name": "humidity",
            "values": [
              {
                "recvTime": "2017-03-08T08:06:11.463Z",
                "attrType": "Number",
                "attrValue": "999"
              },
              {
                "recvTime": "2017-03-08T08:10:54.199Z",
                "attrType": "Number",
                "attrValue": "3.06"
              }
            ]
          }
        ],
        "id": "Room1",
        "isPattern": false,
        "type": "Room"
      },
      "statusCode": {
        "code": "200",
        "reasonPhrase": "OK"
      }
    }
  ]
}

在 mongoDB 数据库中,我有以下内容:

{ "_id" : ObjectId("58bfbb7c973c5c22d258cffc"), "recvTime" : ISODate("2017-03-08T08:06:11.463Z"), "attrName" : "humidity", "attrType" : "Number", "attrValue" : "999", "attrMetadata" : [ ] }
{ "_id" : ObjectId("58bfbc93973c5c22d258cffd"), "recvTime" : ISODate("2017-03-08T08:10:54.199Z"), "attrName" : "humidity", "attrType" : "Number", "attrValue" : "3.06", "attrMetadata" : [ { "name" : "unit", "type" : "Text", "value" : "voltage" } ] }

如果 API 不支持检索属性元数据,是否可以添加此功能?

谢谢和最好的问候。

4

1 回答 1

1

STH 和 Cygnus 与存储在 MongoDB 中的信息一致,包括原始信息和聚合信息。从这个意义上说,由于 Cygnus 最初不支持在NGSIMongoSink(负责以原始格式存储信息的)中的属性元数据,所以 STH 在其原始 API 中也不支持属性元数据。

只要您为此目的扩展了 Cygnus 功能,就必须同时扩展 STH API。

于 2017-03-09T11:07:58.640 回答