- Impression
Envoi de messages de Tulip à Node-RED
Pour envoyer des messages depuis Tulip (par exemple depuis des Triggers in-App ou des Automations), un Connecteur peut être utilisé. Ceci est plus facile à réaliser lorsque l'hôte du connecteur est installé sur tous les appareils Tulip Edge.
Avec les appareils Tulip Edge
Le flux suivant sera utilisé pour envoyer un message d'un déclencheur Tulip à Node-RED fonctionnant sur un appareil Tulip Edge :
Une fois terminé, utilisez le Connecteur nouvellement créé dans n'importe quelle application ou automatisation Tulip pour envoyer des messages à Node-RED, tels que des commandes d'appareils ou des entrées de flux.
Dans Tulip : Configurer votre connecteur et votre hôte de connecteur
Note : Si vous n'êtes pas familier avec les Connector Hosts et Connector Function dans Tulip, consultez cet article.
- Créez un nouveau Connecteur depuis la page Connecteurs de votre Instance Tulip.
- Dans la fenêtre modale qui apparaît, remplissez les informations spécifiées ci-dessous :
Nom: Choisissez un nom pour votre Connecteur HostDescription: Choisissez un nom pour votre Connecteur HostConnectorType: Sélectionnez HTTP
- Cliquez sur "Enregistrer".
- Pour spécifier les détails de l'hôte du connecteur, cliquez sur le bouton production & testing & development à gauche. Dans la fenêtre modale qui s'affiche, saisissez les informations suivantes :
Running On : Sélectionnez l'hôte du connecteur de l'appareil Edge cible *Remarque : Si l'hôte du connecteur de l'appareil Edge est introuvable, accédez au portail de l'appareil Edge et assurez-vous que l'option "Connector Host" a été activée.*Host : Entrez localhostPort : Entrez 1880 (c'est le port sur lequel Node-RED fonctionne)TLS : Entrez NoIl n'est pas nécessaire d'ajouter des en-têtes ou des certificats.
- Cliquez sur Test et vérifiez que la connexion est établie. Enfin, cliquez sur Enregistrer.
Ce connecteur est maintenant capable de communiquer avec Node-RED sur l'appareil Edge cible.
Dans Node-RED : Configuration du nœud HTTP IN
Remarque : cette section suppose une certaine familiarité avec Node-RED.
Afin de recevoir le message de l'hôte du connecteur sur l'appareil, un nœud HTTP IN sera utilisé.
- Cliquez et faites glisser pour ajouter un nœud HTTP IN de la palette sur le côté gauche de l'éditeur Node-RED au flux :
Saisissez les informations suivantes : Méthode : POST URL : tout chemin défini par l'utilisateur, tel que /nodeRED
ou /myMachine/0013
. Il sera réutilisé dans Node-RED, il doit donc être facile à reconnaître et à mémoriser. L'exemple ci-dessous montre l'URL configurée comme /test
:
- Cliquez sur "Terminé" pour enregistrer les modifications.
Les requêtes HTTP échoueront sans qu'une réponse ne soit renvoyée au serveur (dans ce cas, Tulip). 1. Faites glisser un nœud de réponse HTTP. 2. Connectez le nœud HTTP Request au nœud HTTP Response. 3. Double-cliquez sur le nœud HTTP Response et entrez 200 comme code d'état. Cliquez sur Terminé.
Modify the Status Code and/or use the +add button in the HTTP Response node to modify or add to the Connector's response. These data (most often, system or device outputs generated by the Flow) will appear in the Connector's Response. Configure Connector Outputs with the guide here!!is this the right wording??!!.
- Enfin, faites glisser un nœud Debug dans la palette. Configurez ce nœud pour qu'il produise un**"objet de message complet"** à l'aide du menu déroulant msg.:
Ce flux Node-RED va maintenant recevoir un message de Tulip et l'afficher dans le journal de débogage Node-RED.
Un flux terminé peut apparaître comme ci-dessous :
Cliquez sur Deploy en haut à droite pour valider toutes les modifications.
Dans Tulip : Configuration et test de la fonction de connecteur
Une fois la configuration du flux Node-RED terminée, revenez au connecteur dans Tulip. 1. Créer une nouvelle fonction de connecteur. 2. Changez la fonction de connecteur de GET à POST. 3. Entrez le chemin configuré dans Node-RED (dans cet exemple, /test
) dans l'URL. 4) (facultatif) pour ajouter du contenu au connecteur (tel qu'un message ou une commande), ajoutez une entrée au connecteur. 5) (facultatif) Ajoutez l'entrée au corps de la demande en changeant d'abord le type de contenu en JSON, puis en ajoutant un élément à la racine
.
La capture d'écran ci-dessous montre un connecteur configuré pour le point de terminaison /test
spécifié ci-dessus et inclut une entrée appelée testValue
:{height="" width=""}.
Cliquez sur "Run" pour tester la fonction du connecteur. Deux indicateurs de succès apparaissent : 1. La fonction de connecteur recevra une réponse 200 OK
, contenant (le cas échéant) : 1. Toutes les entrées configurées pour le connecteur 2. Toute sortie supplémentaire configurée dans le nœud de réponse HTTP de Node-RED2. Le journal de débogage de Node-RED affichera le message du connecteur. Remarque : selon la version actuelle de Node-RED, le corps de la requête du connecteur peut être trouvé dans : a. msg.payload
, ou b. msg.req.body.
Les deux états de réussite peuvent être trouvés ci-dessous :
Succès du connecteur :
Succès du nœud-RED :