Tutorial sull'uso di Node-RED 2

Panoramica

Questo tutorial fa seguito al primo e illustra come creare un processo che inizi a importare dati da fonti esterne per eseguire operazioni utili a livello locale.

Il processo:

Recuperare periodicamente le informazioni dal sito web

Trasforma queste informazioni in un formato utile

Mostra i risultati nella barra laterale "Debug"

1. Aggiungere un nodo "Inject"

Nel tutorial precedente, il nodo Inject è stato utilizzato per avviare il processo quando si faceva clic sul relativo pulsante. In questo tutorial, il nodo Inject verrà configurato per avviare il processo a intervalli regolari.

Trascina il nodo "Inject" dal pannello all'area di lavoro.

Fai doppio clic sul nodo per aprire la finestra di dialogo di modifica. Imposta l'intervallo di ripetizione su ogni 5 minuti.

Fare clic su "Fine" per chiudere la finestra di dialogo.

2. Aggiungi un nodo di richiesta HTTP

I nodi di richiesta HTTP possono essere utilizzati per recuperare pagine web quando vengono attivati.

Dopo averne aggiunto uno all'area di lavoro, modificalo per impostare la proprietà URL su:

https://earthquake.usgs.gov/earthquakes/feed/v1.0/summary/significant_month.csv

Quindi fare clic su "Fine" per chiudere la finestra di dialogo.

Questo URL rimanda a un feed dei principali terremoti del mese scorso tratto dal sito web dell’USGS. Il sito offre molte altre opzioni che potresti voler provare dopo aver completato questo tutorial.

3. Aggiungi un nodo CSV

Aggiungi un nodo CSV e modifica le sue proprietà. Abilita l'opzione “La prima riga contiene i nomi delle colonne”.

Quindi fare clic su "Fine" per chiudere.

4. Aggiungi un nodo "Debug"

Aggiungi un nodo "Debug" all'output.

5. Collegarli tra loro

Effettuare i collegamenti dei cavi:

Inserisci l'uscita del nodo nell'entrata del nodo "Richiesta HTTP".

L'uscita del nodo "Richiesta HTTP" va all'entrata del nodo "CSV".

L'uscita del nodo CSV viene inviata all'entrata del nodo Debug.

6. Aggiungere un nodo Switch

Aggiungi il nodo Switch all'area di lavoro. Modifica le sue proprietà e configuralo come msg.payload.mag. Verifica le proprietà con il test, modifica >= in test anumber e imposta il valore 7. Fai clic su Fine per chiudere.

Aggiungi una seconda connessione dal nodo CSV a questo nodo Switch.

7. Aggiungi un nodo di modifica

Aggiungi un nodo "Change" e collegalo all'uscita del nodo "Switch". Configuralo in modo che imposti `msg.payload` sulla stringa "PANIC!".

8. Aggiungere un nodo di debug

Collega il nuovo nodo "Debug" all'uscita del nodo "Change"

9. Implementazione

Distribuisci il flusso nell'ambiente di esecuzione facendo clic sul pulsante "Distribuisci".

Apri la scheda "Debug" nella barra laterale e fai clic sul pulsante "Inject". Dovresti vedere un elenco di voci simile a questo:

msg.payload: Oggetto

{“time”:”2017-11-19T15:09:03.120Z”,”latitudine”:-21,5167,”longitudine”:168,5426,”profondità”:14,19,”magnitudo”:6,6,”magType”:”mww” ,”gap”:21,”dmin”:0,478,”rms”:0,86,”net”:”us”,”id”:”us2000brgk”,”updated”:”2017-11-19T17:10:58.449Z “,”luogo”:”68 km a est di Tadine, Nuova Caledonia”,”type”:”earthquake”,”horizontalError”:6,2,”depthError”:2,8,””magError”: 0,037, ”magNst”: 72, “status”: ”reviewed”, ”locationSource”: ”us”, ”magSource”: ”us"}

Ora puoi cliccare sulla piccola freccia a sinistra di ciascuna proprietà per espanderla e visualizzarne il contenuto

Se si verificano terremoti di magnitudo superiore a 7, verrà visualizzato anche un messaggio di debug simile a questo:

msg.payload: stringa(6)

“PANICO!”

Per testare il programma, puoi modificare il valore dell'interruttore da 7 a un valore inferiore. Ricordati di fare clic su "Deploy" dopo aver apportato le modifiche. ***

generalizzare

Questo processo si avvia automaticamente ogni 5 minuti e recupera i dati dall'URL. Analizza i dati e li visualizza nella barra laterale di debug. Verifica inoltre i valori di ampiezza dei dati e devia il flusso per qualsiasi messaggio con ampiezza maggiore o uguale a 7. Il payload di tali messaggi viene modificato e visualizzato nella barra laterale di debug.

risorsa

Il processo creato in questo tutorial è rappresentato dal seguente codice JSON. Per importarlo nell'editor, copialo negli appunti e incollalo nella finestra di dialogo "Importa".

[{“id”:”e36406f2.8ef798″,”type”:”inject”,”z”:”f03b57d5.e525f8″,”name”:””,”topic”:””,”payload”:”” ,”payloadType”:”str”,”repeat”:”300″,”crontab”:””,”once”:false,”x”:130,”y”:900,”wires”:[[“c3c50023 .3bbed”]]},{“id”:”c3c50023.3bbed”,”type”:”richiesta http”,”z”:”f03b57d5.e525f8″,”name”:”Terremoti recenti”,”method”: “GET”, ”url”: ”https://earthquake.usgs.gov/earthquakes/feed/v1.0/summary/significant_month.csv”, ”tls”: ””, ”x”:300,”y” :900,”wires”:[[“8afc6cac.e0812”]]},{“id”:”8afc6cac.e0812″,”type”:”csv”,”z”:”f03b57d5.e525f8″,”name” :””,”sep”:”,”,”hdrin”:true,”hdrout”:””,”multi”:”one”,”ret”:”\n”,”temp”:””, “x”:470,”y”:900,”wires”:[[“44779781.4190f8″,”6f0eb546.9e208c”]]},{“id”:”44779781.4190f8″,”type”:”debug”, “z”:”f03b57d5.e525f8″,”name”:””,”active”:true,”complete”:false,”x”:630,”y”:900,”wires”:[]},{ “id”:”6f0eb546.9e208c”,”type”:”switch”,”z”:”f03b57d5.e525f8″,”name”:””,”property”:”payload.mag”,”propertyType”:” msg”,”rules”:[{“t”:”gte”,”v”:”7″,”vt”:”num”}],”checkall”:”true”,”outputs”:1,” x”:510,”y”:960,”wires”:[[“d78d4aa8.8c8208”]]},{“id”:”d78d4aa8.8c8208″,”type”:”change”,”z”:” f03b57d5.e525f8″,”name”:””,”rules”:[{“t”:”set”,”p”:”payload”,”pt”:”msg”,”to”:”PANIC!” ,”tot”:”str”}],”action”:””,”property”:””,”from”:””,”to”:””,”reg”:false,”x”:650 ,”y”:1020,”wires”:[[“72fddece.fac0d”]]},{“id”:”72fddece.fac0d”,”type”:”debug”,”z”:”f03b57d5.e525f8″ ,”name”:””,”active”:true,”complete”:false,”x”:750,”y”:960,”wires”:[]}]

↑