Vai al contenuto
Home » L’app companion: controllare lo smartphone da Home Assistant

L’app companion: controllare lo smartphone da Home Assistant

Controllare lo smartphone da Home Assistant

Il problema

Tutti sappiamo che con l’app companion è possibile controllare Home Assistant, ma quanti sanno che si può fare anche il contrario? Ebbene sì, attraverso la stessa app, è possibile controllare lo smartphone da Home Assistant!

I requisiti

Per poter controllare lo smartphone da Home Assistant avrete bisogno semplicemente dell’app companion installata e che a quest’ultima siano stati dati tutti i permessi necessari, oltre ad un secondo dispositivo come ad esempio un computer, da cui inviare i comandi per fare le prove.

Non mi dilungherò su questi aspetti. Basta andare nelle impostazioni del proprio smartphone ed impostare i permessi all’app.

Mi riferirò in questo articolo ai dispositivi Android dato che è il sistema che uso io e su cui ho fatto esperienza diretta. Mi perdoneranno gli utenti Apple che però invito a dare il proprio nei commenti.

La soluzione

Per comandare il vostro smartphone, l’app companion passa attraverso le notifiche. Usandole è possibile inviare tanti comandi. Mostrerò solo quelli che ritengo più interessanti. Chi fosse interessato alla lista completa ecco la relativa pagina di documentazione (in inglese). La stessa pagina resta il riferimento se qualcosa non va o avete dubbi. Ad esempio con Android 12 o precedente, non è possibile ad oggi cambiare lo stato del bluetooth.

Per prima cosa assicuriamoci che sia possibile comandare lo smartphone da Home Assistant richiamando un comando semplice in maniera diretta.

Sul dispositivo chiamante andiamo nella sezione “Strumenti per sviluppatori” e poi su “Servizi“.
Scegliamo il servizio notify.[entità_rappresentante_la_app_companion_sul_nostro_smartphone].
Nei miei esempi userò notify.mobile_app_xiaomi_11_5g_lite_ne.

Nel campo message impostare “command_webview” e in data (attivate la spunta di questa voce se non è accesa) mettete “command: https://domoticamente.it/“. In alternativa potete andare in modalità yaml ed incollare questo codice:

service: notify.mobile_app_xiaomi_11_5g_lite_ne
data:
  message: command_webview
  data:
    command: https://domoticamente.it/

Ora sbloccate il vostro smartphone e cliccate su “Invoca il servizio” sul dispositivo chiamante. Se sarà andato tutto bene, dovrebbe aprirsi l’home page del nostro sito sul vostro smartphone.

NON DOVRESTE VEDERE UNA NOTIFICA. I comandi passano attraverso le notifiche ma queste non vengono mostrate. Se vedete la notifica e non viene eseguito il comando state sbagliando qualcosa.

Una volta che questa prova è andata a buon fine cominciamo a divertirci con i comandi di seguito, dei quali vi lascio direttamente lo yaml da usare negli strumenti per sviluppatori o nelle vostre automazioni!

Attivare/disattivare la luminosità automatica (turn_on per attivare e turn_off per disattivare):

service: notify.mobile_app_xiaomi_11_5g_lite_ne
data:
  message: command_auto_screen_brightness
  data:
    command: turn_on

Cambiare il livello della luminosità (il valore numerico è la percentuale di luminosità):

service: notify.mobile_app_xiaomi_11_5g_lite_ne
data:
  message: "command_screen_brightness_level"
  data:
    command: 50

Impostare la modalità dei suoni (normal = normale, silent = silenzioso, vibrate = vibrazione):

service: notify.mobile_app_xiaomi_11_5g_lite_ne
data:
  message: "command_ringer_mode"
  data:
    command: "vibrate"

Impostare la modalità non disturbare sui seguenti valori possibili: off (spento e quindi lo smartphone torna in modalità normale), priority_only (modalità non disturbare classica), alarms_only (disattiva tutte le notifiche tranne quelle della categoria allarmi), total_silence (silenzio assoluto)

service: notify.mobile_app_xiaomi_11_5g_lite_ne
data:
  message: command_dnd
  data:
    command: "priority_only"

Avviare una applicazione:

service: notify.mobile_app_xiaomi_11_5g_lite_ne
data:
  message: "command_launch_app"
  data:
    package_name: "com.facebook.katana"

Per conoscere il package_name dell’app che volete aprire andate con un computer alla pagina del play store, ricercate l’app, cliccateci per aprire la pagina dei dettagli dell’app stessa e leggete nell’indirizzo della pagina stessa in alto, la parte dopo “id=”. Ecco una immagine per aiutarvi a capire a cosa mi riferisco.

Package di facebook

Controllare i media con i comandi play, pause, play_pause, stop, next, previous, rewind e fast_forward:

service: notify.mobile_app_xiaomi_11_5g_lite_ne
data:
  message: "command_media"
  data:
    media_command: "play"
    media_package_name: "com.spotify.music"

Avviare Google Maps in modalità navigazione verso un indirizzo (da inserire in intent_uri dopo “q=”):

service: notify.mobile_app_xiaomi_11_5g_lite_ne
data:
  message: "command_activity"
  data:
    intent_package_name: "com.google.android.apps.maps"
    intent_action: "android.intent.action.VIEW"
    intent_uri: "google.navigation:q=piazza san pietro roma"

Conclusioni

A questo punto l’unico limite diventa la vostra fantasia. Avere la possibilità di comandare il proprio smartphone da Home Assistant apre ad un mondo di soluzioni che vanno ad incrociare la vostra casa con il dispositivo che vi segue ovunque.

Pensate ad esempio alla ricezione di avvisi dal vostro sistema di allarme in caso di intrusioni. Potreste forzare lo smartphone ad aumentare al massimo il volume della suoneria ed ignorare il non disturbare anche in piena notte.

Supporto reciproco

La realizzazione di questo articolo ha richiesto tempo, studio ed impegno.

Vi chiedo quindi mettere una mano sul cuore e l’altra sul portafogli per ricompensare il mio sforzo con un contributo libero:

Grazie.

Un piccolo extra

Avete mai sentito parlare di Tasker? E’ una app disponibile solo per Android, che per pochi euro consente di automatizzare il proprio smartphone ai massimi livelli. Non riuscirei a descrivervi il mondo di possibilità che vi può aprire. Sono costretto a rimandarvi ad uno studio empirico fatto di ricerche su Google, test e tante idee.

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *