2017-09-11 7 views
1

Malgré ensemble attrsFormtat à l'héritage qu'il ne fonctionne pas, je suis Paramètre manquant: updateActionNe peut pas notifier de contexte Orion Broker v2 courtier contexte Céphée v1

Toutes les suggestions?

Merci. EDITED: Je l'ai essayé d'un million de façons et je ne peux pas gérer cela en obtenant toujours la même erreur.

enter image description here

enter image description here

enter image description here

+0

Je ne peux pas voir le message d'erreur dans le snapshoot de votre message de question ... pourriez-vous poster votre question afin d'inclure l'erreur que vous obtenez, s'il vous plaît? De plus, veuillez indiquer quelle version d'Orion utilisez-vous (la sortie de 'contextBroker --version' fournit cette information). THX! – fgalan

+0

fgalan info actualizada. – Pablog1108

+0

Il semble que Cepheus soit celui qui signale l'erreur "Missing updateAction". Voyons voir si un expert de Cepheus peut clarifier quelle est la cause de ce problème. – fgalan

Répondre

1

Je ne suis pas un expert dans Céphée Broker mais j'ai un peu d'expérience en jouant avec Céphée CEP et contexte Orion Broker dans l'écosystème FIWARE, je peux peut-être utile.

Selon le documentation officiel de CEP, vous devriez déployer Cepheus Broker avant Orion Context Broker après. Je sais que les deux parlent la même API NGSI, donc ça devrait être pareil, mais je ne suis pas complètement sûr de ça. Une raison particulière pour laquelle vous déployez ces composants dans cet ordre?

enter image description here

Je fais une petite expérience en utilisant des images Docker officielles de Céphée Broker et le contexte Orion Broker, la création d'abonnements de contexte par v1 et v2 API Orion. La même erreur que vous sur les journaux de Cepheus Broker.

Ensuite, j'ai prouvé avec this petite application faite par les boursiers Fiware, que vous pouvez utiliser pour déboguer les abonnements de contexte NGSI. J'ai essayé avec les abonnements v1 et v2, avec un héritage et aucun héritage dans v2 et tout ceci produit un champ "updateAction" dans la requête. Ensuite, j'ai réalisé que, pour autant que je sache, dans les méthodes de l'API NGSI, le seul service qui reçoit le paramètre updateAction est le service updateContext.

Peut-être que Cepheus ne peut pas se connecter à Orion Context Broker via le mécanisme d'abonnement au contexte. Peut-être qu'il attend une mise à jour de contexte à la place d'une notification de changement de contexte.

Désolé de ne pas vous aider.

Cordialement!

+0

merci Emiliano, était ma faute. Je dois inclure le port du courtier d'orion au début du cepeus cep. – Pablog1108

1

Vous essayez de faire en sorte qu'Orion envoie une demande notifyContext au point d'extrémité updateContext de Cepheus CEP. Cela ne peut pas fonctionner comme une demande updateContext devrait contenir un champ updateAction dans la charge utile selon le protocole NGSI v1.

Cepheus CEP s'attend à ce que les notifications des abonnements soient effectuées sur son point de terminaison notifyContext.

De plus, Cepheus CEP envoie ses propres demandes d'abonnement à Orion lorsqu'il est correctement configuré (vous devez déclarer Orion en tant que fournisseur dans la configuration CEP). Il demandera à Orion de renvoyer la notification à l'extrémité correcte. Enfin, vous ne pouvez pas faire l'abonnement pour le compte de Cepheus CEP comme vous essayez de le faire: Cepheus CEP n'acceptera que les notifications pour les abonnements qu'il a faits lui-même car il valide les identifiants de toutes les notifications qu'il reçoit.