Integrare gratuitamente Alexa su Home Assistant con Node-Red
Eccoci ad un nuovo appuntamento Node-Red
.
Argomento: Node-Red
Livello: Novizio (Novizio,Esperto, Pro)
Difficoltà: Media (Bassa, Media, Alta)
Eccoci in questo nuovo articolo, dove tramite skill e nodi dedicati, potremmo configurare Alexa all’interno di Node-Red per gestire i nostri device su Home Assistant.
In parole semplici andremo a configurare dei “device fittizi” su un sito esterno.
Questo sito comunica con la nostra app alexa tramite skill dedicata e con Node-Red tramite nodi dedicati. Chiamando vocalmente un “device fittizio”, il nodo dedicato emetterà un impulso che manipoleremo per far partire un’automazione su Node-Red. Questa automazione gestirà un device configurato su Home Assistant.
PRIMA DI INIZIARE:
Seguire guide Node-Red senza capirne il flusso d’automazione, non é utile a nessuno. Node-Red ha un metodo tutto suo.
Consiglio di iniziare dal Corso 1 Node-Red in italiano, ecco il link al MODULO per richiederlo. E’ gratuito.
Per qualsiasi domanda non esitate a contattarmi.
Telegram Manuel Del Gada
Iscrivetevi ai canali “Node-Red italia” : Gruppo Facebook – Canale Youtube – Gruppo Telegram
Premessa
Questa é una guida per chi utilizza Node-Red come add-on di Home Assistant perché contiene nodi dedicati (per configurare Node-red come add-on segui la guida di Giovanni C. Lezione 1)
- Le entità che fanno parte di questa automazione dovranno essere già configurate su Home Assistant (dovrete chiaramente sostituire le entità di esempio di questa guida con le vostre)
- La configurazione di Alexa che verrà spiegata, ha le stesse potenzialità della configurazione tramite haaska gratuita, ma a differenza di quest’ultima, fa riferimento a un sito esterno di terze parti.
Cosa impariamo
- A scaricare nuovi nodi dalle “palette”
- A configurare Alexa su Node-Red tramite skill e nodi dedicati
- Eseguire una call service “statica” e “dinamica”
In questa guida vi mostrerò come poter controllare con alexa la percentuale di apertura\chiusura di una veneziana e l’accensione\spegnimento di una luce o switch configurati su HA.
Poi naturalmente starà a voi riprodurre il tutto per ogni device HA che volete controllare.
Per prima cosa ci rechiamo nel sito ed effettuiamo la registrazione
Di conseguenza effettuiamo il login, ci rechiamo su “devices”, e su “add device”
Andiamo a creare due “device fittizi” con il nome “lampada” e “veneziana” (che sono i nomi che pronunceremo ad alexa per attivarli)
Dovrete configurarli diversamente come da foto, perché lampada manderà un boolean true o false, mentre la veneziana un msg.payload con il numero della percentuale che pronunceremo ad alexa. Entrambi, su app alexa, saranno configurati come light, ma a noi non interessa, l’importante
é che eseguano il lavoro in maniera corretta.
Il risultato dovrà essere questo:
Ora ci rechiamo da cellulare su app alexa.
Scarichiamo e configuriamo la skill che vedete in foto (inserendo username e password registrati sul sito in precendenza)
Ora dobbiamo sincronizzare i device lampada e veneziana.
Perciò sempre da app ci rechiamo su “aggiungi dispositivo” e su “altro” come da foto Dopodiché andiamo a fare la ricerca di nuovi dispositivi così lampada e veneziana saranno aggiunti ad alexa.
Dopo aver confermato i due nuovi dispositivi basterà dire “accendi o spegni lampada” per accenderla o spegnerla ma anche per muovere la veneziana bisognerà dire esempio “ accendi veneziana al 50%”.
Diciamo che “accendi” non ci sta bene con la veneziana. Vediamo come eliminarlo.
Per poter dire solo “Alexa, veneziana al 50%” andremo a creare una routine che dovrà essere configurata come in foto
Risolto questo “piccolo problema” ci rechiamo su Node-Red per andare a scaricare i nodi dalle “palette” come da foto
Si aprirà questa finestra. Cercheremo “alexa” per filtrare e andremo a scaricare i nodi che vedete nella quadra rossa in foto. E cliccate su “install” (Nel mio caso sono già installati)
Terminata l’installazione, iniziamo la configurazione dei nodi.
Andiamo alla ricerca dei nodi sulla sinistra filtrando per “alexa home”. Dopodiché trasciniamo sul flow il nodo Alexa Home.
Apriamo il nodo, e come da foto, configuratelo con le credenziali di registrazione al sito che avevate fatto a inizio guida.
Una volta configurato l’account noterete che su “device” appariranno “lampada” e “veneziana” (Se non gli vedete clikkate sul simbolo di refresh)
Ora non ci resta che creare il flow in foto.
Come sempre (per chi segue le mie guide) ho suddiviso il tutto in due automazioni numerate e i nodi con le lettere per spiegarli nel dettaglio.
AUTOMAZIONE 1 “DINAMICA”
Nella prima automazione, quando diremo ad alexa “Veneziana al 50%” (ma potrà essere qualsiasi percentuale) il nodo dedicato farà fuoriuscire un msg.payload con il numero 50 che andrà a scrivere la call service “dinamica” dove ci sarà configurata l’entità della veneziana (nel mio caso non avendo veneziane ho configurato la tapparella salotto)
Vi ricordo che compilare un nodo call service é come eseguire una call service da strumenti sviluppatori di HA.
Configuriamo il nodo alexa home (1a) con il device “veneziana”
Collegato a un nodo Call service (1b) dove inserirete domain, service, ed entità del vostro device.
Dopodiché cliccate come da foto sui 3 puntini per compilare il json dinamico.
Il json della call dinamica (1b) dovrà essere scritto in questo modo sempre con la vostra entità e service da modificare (in questo caso, per la tapparella, in strumenti sviluppatori, il service risulta “position”. Non é altro che la percentuale).
Mi raccomando rispettate simboli e spazi
AUTOMAZIONE 2 “STATICA”
Nella seconda automazione, quando diremo ad alexa “accendi lampada” uscirà un boolean “true” che con uno switch andremo ad indirizzarlo verso la call service di accensione lampada.
Viceversa quando diremo spegni, uscirà un boolean “false”, che andrà verso la call di spegnimento.
Configuriamo il nodo alexa home (2a) con “lampada”
Colleghiamolo a un nodo switch (2b) per svincolare il boolean in ingresso in due uscite differenti.
Se entrerà true uscirà dall’output sopra. Se entrerà false uscirà dall’output sotto.
Colleghiamo al quadrato sopra una call service (2c) di accensione lampada (nel mio caso accendo la luce del salotto)
Mentre al quadrato sotto colleghiamo un nodo call service (2d) di spegnimento lampada
Flow completato!
Non vi resta che provarlo e riprodurre il tutto per tutti i device Home Assistant che desiderate comandare!
Video guida Youtube
Questa guida é stata riportata anche in versione video sul Canale Youtube “Node-Red Italia”. Buona visione e… alla prossima!
alexa amazon Automations Automazioni free Home Assistant integrazione nodered
7 risposte
Ciao
Mi esce questo errore cosa devo fare?
Call-service API error. Error Message: not a valid value for dictionary value @ data[‘entity_id’]
Ciao, errore di compilazione nel nodo call service. In particolare sembrerebbe entity id.
Il nodo call service è la stessa chiamata che fai in strumenti sviluppatori di HA. Fai dei test su strumenti sviluppatori. Quando funziona, quella è la compilazione corretta da riportare sul nodo.
Ciao Manuel
Grazie mille
La configurazione sviluppatori intendi config. Yaml
Non devo chiamare la stessa entità che ho su mqtt?
Grazie
risolto non avevo scritto cover.tapparella
grazie mille
Una domanda, per usare questa tecnica è necessario che HA sia esposto su internet?
questa guida pero comporta di creare con node red, tanti device fittizzi, tanti quanti ne abbiamo in casa domotizzati e da controllare?
a volte mi chiedo xke non utilizzare la soluzione piu breve di comandarli direttamente da alexa con le sue skill o la via di haaska???
Sei grande!!! Riuscito al primo colpo, dovrebbero farti santo.