[英]Orion subscriptions that never receive changes
我在進行訂閱時遇到一些實體問題。 訂閱完成得很好(orion響應正常,狀態為201),但是訂閱的url從未收到任何更新。
我已經通過Centos 7與docker一起啟動了fiorion-orion。
這是實體的示例。
{
"id": "urn:ngsi-ld:ParkingGroup:Cervantes",
"type": "ParkingGroup",
"allowedVehicleType": {
"type": "Property",
"value": "car",
"metadata": {}
},
"availableSpotNumber": {
"type": "Property",
"value": 59,
"metadata": {}
},
"category": {
"type": "Property",
"value": [
"offstreet",
"feeCharged"
],
"metadata": {}
},
"chargeType": {
"type": "Property",
"value": [
"temporatyPrice"
],
"metadata": {}
},
"description": {
"type": "Property",
"value": "Calle CervantesMálaga",
"metadata": {}
},
"location": {
"type": "GeoProperty",
"value": {
"type": "Point",
"coordinates": [
"-4.4119148",
"36.7208633"
]
},
"metadata": {}
},
"name": {
"type": "Text",
"value": "Cervantes",
"metadata": {}
},
"occupancyDetectionType": {
"type": "Property",
"value": "none",
"metadata": {}
},
"permitActiveHours": {
"type": "Property",
"value": "",
"metadata": {}
},
"requiredPermit": {
"type": "Property",
"value": "noPermitNeeded",
"metadata": {}
},
"totalSpotNumber": {
"type": "Property",
"value": "414",
"metadata": {}
}
}
我嘗試了不同的訂閱方式,所有訂閱都被Orion接受,如下所示:
{
"description": "Notificar cambios en Aparcamientos",
"subject": {
"entities": [
{
"idPattern": ".*",
"type":"ParkingGroup"
}
],
"condition": {
"attrs": [
"availableSpotNumber"
]
}
},
"notification": {
"attrs" : ["availableSpotNumber"],
"http": {
"url": "https://webhook.site/925f3290-07af-4dc9-88d2-27bcba693be5"
}
}
}
當我通過郵遞員在PUT模式下以此更新數據時:
HTTP:// {{獵戶}} / V2 /實體/瓮:ngsi-LD:ParkingGroup:塞萬提斯/ ATTRS / availableSpotNumber /值
和正文(文本/純文本),值為2
當我以GET模式在郵遞員中進行制作時,數據是很好的日期:http:// {{orion}} / v2 / entities / urn:ngsi-ld:ParkingGroup:Cervantes / attrs / availableSpotNumber
它返回:
{
"type": "Property",
"value": 2,
"metadata": {}
}
但是訂閱的網址永遠不會收到任何東西
怎么了? 我該如何解決? 我該如何調試Orion,以了解為什么它不更新下標?
這個想法是訂閱以后的天鵝座。 我讀到我必須以這種方式為其添加attrsFormat:
"notification": {
"http": {
"url": "https://webhook.site/925f3290-07af-4dc9-88d2-27bcba693be5"
},
"attrs" : ["availableSpotNumber"],
"attrsFormat": "legacy"
}
提前致謝
解決了。 經過兩天的時間,與問題作斗爭並讓一些實體正常工作后,我意識到,當我進行訂閱時,Postman添加了標題(由於教程的原因):-fiware-service openiot-fiware-servicepath /
現在工作正常。
感謝Jason Fox一直在努力幫助我!
請注意如何編碼位置。 在Ngsi v2中,您需要輸入geo:json,並且坐標必須是數字而不是字符串。 在Ngsi-ld中,您需要GeoProperty,但是您的示例實體是在ngsiv2中編碼的
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.