Come Geolocalizzare uno Smartphone con Home Assistant

Come Geolocalizzare uno Smartphone con Home Assistant

di Vincenzo Caputo

02 Febbraio 2018

Home Assistant

Vincenzo Caputo

In questo articolo parleremo di come poter tracciare un dispositivo mobile su Home Assistant in modo da avere disponibile la sua posizione geografica e poter generare di conseguenza delle automazioni. Per esempio in base al fatto che uno smartphone (e quindi si presuppone il suo propietario) sia in casa o meno, o sia a lavoro e via dicendo.

Home Assistant dispone di una mappa basata su OpenStreetMap sulla quale possiamo definire e gestire delle aree di interesse e dove possiamo osservare in tempo reale la posizione dei dispositivi geolocalizzati.

Inoltre possiamo attivare dei simpatici indicatori nella pagina principale di HA, che ci mostrano al volo se i dispositivi controllati sono o meno in una delle aree definite (in casa, a lavoro, a scuola, ecc…).

Piccola nota: come tutte le tecnologie, anche questa può essere usata per scopi più o meno nobili. Vi ricordo pertanto che tracciare la posizione di una persona a sua insaputa, viola il diritto alla privacy e vi espone a possibili azioni legali. Quindi sottolineo ulteriormente, qualora la cosa fosse passata come sottintesa, che questo articolo serve solo ad illustrare possibili applicazioni di Domotica legati alla geolocalizzazione di uno o più dispositivi mobili. 

Il metodo che presenterò in quest’articolo prevede l’utilizzo dell’applicazione gratuita Owntracks da installare sul dispositivo da monitorare. Tale applicazione andrà configurata per comunicare ad intervalli predefiniti la posizione del dispositivo ad Home Assistant.

Quindi avremo due configurazione da effettuare, una sullo smartphone e una su Home Assistant.

Configurazione Smartphone:

Scaricate e installate Owntracks dal playstore o dall’appstore, apritela e recatevi nelle preferences. Poi scegliete Connection.

Come Geolocalizzare uno Smartphone con Home Assistant

Dentro Mode selezionate Private HTTP. 

Dentro Host scrivete una stringa tipo la seguente:

http://indirizzoiphomeassistant:8123/api/owntracks/nomepersona/nomedispositivo

Personalizzate la stringa con l’indirizzo IP del vostro HA (ip pubblico della vostra ADLS opportunamente forwardato sull’ip locale del raspberry sulla LAN), con il nome della persona (es. Vincenzo) che volete compaia in HA e con il nome del dispositivo (es. GalaxyS2)

Dentro identification scrivete Username: homeassistant e password che avete definito per l’accesso alla pagina di HA.

Le operazioni strettamente necessarie finiscono qui, tuttavia negli altri menu potete definire altri parametri tipo la frequenza di aggiornamento (locator backgrund interval) ed altri dettagli su cui non sto a dilungarmi troppo e che potrete sperimentare di volta in volta per ottenere la vostra migliore configurazione.

Configurazione Home Assistant:

Come al solito dobbiamo aprire il file configuration.yaml in modalità utente Root. Per prima cosa apriate il terminale sul vostro Raspberry e digitiate il comando:

sudo pcmanfm (come al solito è necessario ricordare che gli spazi tra un comando e l’altro sono indispensabili) e premete il tasto invio.

questo comando vi permetterà di entrare nel file manager di Raspbian in modalità utente Root in maniera tale da avere i permessi per modificare cartelle e file all’interno del vostro Raspberry.

Come Geolocalizzare uno Smartphone con Home Assistant

in seguito dovrete digitare nella barra di ricerca il seguente percorso:

/home/homeassistant/.homeassistant e a seguito premere invio

Come Geolocalizzare uno Smartphone con Home Assistant

In cima al file configuration.yaml troverete tra le primissime righe le voci Latitude e Longitude, seguite ciascuna da alcuni valori numerici. Questi numeri rappresentano le coordinate che HA identifica come Casa. Per curiosità ho sparato dentro Maps le coordinate che erano preconfigurate dopo la prima installazione di HA e mi sono ritrovato da qualche parte in America. Quindi come fare a sostituire quei numeri con quelli equivalenti alla posizione di casa nostra? Facile, aprite Google Maps ed andate a trovare casa vostra facendo un doppio click con il mouse proprio sopra casa vostra. Vedrete che nella barra degli indirizzi del browser le coordinate cambieranno restituendovi una stringa simile alla seguente:

https://www.google.it/maps/@40.6871497,16.5471079,20.25z?hl=it

Facile intuire che la parte numerica sia quella che vi interessa. Copiate la prima parte (quella che inizia con 40 fino alla virgola) e sostituitela, nel file configuration.yaml, con quella scritta nella voce Latitude e la seconda parte (quella che inizia con 16 sempre fino alla virgola) con quella scritta nella voce Longitude.

Ok, adesso abbiamo detto ad HA quel’è casa nostra. Ma se vogliamo definire altre zone da far riconoscere ad HA oltre che casa? Basterà andare in coda al file configuration.yalm oppure dove trovate la parola zone ed aggiumgere una stringa come nel seguente esempio:

zone:  - name: lavoro (oppure il nome della zona che state definendo)  latitude: 40.6871497 (coordinate individuate su Maps con lo stesso distema indicato in precedenza)  longitude: 16.5471079  radius: 250 (raggio di estensione dell'area che andate a definire)

Definite in questo modo, sotto la parola zone (che quindi non andrà riscritta) tutte le aree che desiderate.

Ora sempre nel file configuration.yaml andiamo ad aggiungere in coda un ulteriore stringa per informare HA che stiamo lavorando con il servizio di Owntracks. Scrivete esattamente la stringa come segue:

device_tracker:  - platform: owntracks_http

Chiudete il file, salvate e riavviate il sistema. Se avete fatto tutto bene vedrete delle schermate dentro Home Assistant come le immagini di esempio a seguire.

 

Come Geolocalizzare uno Smartphone con Home Assistant

 

Come Geolocalizzare uno Smartphone con Home Assistant

Ora vi lascio al solito video dimostrativo e vi saluto augurandovi una buona visione!

Produrre e aggiornare contenuti su vincenzocaputo.com richiede molto tempo e lavoro. Se il contenuto che hai appena letto è di tuo gradimento e vuoi supportarmi, clicca uno dei link qui sotto per fare una donazione.

Vincenzo Caputo

Vincenzo Caputo

Nato a Matera, il 1° novembre 1977. Sono da sempre appassionato di tecnologia e ho un'esperienza lavorativa ventennale nel settore IT. Mi piace sperimentare e cercare sempre nuove soluzioni e soprattutto mi piace comunicare le mie esperienze agli altri.

Disqus loading...