Cygnus-Orion subscription endpoint

107 views Asked by At

What is the best endpoint to subscribe Cygnus to Orion CB for subscription change: /v1/subscribeContext or /v2/subscriptions please?

Tried this, no response:

$(curl localhost:1026/v1/subscribeContext -s -S --header 'Content-Type: application/json' --header 'Accept: application/json' --header 'Fiware-Service: smartGondor' --header 'Fiware-ServicePath: /gardens' -d @- | python -mjson.tool) <<EOF
{
    "entities": [
        {
            "type": "Device",
            "isPattern": "false",
            "id": "raspiSensorTV"
        }
    ],
    "attributes": [
        "Temperature Sensor",
        "TimeInstant"
    ],
    "reference": "http://localhost:5050/notify",
    "duration": "P1M",
    "notifyConditions": [
        {
            "type": "ONCHANGE",
            "condValues": [
                "Temperature Sensor"
            ]
        }
    ],
    "throttling": "PT1S"
}
EOF

This seems to work, but not sure if its the best way to go, as no observations are received.

$curl -iX POST \
  'http://localhost:1026/v2/subscriptions' \
  -H 'Content-Type: application/json' \
  -H 'fiware-service: smartGondor' \
  -H 'fiware-servicepath: /gardens' \
  -d '{
  "description": "Notify Cygnus of all context changes",
  "subject": {
    "entities": [
    {
        "idPattern": ".*",
      "type": "Device"
    }
    ]
  },
  "notification": {
    "http": {
    "url": "http://cygnus:5050/notify"
    },
    "attrsFormat": "legacy"
  },
  "throttling": 5
}'
1

There are 1 answers

0
fgalan On BEST ANSWER

At the present moment Cygnus doesn't support NGSIv2 notifications so you need to use the NGSIv1 endpoint. You can find more information in this section of Cygnus documentation and this other.