domotica/README.md
2026-08-27 12:28:06 +02:00

2 KiB

Add-on Domotica Work

Negozio di add-on Home Assistant per la flotta. Un add-on qui dentro si installa su qualunque impianto e si aggiorna su tutti alzando un numero di versione.

Add-on disponibili

Cartella Nome Cosa fa
concentratore/ Concentratore Modbus Espone gli inverter ZCS al CCI e tiene rinfrescato il comando di modulazione

Registrare il repository su un impianto

Dall'interfaccia: Impostazioni → Add-on → Negozio → ⋮ → Repository, incollare l'URL del repository.

Oppure dal fleet, senza aprire nulla:

ha_manage_addon(istanza="cliente-xxx", action="add_repository",
                repository="https://git.domotica.work/domotica/addons")
ha_manage_addon(istanza="cliente-xxx", slug="<slug>", action="install")
ha_manage_addon(istanza="cliente-xxx", slug="<slug>", options={...})
ha_manage_addon(istanza="cliente-xxx", slug="<slug>", action="start")

Il Supervisor clona senza credenziali: il repository deve essere leggibile in anonimo dagli impianti. Si chiude a livello di rete, non con un flag privato.

Regole di casa

Ogni modifica al codice alza version in config.yaml. È l'unico meccanismo che fa comparire "Aggiorna" sugli impianti. Se si modifica il codice senza toccare la versione, gli impianti restano indietro e non lo segnala nessuno.

Niente valori cablati nel codice. IP, slave, porte, tempi: tutto in options con il relativo schema. È quello che permette allo stesso add-on di girare su venti impianti diversi senza toccarne il sorgente. Nel repository non deve finire niente di specifico di un cliente.

Ogni add-on ha un CHANGELOG.md. Home Assistant lo mostra nella schermata di aggiornamento: è lì che si legge cosa cambia prima di premere il pulsante.

Aggiungere un add-on nuovo

Copiare docs/modello/ in una cartella nuova alla radice del repository, scegliere uno slug univoco, riempire config.yaml. La cartella docs/ non viene letta dal Supervisor, quindi il modello non compare nel negozio.