我需要在引用属性中添加什么内容?
我使用了两种形式,而这两种形式对Orion Context Broker
不利:
URL url = new URL("http://130.206.127.23:1026/ngsi10/notifyContext");
//String url = "http://localhost:1028/accumulate";
cabecera.put("reference", ""+url);
使用此代码,我为JSON String
属性
reference
...."reference":"http:\/\/130.206.127.23:1026\/ngsi10\/notifyContext",...
这是OCB
<subscribeContextResponse>
<subscribeError>
<errorCode>
<code>400</code>
<reasonPhrase>Bad Request</reasonPhrase>
<details>JSON Parse Error: <unspecified file>(1): invalid escape sequence</details>
</errorCode>
</subscribeError>
</subscribeContextResponse>
还与此参数相关,我是否需要在服务器中执行程序才能接收有关我的订阅的信息? 我可以从Orion Context Broker资源中获取一个程序来执行此任务吗?
以下是我的JSON来调用服务,但我不确定引用属性。我想发送订阅我的Orion Context Broker实例。我发送这个JSON:
{
"duration": "P1M",
"reference": "http://130.206.127.23:1026/ngsi10/notifyContext",
"notifyConditions": [
{
"condValues": [
"PT10s"
],
"type": "ONTIMEINTERVAL"
}
],
"entities": [
{
"id": "1.0",
"type": "Capsule",
"isPattern": "false"
}
],
"attributes": [
"temperature"
]
}
提前致谢。
答案 0 :(得分:1)
参考元素在the Orion User Manual:
中描述使用引用定义发送通知的回调URL 元件。
因此,如果您的引用是http://130.206.127.23:1026/ngsi10/notifyContext
,如示例所示,您应该在主机130.206.127.23端口1026上侦听REST服务器,能够在/ngsi10/notifyContext
路径中接收通知。请注意,您的CB(我的意思是,您发送subscribeContext请求的那个)是发送通知的actor,而不是接收它们的actor,因此不能在130.206.127.23运行: 1026。
您可以使用任何所需的编程语言实现通知接收程序(只要它实现了所需的REST服务器接口)。您可以查看accumulator-server.py,这是一个&#34;虚拟&#34;通过Python实现的通知接收器示例,用于测试。