2017-01-16 3 views
2

На основании этого сообщения (Fiware - Context broker: Issue with NGSIv2 subscriptions) несколько месяцев назад обсуждалось, поддерживает ли Cygnus NGSIv2 или нет. Было отмечено, что проблема связана с графиком, но еще не реализована.Лечит ли Cygnus NGSI2?

Вопрос: Он уже реализован? как мы можем знать?

Мое замешательство напоминает, что при создании подписки на основе NGSIv2 и результатов успешно созданного сообщения всплывают (т. Е. 201), но по-прежнему не могут отслеживать мою запись подписки в Orion.

Я создаю свою подписку, как это:

Content-Type:application/json 
Accept: application/json 
Fiware-Service: test 
Fiware-ServicePath: /device 

{ 
     "description": "One subscription to rule them all", 
     "subject": {  
     "entities": [ {   
      "idPattern": ".*",   
      "type": "smarthphone" } ],  
     "condition": {  
      "attrs": [ "battery" ], 
      "expression": { "q": "battery!=0" }  
      } 
     }, 
     "notification": {  
     "http": {  
      "url": "<MY COSMOS IP>:5050/notify" },  
      "attrs": [ "battery" ] 
     }, 
     "expires": "2120-04-05T14:00:00.00Z", 
     "throttling": 1 
    } 

И это то, что я получаю:

Connection: Keep-Alive 
Content-Length: 0 
Location: /v2/subscriptions/587c62fcfebdbe5f74bad77b 
Fiware-Correlator: f9a96bd0-dbb1-11e6-93ea-0242ac110004 
Date: Mon, 16 Jan 2017 06:06:52 GMT 

Но когда я получить такие подписки он does't шоу:

.../v2/subscriptions/587c62fcfebdbe5f74bad77b 

Любой намек на то, что я делаю неправильно?

+0

Btw, я также пробовал то, что рекомендуется на этом сайте (http://fiware-cygnus.readthedocs.io/en/1.5.0/cygnus-common/installation_and_administration_guide/install_with_docker/), но до сих пор нет сигналов с моя подписка. Я держу Cygnus версии 1.6.0, что подразумевает, что это не проблема, не так ли? – netzahdzc

+0

Какое сообщение вы получаете при попытке получить подписку с помощью '.../v2/subscriptions/587c62fcfebdbe5f74bad77b'? – Dalton

+0

У меня не было ошибок, на нем был показан пустой массив без записи подписки. – netzahdzc

ответ

0

Если у вас есть объекты, созданные с заголовками Fiware-Service: test и Fiware-ServicePath: /device, вам также необходимо использовать эти заголовки в своих запросах (GET, PUT и т. Д.).

+0

Да, это хороший намек. Спасибо – netzahdzc

+0

Кстати, не уверен, что это должен быть другой вопрос, но. После создания моей подписки он показывает активный статус. Но после публикации json-объекта моя подписка превращает свой статус в «status»: «failed». Вы знаете, что может случиться? – netzahdzc

+0

Да. Лучше создать другой вопрос, дающий детали проблемы. – Dalton

1

«Cygnus не поддерживает NGSIv2» означает, что в служебном порту не принимаются уведомления NGSIv2 (по умолчанию TCP/5050). В настоящее время принимаются только уведомления NGSIv1.

Тем не менее, мы добавили в Cygnus API удобную операцию по подписке на Orion, либо используя формат подписки NGSIv1 или NGSIv2. Наверное, это то, что вы протестировали (без успеха). Внутри такая операция реализует только переадресацию (к данной конечной точке Ориона) данной подписки. Если Cygnus API говорит, что все прошло хорошо, это потому, что Орион сказал, что все пошло нормально.

Во всяком случае, я отредактирую это сообщение после того, как проведу проверку на моей стороне. Тем временем вы можете игнорировать API Cygnus и напрямую использовать Orion API.