Vai al contenuto
News Ticker
  • Zwave-Community.it diventa DOMOTICA Easy!!
  • Il portale dedicato alla DOMOTICA WIRELESS
  • Forum - Guide - Recensioni

REGISTRATI PER VISUALIZZARE TUTTI I CONTENUTI DEL NOSTRO PORTALE!

ATTENZIONE: Alcuni contenuti del sito sono visualizzabili sono dagli utenti registrati. 

REGISTRATI ADESSO alla nostra comunità e dai anche il tuo supporto per ottenere di più!

kead

[GUIDA] Sapere quando siamo a casa tramite rilevazione smartphone

Recommended Posts

Come tutti sapranno, Fibaro dispone di un sistema di geo localizzazione dell'utente che consentirebbe di far conoscere al sistema la presenza o meno in casa e quindi automatizzare a sua volta determinati scenari.

Purtroppo questo sistema non è affidabile e spesso non funziona...

Dopo svariate ricerche e prove ho trovato una valida nonché semplice alternativa che possa darmi una certa sicurezza di funzionamento.

Questa si basa su uno script che verifica se un dispositivo specifico (nella precisione il suo indirizzo IP) è presente o meno nella rete domestica ed aggiorna di conseguenza il valore di una variabile globale.

La presente guida è una traduzione di quanto realizzato dall'utente Sebcbien sul forum francese 

Please login or register to see this link.

 (che come sempre ringraziamo).

 

Please login or register to see this image.

 

1) Creare una variabile globale che sarà poi il riferimento dello stato di presenza o meno nell'abitazione (nel mio caso l'ho nominata kead_presente)

2) Trovare l'Ip del proprio smartphone (dalle impostazioni del proprio telefono)

3) Impostare un IP FISSO al proprio terminale o tramite le impostazioni di rete del dispositivo o tramite assegnazione di IP del router

 

A questo punto serve un appunto di dettaglio sul funzionamento dello script. La scena effettuerà un PING periodico nella rete locale per vedere se il dispositivo è presente o meno ed andrà ad aggiornare di conseguenza la variabile kead_presente.

Per eseguire il PING serve che sul dispositivo sia aperta una porta per la risposta. Da qui si aprono due soluzioni: una per dispositivi APPLE ed una per ANDROID.

  • Per Apple la soluzione è semplice. Basta attivare la sincronizzazione automatica con itunes via wifi. Cosi facendo il nostro smarphone si farà trovare sulla porta 62078
  • Per Android (ma può essere una soluzione alternativa anche per apple) è sufficiente installare l'app gratuita SONOS. Questa una volta lanciata e lasciata in background, manterrà aperta sul dispositivo la porta 3401 (non serve avere dispositivi SONOS per poter lanciare l'app).

Per verificare se le porte sono disponibili vi consiglio di installare su uno smarphone l'app FING (versione

Please login or register to see this link.

 e versione 

Please login or register to see this link.

 ) la quale consente di verificare gli IP della rete locale nonché testare le porte aperte.

 

4) Importare il dispositivo virtuale allegato e modificare:

 - mettere IP e PORTA dello smarphone negli appositi campi del dispositivo virtuale

 

xhzF7VM.png

 

 - all'interno del codice LUA cambiare il valore di local variable_globale_phone con il nome della variabile globale creata in precedenza

 

WpI1xJd.png

 

5) Importare le icone di stato (allegate sotto) e modificare gli ID nello script del main loop del dispositivo virtuale (vedi screen). In questo modo l'icona del dispositivo virtuale si aggiornerà in base allo stato della presenza.

08JVcpl.png

6) Creare una scena che prema il pulsante del dispositivo virtuale ogni minuto (o il tempo di loop che si desidera). 

Per chi usa GEA è sufficiente una piccola riga nel codice :)

Please login or register to see this code.

 

E' tutto.

Vi assicuro che il risultato è stabile ed efficace.

Da qui si possono gestire moltissimi scenari automatici basati sulla presenza o meno nell'abitazione.

Buon divertimento!

 

PS: Nell'allegato trovate il pulsante virtuale già modificato ed aggiornato comprese le icone di presenza per uomo e donna

Please login or register to see this link.

Share this post


Link to post
Share on other sites

Avevo fatto una cosa del genere con il vera3, però non sono soddisfatto. 

 

Sto cercando di capire come fare per usare la microlocalizzazione basata su BLE iBeacon. secondo me è comodo per far si che imperihome mostri la pagina della dashboard giusta per ogni stanza che visitiamo, o per attivare / disattivare scene basate sulla presenza nella singola stanza.

qualcosa da realizzare con un prodotto simile: http://estimote.com

Share this post


Link to post
Share on other sites

Avevo fatto una cosa del genere con il vera3, però non sono soddisfatto. 

 

Sto cercando di capire come fare per usare la microlocalizzazione basata su BLE iBeacon. secondo me è comodo per far si che imperihome mostri la pagina della dashboard giusta per ogni stanza che visitiamo, o per attivare / disattivare scene basate sulla presenza nella singola stanza.

qualcosa da realizzare con un prodotto simile: http://estimote.com

 

Cavolo! sicuramente è un obbiettivo interessante! Per il momento mi basta avere funzionante la presenza in casa.

Comunque se hai sviluppi rendici partecipi

Please login or register to see this image.

/emoticons/wink.png" alt=";)" data-emoticon="" srcset="http://www.zwave-community.it/uploads/emoticons/wink@2x.png 2x" width="20" height="20" />

Share this post


Link to post
Share on other sites

Purtroppo nonostante l'app Sonos la porta 3401 non mi risulta aperta (Samsung Note 4) però mi sembra che funzioni sulla porta 5060 (sip)

Share this post


Link to post
Share on other sites

Fai uno scan delle porte e vedi quale ti resta aperta.

Con android non ho esperienza. Magari c'è qualche altro metodo o app per aprire una porta desiderata (sicuramente visto l'apertura del sistema Android rispetto ad IOS)

Share this post


Link to post
Share on other sites

Molto utile... come trovo l'id delle icone? 

 

Grazie

 

ecco la guida: http://www.zwave-community.it/showthread.php?tid=89

Share this post


Link to post
Share on other sites

Fai uno scan delle porte e vedi quale ti resta aperta.

Con android non ho esperienza. Magari c'è qualche altro metodo o app per aprire una porta desiderata (sicuramente visto l'apertura del sistema Android rispetto ad IOS)

 

Ma va bene una qualsiasi porta ad eccezione della 80?

Perchè a me la 3401 non risulta aperta, mentre la 3500 sì.

Però inserendo la 3500 non funziona.

Share this post


Link to post
Share on other sites

Per Android, consiglio di usare TASKER e creare una regola tale per cui appena il telefonino si aggancia al vostro WIFI interno, aggiorna la variabile su HC2.

L'alternativa è quella come dice KEAD di tenere sempre in background una qualche APP che non è detto che funzioni sempre e che comunque ciuccia batteria.

Share this post


Link to post
Share on other sites

Per Android, consiglio di usare TASKER e creare una regola tale per cui appena il telefonino si aggancia al vostro WIFI interno, aggiorna la variabile su HC2.

L'alternativa è quella come dice KEAD di tenere sempre in background una qualche APP che non è detto che funzioni sempre e che comunque ciuccia batteria.

 

Ciao, buono a sapersi, grazie.

 

Però scusami, anche TASKER è un'app che lavora in background no?

 

Poi un'altra domanda: l'app IFTTT fa la stessa cosa di TASKER?

 

Grazie ancora.

Share this post


Link to post
Share on other sites

Tasker viene triggato. Si, ha una piccola parte che rimane in background.

Per esperienza personale, non mangia la batteria quanto altre app.

 

Non so di preciso cosa fa l'app di IFTTT, rimane sempre il dubbio (mio perchè sono un pò paranoico su ste cose) che anche se facesse le stesse cose di TASKER con IFTTT saresti perennemente collegato ad internet, con Tasker no e con IFTTT l'app invierebbe "comandi" (passatemi il termine) al sito che poi li invierebbe in chiaro su internet verso la vostra HC2/L, dovreste tenere esposta su internet la vostra centrale domotica. Per me pura follia solo a parlarne.

 

Tasker tutta la vita!

 

Please login or register to see this image.

/emoticons/smile.png" alt=":)" data-emoticon="" srcset="http://www.zwave-community.it/uploads/emoticons/smile@2x.png 2x" width="20" height="20" />

Share this post


Link to post
Share on other sites

Tasker viene triggato. Si, ha una piccola parte che rimane in background.

Per esperienza personale, non mangia la batteria quanto altre app.

 

Non so di preciso cosa fa l'app di IFTTT, rimane sempre il dubbio (mio perchè sono un pò paranoico su ste cose) che anche se facesse le stesse cose di TASKER con IFTTT saresti perennemente collegato ad internet, con Tasker no e con IFTTT l'app invierebbe "comandi" (passatemi il termine) al sito che poi li invierebbe in chiaro su internet verso la vostra HC2/L, dovreste tenere esposta su internet la vostra centrale domotica. Per me pura follia solo a parlarne.

 

Tasker tutta la vita!

 

Please login or register to see this image.

/emoticons/smile.png" alt=":)" data-emoticon="" srcset="http://www.zwave-community.it/uploads/emoticons/smile@2x.png 2x" width="20" height="20" />

 

Ok perfetto!

 

Visto che non sono molto pratico, potresti dirmi come si implementa una scena come la tua (aggiorna variabile HC2 se WiFi attivato sul cell)?

Grazie mille.

Share this post


Link to post
Share on other sites

scarica TASKER e aprilo, ovviamente devi essere collegato già al WIFI di casa.

 

Vai su Attività e premi il simbolo + in basso a destra

 

Please login or register to see this image.

 

Scegli un nome per l'attività

 

view?usp=sharing

 

adesso premi il segno + in basso al centro

 

view?usp=sharing

 

sulla schermata che ti compare vai su Filtro e scrivi HTTP

 

view?usp=sharing

 

Scegli OTTIENI HTTP oppure HTTP GET a seconda della lingua inglese o italiano. (dipende dal tuo telefonino)

 

view?usp=sharing

 

Compila questa schermata nel modo seguente

 

view?usp=sharing

 

Fai attenzione: nel Percorso dopo il /api/  non copiare quello che c'è. Quello funziona per un VD che ho io sulla mia HC2.

usa questa stringa: /api/sceneControl?id=&action=start

 

Ovviamente su HC2 avrai già fatto una scena che quando si attiva farà in modo di settare la presenza in casa ad ON.

 

Premi sul segno di Spunta in alto.

 

fatto questo, sempre su tasker, vai su Profilii e poi premi sul segno + in basso a destra e Seleziona la voce STATO

 

view?usp=sharing

 

Adesso scegli la voce RETE

 

view?usp=sharing

 

poi scegli WIFI Collegato

 

view?usp=sharing

 

Adesso nella voce SSID e nella voce MAC premi l'icona della lente di ingrandimento e scegli il nome della tua WIFI e il MAC address relativo al nome della tua WIFI

 

view?usp=sharing

 

Adesso torni indietro col tastino del tuo telefono e tasker ti chiederà quale attività abbinare a questo profilo.

Scegli ovviamente l'attività che abbiamo creato in precedenza.

 

Se qualcosa non ti è chiara o per altri problemi... (magari ho saltato qualche passaggio)  scrivi pure.

 

D.

Share this post


Link to post
Share on other sites

Dunque, la sto provando, però ho alcuni dubbi (e difatti mi dà errore).

 

Intanto la scena da associare: quando dici "una scena che quando si attiva farà in modo di settare la presenza in casa ad ON" che cosa intendi di preciso?

Io ho creato una variabile "PersoneInCasa" che, partendo da 0, dovrebbe incrementarsi a 1 quando il mio smartphone si collega alla WiFi.

Ma la scena che dovrei creare per fare ciò come dovrebbe triggerarsi? Qual è la condizione che fa scattare l'azione (ovvero l'incremento della variabile)?

 

E di conseguenza, nel campo Percorso dell'attività devo inserire pari pari la stringa che dici tu di inserire oppure in devo inserire l'ID della scena su HC2 di cui sopra?

 

Grazie e scusa le domande forse stupide.

Share this post


Link to post
Share on other sites

allora:

 

c'è sicuramente anche il modo di impostare direttamente la variabile ma non lo conosco. Quindi...

 

Crea (come hai già fatto) la variabile su HC2

Crea una scena su HC2 che imposti la variabile a 1 e disattiva nella scena la partenza automatica

 

Su Tasker al posto di ovviamente, metti l'ID della scena di cui sopra.

 

La scena verrà triggata direttamente da Tasker senza nessun'altra influenza ulteriore.

 

se hai altri problemi, scrivi pure...

 

D.

Share this post


Link to post
Share on other sites

allora:

 

c'è sicuramente anche il modo di impostare direttamente la variabile ma non lo conosco. Quindi...

 

Crea (come hai già fatto) la variabile su HC2

Crea una scena su HC2 che imposti la variabile a 1 e disattiva nella scena la partenza automatica

 

Su Tasker al posto di ovviamente, metti l'ID della scena di cui sopra.

 

La scena verrà triggata direttamente da Tasker senza nessun'altra influenza ulteriore.

 

se hai altri problemi, scrivi pure...

 

D.

 

Sì avevo fatto come dici tu (scena impostata manuale e inserito l'ID al posto di ) ma non va.

Il profilo si attiva correttamente non appena lo smartphone si collega alla Wifi, ma la scena su HC2 non viene attivata.

Lanciando manualmente l'attività su Tasker mi dà il seguente errore:

 

Errore di Socket per

Please login or register to see this link.

No route to host.

 

192.168.0.5 è l'IP dell'HC2 e 32 è l'ID della scena semplice semplice di attivazione della variabile "PersoneInCasa"su HC2 (che in realtà è un incremento):

 

--[[

%% autostart

%% properties

%% weather

%% events

%% globals

--]]

 

local startSource = fibaro:getSourceTrigger();

if (

 ()

or

startSource["type"] == "other"

)

then

fibaro:setGlobal("PersoneInCasa", tonumber(fibaro:getGlobalValue("PersoneInCasa")) + 1);

fibaro:call(4, "sendDefinedPushNotification", "36");

end

 

Come vedi nell'if non ho inserito nulla: devo invece inserirci qualche condizione?

Share this post


Link to post
Share on other sites

ti sei perso un pezzttino per strada:

 

Please login or register to see this link.

etc etc etc 

 

Utente e Password sono quelli della HC2

 

Siccome adesso sull'HC2 ti logghi con l'indirizzo e-mail che già contiene una chiocciola, ti consiglio di creare un'altro utente su HC2 ed usare quello nella stringa.

 

Fammi sapere...

Share this post


Link to post
Share on other sites

ti sei perso un pezzttino per strada:

 

Please login or register to see this link.

etc etc etc 

 

Utente e Password sono quelli della HC2

 

Siccome adesso sull'HC2 ti logghi con l'indirizzo e-mail che già contiene una chiocciola, ti consiglio di creare un'altro utente su HC2 ed usare quello nella stringa.

 

Fammi sapere...

 

Non va lo stesso.

 

Adesso l'errore è di tipo Input/Output.

 

Però ho notato che la scena se la lancio io manualmente non aggiorna la variabile.

Potrebbe essere quello il problema allora?

E se sì, come si potrebbe risolvere?

E' una scena davvero base.

Share this post


Link to post
Share on other sites

no no... il fatto che la scena non aggiorni la variabile dipende sicuramente da qualcos'altro...

 

Cerchiamo prima di capire dove stiamo sbagliando con TASKER

 

 

Se lanci a mano il task che errore ti da adesso?

Sei sicuro che il tuo telefonino prenda correttamente un indirizzo IP della tua rete?


Riesci a farmi un paio di screenshot del tuo tasker?

Share this post


Link to post
Share on other sites

Se lancio manualmente ho questo risultato:

 

11.33.18/E prot: 

Please login or register to see this link.

 serverport: 192.168.0.5 contenttype: 

11.33.18/E method: GET url: 

Please login or register to see this link.

 timout: 10000 dataisfile false save null

11.33.18/WakeLockManager acquired partial lock for M flags: 1 autorelease: true warn: true

11.33.18/WakeLockManager setClearAlarm: not setting, last set 28ms ago

11.33.18/WakeLockManager setClearAlarm: not setting, last set 30ms ago

11.33.18/E body isfile: false cont: null

11.33.21/E Errore di Socket per 

Please login or register to see this link.

 No route to host.

11.33.21/E result: stop task (error)

11.33.21/E Errore: 1

11.33.21/MacroEdit action finished exeID 1 action no 0 code 118 status: Err next 0

 

L'IP del mio telefonino è statico ed è 192.168.0.4 (appena ricontrollato).

 

Che screenshot vorresti vedere?

Share this post


Link to post
Share on other sites

Postami lo screen dell'action di Tasker

 

Scusami non capisco: intendi i dati che ho inserito per creare l'attività?

 

Perchè il risultato dell'attività te l'ho copiata prima (eccola di nuovo)

Please login or register to see this image.

Please login or register to see this link.

[/img]


Please login or register to see this image.

Please login or register to see this link.

[/img]

Share this post


Link to post
Share on other sites

si era questo che intendevo...

 

Ascolta, c'è qualcosa che non mi torna.

Sembra che tu abbia fatto tutto bene, a questo punto non vorrei che il problema stesse da qualche altra parte.

Fai così:

 

Trova una qualche APP per android che ti consenta di fare un PING (ce ne sono centinaia) dovrebbe essere un qualcosa tipo "network tools"

 

Installata l'app, prova a fare un PING verso l'indirizzo della tua HC2 e fammi sapere il risultato della cosa.

 

Ho l'impressione che il tuo telefono non raggiunga l'hc2 via rete. Controlliamo come ti ho detto......

Share this post


Link to post
Share on other sites

tu ovviamente stai facendo tutte queste cose col telefonino collegato al WIFI.

E navighi dal telefonino senza problemi giusto?

 

Scusa l'ovvietà ma tanto per non lasciare nulla al caso...


P.S. controlla che l'utente creato su HC2 sia Admin

Share this post


Link to post
Share on other sites

Crea un account o accedi per lasciare un commento

Devi essere un utente registrato per poter lasciare un commento

Crea un account

Iscriviti per un nuovo account nella nostra comunità. È facile!

Registra un nuovo account

Accedi Subito

Sei già registrato? Accedi da qui.

Accedi Adesso

×