- Stampa
Invio di messaggi da Tulip a Node-RED
Per inviare messaggi da Tulip (ad esempio da Trigger o Automazioni in-App), è possibile utilizzare un Connettore. Questo è più facile da fare con il Connector Host installato su tutti i dispositivi Tulip Edge.
Con i dispositivi Tulip Edge
Il flusso seguente verrà utilizzato per inviare un messaggio da un Tulip Trigger a Node-RED in esecuzione su un Tulip Edge Device:
Una volta completato, utilizzare il connettore appena creato in qualsiasi app o automazione Tulip per inviare messaggi a Node-RED, come comandi di dispositivi o input di flusso.
In Tulip: Configurazione del connettore e dell'host del connettore
Nota: se non avete familiarità con gli host del connettore e la funzione del connettore in Tulip, consultate questo articolo.
- Creare un nuovo connettore dalla pagina Connettori della propria istanza di Tulip.
- Nella finestra di dialogo che appare, compilate le informazioni come specificato di seguito:
Nome: Scegliere un nome per il connettore HostDescrizione: Scegliere un nome per il connettoreHostTipo di connettore: Selezionare HTTP
- Fare clic su "Salva".
- Per specificare i dettagli dell'host del connettore, fare clic sul pulsante produzione, test e sviluppo a sinistra. Nella finestra di dialogo visualizzata, inserire le seguenti informazioni:
Esecuzione su: selezionare l'host del connettore del dispositivo Edge di destinazione *Nota: se non è possibile trovare l'host del connettore del dispositivo Edge, navigare nel portale del dispositivo Edge e verificare che "Host del connettore" sia stato abilitato.*Host: Inserire localhostPort: Inserire 1880 (questa è la porta su cui gira Node-RED)TLS: Inserire NoNon è necessario aggiungere intestazioni o certificazioni.
- Fare clic su Test e verificare che la connessione sia stata completata. Infine, fare clic su Salva.
Questo connettore è ora in grado di comunicare con Node-RED sul dispositivo Edge di destinazione.
In Node-RED: Configurazione del nodo HTTP IN
Nota: questa sezione presuppone una certa familiarità con Node-RED.
Per ricevere il messaggio dall'host connettore sul dispositivo, verrà utilizzato un nodo HTTP IN.
- Fare clic e trascinare per aggiungere un nodo HTTP IN dalla tavolozza sul lato sinistro dell'editor di Node-RED al flusso:
Inserire le seguenti informazioni: Metodo: URL POST : qualsiasi percorso definito dall'utente, ad esempio /nodeRED
o /myMachine/0013
. L'URL sarà riutilizzato in Node-RED, quindi dovrebbe essere facile da riconoscere e da ricordare:
- Fare clic su "Fatto" per salvare le modifiche.
Le richieste HTTP falliranno senza che venga restituita una risposta al server (in questo caso, Tulip). 1. Trascinare un nodo Risposta HTTP. 2. Collegare il nodo Richiesta HTTP al nodo Risposta HTTP. 3. Fare doppio clic sul nodo Risposta HTTP e inserire 200 come codice di stato. Fare clic su Fine.
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??!!.
- Infine, trascinare un nodo Debug dalla tavolozza. Configurare questo nodo in modo che emetta**"Oggetto messaggio completo"** utilizzando il menu a discesa msg.
Questo flusso Node-RED riceverà ora un messaggio da Tulip e lo visualizzerà nel Registro di debug Node-RED.
Un flusso completato può apparire come mostrato di seguito:
Fare clic su Deploy in alto a destra per eseguire il commit di tutte le modifiche.
In Tulip: Configurazione e test della funzione Connector
Una volta completata la configurazione del flusso Node-RED, tornare al connettore in Tulip. 1. Creare una nuova Funzione connettore. 2. Cambiare la funzione del connettore da GET a POST. 3. Inserire nell'URL il percorso configurato in Node-RED (in questo esempio, /test
). 4. (opzionale) Per aggiungere contenuti al connettore (come un messaggio o un comando), aggiungere un Input al connettore. 5. (opzionale) Aggiungere l'input al corpo della richiesta, cambiando prima il tipo di contenuto in JSON e poi aggiungendo un elemento a root
.
La schermata seguente mostra un connettore configurato per l'endpoint /test
specificato sopra e include un input chiamato testValue
:
Fare clic su "Esegui" per testare la funzione del connettore. Si verificheranno due indicatori di successo: 1. La funzione Connector riceverà una risposta 200 OK
, contenente (se applicabile): 1. Tutti gli ingressi configurati per il Connettore 2. Qualsiasi uscita aggiuntiva configurata nel nodo HTTP Response di Node-RED2. Il registro di debug di Node-RED visualizzerà il messaggio del Connector. Nota: A seconda della versione corrente di Node-RED, il corpo della richiesta del connettore si trova in: a. msg.payload
o b. msg.req.body.
Entrambi gli stati di successo sono riportati di seguito:
Connector Success:
Successo del nodo-RED: