Das Abonnement von einem Orion Context Broker bei einem anderen Orion Context Broker funktioniert nicht
-
20-12-2019 - |
Frage
Ich habe auf fi-lab eine neue Orion-Instanz erstellt, um diese ebenfalls mit einer bei uns verwalteten CEP-Instanz zu verbinden.Die Daten, die auf meiner Orion-Instanz gespeichert werden sollen, müssen von der vorhandenen Orion-Instanz unter orion.lab.fi-ware.eu:1026 bereitgestellt werden
Um die Daten in der neuen Orion-Instanz verfügbar zu haben, wird eine Abonnementanfrage an die „Haupt“-Orion-Instanz gesendet.Bei diesem Abonnement handelt es sich um ein ONCHANGE-Abonnement und die Anfrage erfolgt mit den entsprechenden Header-Tokens an die URL http://orion.lab.fi-ware.eu:1026/NGSI10/subscribeContext
Der Inhalt der Anfrage ist folgender:
{
"entities": [
{
"type": "location:mytype",
"isPattern": "false",
"id": "x:y:z"
}
],
"attributes": [],
"reference": "http://a.b.c.d:1026/",
"duration": "P1M",
"notifyConditions": [
{
"type": "ONCHANGE",
"condValues": [
"TimeInstant"
]
}
]
}
Wenn ich diese Anfrage stelle, lautet die Antwort:
<subscribeContextResponse>
<subscribeResponse>
<subscriptionId>53d7473d1860a3cb2359ff11</subscriptionId>
<duration>P1M</duration>
</subscribeResponse>
</subscribeContextResponse>
Aber wenn ich das Attribut „TimeInstant“ der Entität „x:y:z“ im ursprünglichen Context Broker aktualisiere, gibt es keine Änderungen an der ähnlichen Entität in meiner Orion-Instanz.Es gibt also keine Update-Anfrage vom Original-Orion auf meinen Orion.
Ich habe dieses ONCHANGE-Abonnement von meiner Orion Context Broker-Instanz zur Proton-Engine abgeschlossen, indem ich lediglich das URL-Referenzattribut von der Anfrage in die CEP-URL geändert habe, die Ereignisse empfängt.
Die CB-Einheit arbeitet mit einer Sicherheitsgruppe, die den Zugriff über 22, 8080 und 1026 Ports ermöglicht.
Ich denke, das Problem liegt im URL-Referenzattribut. Ich habe es auch mit a.b.c.d:1026/NGSI10/updateContext versucht und habe das gleiche Problem.
Könnte mir jemand eine Idee zu meinem Problem geben?
Lösung
Basierend auf Siehe den Abschnitt „Föderation“ im Orion-Benutzerhandbuch:
Beachten Sie, dass die in der Referenz verwendete URL "/v1/notifyContext" sein muss.
Ich denke also, dass es verwendet wird "reference": "http://a.b.c.d:1026/v1/notifyContext"
würde das Problem lösen.