如何在Orion Context Broker通知自定义有效负载(NGSIV2)中使用属性元数据标记?

时间:2017-08-16 14:59:59

标签: publish-subscribe fiware fiware-orion

NGSIv2客户端可以使用简单的模板机制自定义HTTP通知消息。

考虑以下通知notification.httpCustom对象:

"httpCustom": {
  "url": "http://foo.com/entity/${id}",
  "headers": {
    "Content-Type": "text/plain"
  },
  "method": "PUT",
  "qs": {
    "type": "${type}"
  },
  "payload": "The temperature is ${temperature} degrees"
}

令牌${temperature}将由当前上下文值解析。

认为属性可以具有元数据值可以包含自定义数据,例如temperature.scale,以存储'°C'或'°F'的值。如何在该消息中打印出来?

虽然属性元数据在通知中有2个特殊元数据:

  
      
  • previousValue。此元数据的值必须是关联属性的先前值。此元数据的类型必须是   先前类型的关联属性。如果是类型/值   previousValue与关联属性中的类型/值相同,   然后该属性实际上没有改变它的值。
  •   
  • actionType。如果附加到的属性包含在触发通知的请求中,则包括它。   它的值取决于请求操作类型:更新更新,   追加创建和删除删除。它的类型总是文本。
  •   

最终结果应该是这样的信息:

  

温度现在是-10°C,然后是9.1°C

是否可以使用谁?

1 个答案:

答案 0 :(得分:1)

NGSIv2 stable version RC-2016.10中指定的通知模板机制(当前Orion Context Broker版本的参考NGSIv2版本,即1.7.0)不实现元数据值替换。它可以在下一个版本中实现。