community italiana di domotica personale
 
Node-RED

Node-RED

Produttorejs.foundation
Disponibilità: presso nodered.org
Categoria: software
Tipologia: tool di programmazione/integrazione
Difficoltà di implementazione: media

Node-RED Flow

Node-RED è un software di sviluppo/integrazione inizialmente sviluppato da IBM e concepito per connettere velocemente e in modo intuitivo – anche per mano di soggetti non preparati sulla programmazione – dispositivi, API e servizi online: non a caso Node-RED è uno egli strumenti preferiti in ambito domotico e, più generalmente, IoT.

Node-RED fornisce un editor visuale basato su browser che permette di creare facilmente funzioni JavaScript senza bisogno di specifica competenza su questo linguaggio. Questo ambiente permette, partendo da una libreria di elementi base (chiamati “nodi”), di creare dei veri e propri “flussi” all’interno delle quali le informazioni in transito vengono veicolate, trattate, manipolate.

Le possibilità sono pressoché infinite: oltre alla libreria elementare fornita assieme al software, la community open-source sviluppa ulteriori elementi, i più disparati, rendendo Node-RED utilizzabile in un ampissimo campo di applicabilità.

Un esempio

Immaginiamo di avere a disposizione un sensore domotico di temperatura in grado di erogare telemetrie MQTT. In assenza di un HUB personale come (per esempio) Home Assistant, ogni dato sfornato ciclicamente dal sensore può essere semplicemente consumato al momento, fino alla ricezione del dato seguente.

Ma che fare, in caso io voglia consumare tale dato ma al contempo anche salvarlo su un database e, magari, inviarlo via email a un indirizzo specifico?

Tramite Node-RED realizzare tutto ciò sarà estremamente semplice. Quel che sarà necessario fare sarà selezionare i nodi d’interesse, ovvero (in questo caso specifico):

  • uno per sottoscrivere il topic MQTT dal quale attingere il dato;
  • uno in grado di scrivere sul mio database (che diamo per assunto esistere);
  • uno in grado di inviare una mail via SMTP.

A questo punto, in modo intuitivo e visuale dovrò prima configurare il primo nodo (MQTT) per poi collegarlo con i due altri nodi (db e email), configurarli a loro volta (uno per scrivere sul db, l’altro per inviare l’email) e, ciò fatto, cliccare su “Deploy”.

A questo punto – automaticamente – il meccanismo che ho creato prenderè vita (al netto di eventuali errori) e provvederà all’esecuzione di quanto ho “disegnato”.

I nodi di input e di output (nonché di trattamento) dati sono innumerevoli, pertanto il limite è la fantasia. Node-RED è uno strumento tanto semplice quanto portentoso, e quello qui riportato è solo un esempio elementare per far intendere quale sia la logica di funzionamento. Maggiori informazioni sono disponibili sul sito di Node-RED così come sul sito che raccoglie flow già configurati e nodi aggiuntivi per la nostra istanza personale di questo magnifico software. A questo tema abbiamo anche dedicato una puntata del nostro Podcast.

Su inDomus è disponibile:

inDomus AWARD


Altri articoli dedicati a Node-RED:

Questa pagina è redatta, manutenuta e aggiornata dallo staff di inDomus, un gruppo di persone molto diverse tra loro che trovi, per domande e supporto, sul forum e sulla chat del sito. Alcuni link sono taggati in qualità di affiliati Amazon e riceviamo un compenso dagli acquisti idonei, utile al sostenimento del sito, ma le nostre recensioni sono tutte indipendenti e non sponsorizzate. Se ti sei perso, a tua disposizione c'è la mappa.