Calendario famiglia condiviso su Home Assistant

Calendario famiglia condiviso su Home Assistant: Guida completa

Un calendario di famiglia condiviso è uno strumento essenziale per coordinare appuntamenti medici, compleanni, eventi scolastici, attività sportive e impegni quotidiani di tutti i membri della famiglia. Integrare questo calendario in Home Assistant trasforma la semplice visualizzazione degli eventi in un potente sistema di automazioni che può inviare promemoria vocali, preparare automaticamente la casa per eventi specifici, o sincronizzare l’illuminazione e il clima in base agli impegni della giornata.

Questa guida completa ti accompagnerà attraverso tutte le fasi: dalla scelta del calendario (Google Calendar, iCloud, CalDAV locale), all’integrazione in Home Assistant, fino alla creazione di automazioni avanzate e dashboard personalizzate per tutta la famiglia.


Perché integrare un calendario in Home Assistant

Vantaggi principali:

  • Automazioni basate su eventi: “15 minuti prima dell’appuntamento dal dentista → annuncio vocale su tutti gli Echo + accendi luci ingresso”

  • Promemoria contestuali: notifiche su smartphone solo quando sei a casa o in determinate zone geografiche

  • Preparazione automatica casa: “Ore 18:00 compleanno figlio → attiva luci festa + playlist bambini + temperatura 22°C”

  • Dashboard centralizzata: visualizza tutti gli impegni familiari su tablet murali o display smart

  • Sincronizzazione multi-piattaforma: eventi visibili su Home Assistant, smartphone, PC, tablet contemporaneamente

  • Privacy e controllo: dati familiari gestiti localmente o su servizi controllati, non su cloud terzi


Metodo 1: Integrazione Google Calendar (consigliato per principianti)

Google Calendar è la scelta più semplice e versatile, perfettamente supportata da Home Assistant con integrazione ufficiale.

Passo 1: Creare il calendario famiglia su Google

  1. Accedi a Google Calendar

  2. Nella barra laterale sinistra, clicca sul + accanto a “Altri calendari”

  3. Seleziona Crea nuovo calendario

  4. Compila i campi:

    • Nome: “Famiglia [Cognome]” o “Casa”

    • Descrizione: “Calendario condiviso famiglia – eventi, appuntamenti, compleanni”

    • Fuso orario: Europe/Rome

  5. Clicca Crea calendario

Passo 2: Condividere il calendario con i familiari

  1. Trova il calendario appena creato nella lista “I miei calendari”

  2. Clicca sui tre puntini > Impostazioni e condivisione

  3. Scorri fino a Condividi con persone specifiche

  4. Clicca Aggiungi persone e inserisci email dei familiari

  5. Scegli permessi:

    • Apporta modifiche agli eventi: tutti possono aggiungere/modificare eventi

    • Visualizza tutti i dettagli degli eventi: solo lettura

  6. Clicca Invia

Ora tutti i familiari riceveranno invito e vedranno il calendario sulla propria app Google Calendar.

Passo 3: Configurare l’integrazione Google Calendar su Home Assistant

Metodo semplice via interfaccia UI:

  1. Vai su Impostazioni > Dispositivi e servizi > Aggiungi integrazione

  2. Cerca Google Calendar

  3. Clicca su Google Calendar ufficiale

  4. Segui il flusso OAuth per autorizzare Home Assistant ad accedere al tuo account Google

  5. Accedi con l’account Google che possiede il calendario famiglia

  6. Autorizza Home Assistant a leggere i calendari

  7. Seleziona quali calendari importare (spunta “Famiglia [Cognome]”)

  8. Conferma e completa la configurazione

Verifica installazione:

Vai su Strumenti per Sviluppatori > Stati e cerca entità tipo:

calendar.famiglia_cognome

Se presente, l’integrazione funziona correttamente.

Passo 4: Creare eventi di test

Aggiungi un evento di prova sul calendario Google (da app smartphone o web) e verifica che compaia in Home Assistant dopo qualche minuto (sincronizzazione automatica ogni 15 minuti).


Metodo 2: Calendario locale CalDAV (per utenti avanzati e privacy)

Per chi preferisce non utilizzare servizi cloud Google, CalDAV permette di ospitare calendari su server locale (Nextcloud, Radicale, Baïkal).

Requisiti:

  • Server CalDAV funzionante (Nextcloud è la soluzione più completa)

  • Accesso rete al server CalDAV da Home Assistant

  • Credenziali account CalDAV

Configurazione Home Assistant CalDAV:

Aggiungi al file configuration.yaml:

calendar:
  - platform: caldav
    username: tuo_username
    password: tuo_password
    url: https://tuo-server-nextcloud.com/remote.php/dav
    calendars:
      - Famiglia
      - Compleanni
      - Appuntamenti medici

Riavvia Home Assistant. Le entità calendario compariranno come:

calendar.famiglia
calendar.compleanni
calendar.appuntamenti_medici

Vantaggi CalDAV locale:

  • Privacy totale, dati su server controllato

  • Nessuna dipendenza da Google/Apple

  • Maggiore controllo e personalizzazione

Svantaggi:

  • Richiede manutenzione server CalDAV

  • Configurazione più complessa

  • Sincronizzazione smartphone richiede app terze (DAVx⁵ su Android)


Metodo 3: Calendario iCloud (per famiglie Apple)

Per famiglie con ecosistema Apple completo, iCloud Calendar può essere integrato.

Nota importante: Home Assistant non ha integrazione ufficiale iCloud Calendar nativa. Servono workaround:

  1. Condivisione pubblica read-only: esporta calendario iCloud come URL pubblico .ics e importa in Home Assistant con integrazione iCal

  2. Sincronizzazione CalDAV: iCloud supporta CalDAV, configurabile come Metodo 2

  3. Home Assistant iCloud Custom Integration: componente community (HACS) per accesso diretto

Consiglio: se usi Apple, considera sincronizzazione bidirezionale iCloud ↔ Google Calendar tramite app terze (SyncGene, CalendarBridge) e poi usa integrazione Google Calendar su Home Assistant.


Creare dashboard calendario famiglia

Una volta integrato il calendario, crea una dashboard dedicata visibile su tablet murali o smartphone familiari.

Card Calendario semplice:

Modifica dashboard Lovelace e aggiungi:

type: calendar
entities:
  - calendar.famiglia_cognome
  - calendar.compleanni
title: Calendario Famiglia
initial_view: dayGridMonth

Questa card mostra vista mensile con tutti gli eventi.

Card Eventi prossimi (più utile):

type: entities
title: Prossimi Eventi Famiglia
entities:
  - entity: calendar.famiglia_cognome
    attribute: message
    name: Prossimo evento
  - entity: calendar.famiglia_cognome
    attribute: start_time
    name: Quando
  - entity: calendar.famiglia_cognome
    attribute: location
    name: Dove

Mostra dettagli del prossimo evento in arrivo.

Card Markdown personalizzata con template:

type: markdown
title: Oggi in Famiglia
content: |
  {% set events = state_attr('calendar.famiglia_cognome', 'message') %}
  {% if events %}
    **Oggi:** {{ events }}
  {% else %}
    Nessun evento oggi, godetevi la giornata! 🎉
  {% endif %}

Automazioni calendario avanzate

Il vero potere dell’integrazione calendario in Home Assistant emerge con le automazioni.

Esempio 1: Promemoria vocale appuntamenti

automation:
  - alias: "Promemoria vocale 30 min prima evento"
    description: "Annuncio su Echo 30 minuti prima di ogni evento calendario"
    trigger:
      platform: calendar
      entity_id: calendar.famiglia_cognome
      event: start
      offset: "-00:30:00"  # 30 minuti prima
    action:
      - service: notify.alexa_media
        data:
          target:
            - media_player.echo_soggiorno
            - media_player.echo_cucina
          data:
            type: announce
          message: >
            Attenzione! Tra 30 minuti avete: {{ trigger.calendar_event.summary }}.
            {% if trigger.calendar_event.location %}
            Luogo: {{ trigger.calendar_event.location }}.
            {% endif %}

Questa automazione annuncia su tutti gli Echo 30 minuti prima di ogni evento.

Esempio 2: Preparazione automatica casa per eventi specifici

automation:
  - alias: "Prepara casa per compleanno"
    description: "Automazione festa quando calendario contiene 'Compleanno'"
    trigger:
      platform: calendar
      entity_id: calendar.famiglia_cognome
      event: start
      offset: "-01:00:00"  # 1 ora prima
    condition:
      - condition: template
        value_template: "{{ 'Compleanno' in trigger.calendar_event.summary }}"
    action:
      - service: light.turn_on
        target:
          entity_id: light.luci_soggiorno
        data:
          rgb_color: [255, 0, 255]  # Rosa/viola festa
          brightness: 255
      - service: media_player.play_media
        target:
          entity_id: media_player.spotify_casa
        data:
          media_content_type: playlist
          media_content_id: "spotify:playlist:37i9dQZF1DX0kbJZpiYdZl"  # Happy Hits
      - service: climate.set_temperature
        target:
          entity_id: climate.termostato_soggiorno
        data:
          temperature: 22

Un’ora prima di eventi con “Compleanno” nel titolo: luci colorate, playlist festa, temperatura confortevole.

Esempio 3: Notifica push solo se a casa

automation:
  - alias: "Notifica evento solo se presente"
    trigger:
      platform: calendar
      entity_id: calendar.famiglia_cognome
      event: start
      offset: "-00:15:00"  # 15 minuti prima
    condition:
      - condition: state
        entity_id: person.nome_persona
        state: "home"
    action:
      - service: notify.mobile_app_smartphone
        data:
          title: "Promemoria Evento"
          message: >
            Tra 15 minuti: {{ trigger.calendar_event.summary }}

Invia notifica push solo se la persona è effettivamente a casa.

Esempio 4: Accensione luci ingresso prima del rientro