projects:iotaiuto:presence

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
projects:iotaiuto:presence [2021/11/23 18:49] fmussatiprojects:iotaiuto:presence [2021/11/26 16:28] (current) fmussati
Line 4: Line 4:
 Allo scopo di ricevere una notifica all'entrata di un utente in una zona, sia essa l'abitazione, la scuola, o il luogo di lavoro, utilizzando il gps(global positioning system), se le coordinate in cui si trova l'utente sono all'interno di un area decisa. Ovviamente si potrebbero utilizzare altri sistemi per il tracciamento, se io fossi connesso al wifi di casa, all'interno della mia abitazione. Allo scopo di ricevere una notifica all'entrata di un utente in una zona, sia essa l'abitazione, la scuola, o il luogo di lavoro, utilizzando il gps(global positioning system), se le coordinate in cui si trova l'utente sono all'interno di un area decisa. Ovviamente si potrebbero utilizzare altri sistemi per il tracciamento, se io fossi connesso al wifi di casa, all'interno della mia abitazione.
  
-Ho utilizzato la funzione apposita dell'applicazione home assistant chiamata telegram_bot, che gestisce un utente telegram virtuale e non reale(nome bot: HassIotAiutoBot) e notify (Si occupa di gestire le notifiche sulle piattaforme come email o telegram) in configuration yaml. Il bot verra poi uilizzato per inviare una notifica all'id del gruppo(IotAiutoHassNotify), attraverso il messaggio:+Ho utilizzato la funzione apposita dell'applicazione home assistant chiamata telegram_bot, che gestisce un utente telegram virtuale e non reale (nome bot: HassIotAiutoBot) e notify (Si occupa di gestire le notifiche sulle piattaforme come email o telegram) in configuration yaml.
  
-  {{ trigger.to_state.attributes.friendly_name }}'s position: {{ trigger.to_state.state }} +Il bot verra poi uilizzato per inviare una notifica all'id del gruppo(IotAiutoHassNotify), attraverso il messaggio: 
 + 
 +  {{ trigger.to_state.attributes.friendly_name }}'s position: {{ trigger.to_state.state }} 
 +                          ↧                            ↧                      ↧ 
 +                  Nome del soggetto            è in posizione:       zona del soggetto
  
 se la posizione iniziale è diversa dall'attuale. se la posizione iniziale è diversa dall'attuale.
 La configuarazione in automation è: La configuarazione in automation è:
  
-  alias: 'Device State Change Alert' +  alias: 'Device State Change Alert'                                                                 |     Nome dell'automazione 
-  trigger: +  trigger:                                                                                           |     Specifico il trigger 
-    platform: state +    platform: state                                                                                      Controllo il cambio di stato 
-    entity_id: person.admin +    entity_id: person.admin                                                                              Dell'oggetto (l'utente admin) 
-  condition: +  condition:                                                                                         |     Specifico eventuali condizioni 
-    condition: template +    condition: template                                                                                  Natura condizione 
-    value_template: '{{ trigger.to_state.state != trigger.from_state.state }}' +    value_template: '{{ trigger.to_state.state != trigger.from_state.state }}'                       |     È diverso dallo stato precedente 
-  action: +  action:                                                                                                Specifico l'azione 
-    - service: notify.notify_me +    - service: notify.notify_me                                                                          Uso il servizio di notifica 
-      data_template: +      data_template:                                                                                 |     Creazione messaggio 
-        message: > +        message: >                                                                                   |     Testo mess. 
-          {{ trigger.to_state.attributes.friendly_name }}'s position: {{ trigger.to_state.state }} +          {% if trigger.to_state.state == 'not_home' %}                                              |     Se lo stato dell'soggetto trigger è 'not_home' 
-        title: "ZoneChanged"+            {{ trigger.to_state.attributes.friendly_name }}'s position: outside                      |     Test mess. (se il soggetto non si trova in alcuna zona (uscita)) 
 +          {% else %}                                                                                     Altrimenti 
 +            {{ trigger.to_state.attributes.friendly_name }}'s position: {{ trigger.to_state.state }} |     Test mess. (entrata) 
 +          {% endif %}                                                                                |     Fine della condizione 
 +        title: "ZoneChanged"                                                                         |     Titolo mess. 
 + 
 +Setup di presence detection: 
 +Ovviamente ci sono vari modi in cui l'host(il rasperry pi, la schedina connessa alla rete wifi) può controllare se un dispositivo è in casa: 
 +  1. ping sensor 
 +  2. Unifi integration setup 
 +  3. Hass companion app (Quella che è stata utilizzata) 
 +  4. iCloud for iOS devices 
 + 
 +Spiegazioni setups: 
 + 
 +  1. Home assistant farà un ping al telefono, ossia controllerà se esso  
 +  è connesso al wifi, se risponde allora è connesso alla stessa rete,  
 +  altrimenti verra considerato come non a casa. 
 + 
 +  2. Se il router di casa è compatibile con questa seconda funzionalità  
 +  di h.ass allora basterà controllare se il telefono è nella lista di  
 +  dipositivi connessi al wifi (Peferibile al ping se possibile).
  
-Risultato: +  3. Come detto precedentemente l'app userà il gps per tracciare il  
-  ZoneChanged +  dispositivo e controllare se le sue coordinate rientrano nelle aree  
-  admin's position: home+  interessate. 
 +  Questa opzione permette di sapere sempre dove sei, mentre con quelle  
 +  precedenti è possibile sono sapere se il telefono è connesso al wifi.
  
 +  4. Specifico per iOS, utilizza il iCloud di apple, per conoscere la 
 +  posizione. 
  • projects/iotaiuto/presence.1637689759.txt.gz
  • Last modified: 2021/11/23 18:49
  • by fmussati