2016-06-14 6 views
1

Ich arbeite mit Orion Kontext Broker Version 1.0.0. Ich habe ein aktives Abonnement, das ständig Benachrichtigungen erhält, die an einen Cygnus weitergeleitet werden sollten.Fiware - Orion Context Broker Abonnement Ablauf

Mein Anliegen ist, dass am letzten Donnerstag dieses Abonnement abgelaufen ist. Theoretisch wird das Ablaufdatum aktualisiert, während ein Abonnement weiterhin Benachrichtigungen an seine Abonnenten sendet. Dann weiß jemand, warum dieses aktive Abonnement abgelaufen ist?

Das ist, wie ich die Abonnement-Registrierungen tun:

(curl 172.21.0.33:1026/v1/subscribeContext -s -S --header 'Fiware-Service: xxxx' --header 'Fiware-ServicePath: /xxxx/xxxx' --header 'Content-Type: application/json' --header 'Accept: application/json' -d @- | python -mjson.tool) <<EOF 
{ 
    "entities": [ 
     { 
      "type": "tmp_reading", 
      "isPattern": "true", 
      "id": ".*" 
     } 
    ], 
    "attributes": [], 
    "reference": "http://172.21.0.23:5050/notify", 
    "duration": "P1M", 
    "notifyConditions": [ 
     { 
      "type": "ONCHANGE", 
      "condValues": [] 
     } 
    ] 
} 
EOF 

Eine zeitliche Lösung scheint eine sehr große Dauer Zeitraum zu schaffen zu sein. Ist das notwendig?

Antwort

1

theorically, während ein Abonnement Senden von Benachrichtigungen an sie hält Abonnent ist, wird das Ablaufdatum

aktualisiert

, die nicht korrekt ist. Im Gegenteil, eine Subskription ist aktiv, solange sie ihr Verfallsdatum nicht erreicht hat, das mit der aktuellen Zeit + Dauer zum Zeitpunkt der Erstellung/Aktualisierung der Subskription (in NGSIv1) oder direkt mit dem Wert des Feldes expires (in NGSIv2) berechnet wird. egal ob Benachrichtigungen gesendet werden oder nicht.

Beachten Sie außerdem, dass mit NGSIv2 permanente Abonnements erstellt werden können (die ohne Angabe des Felds expires erstellt wurden).