gibt es eine Möglichkeit das Dashboard in der HA Android Companion App automatisiert nach einem Update zu reloaden?
Nach jedem HA Update muss ich das Dashboard manuell neu laden damit wieder alles korrekt dargestellt wird.
Daran wäre ich auch sehr interessiert. ist zwar nur gering nervig, aber da ich ein altes Tablet als dauerhaftes Dashboard nutze, wäre das nice to have.
Vielleicht könnte man etwas mit Tasker bauen das die HA App nach dem Update neustartet aber gibt es keinen HA Befehl der das Dashboard neu lädt nach dem Update?
Wo soll der Befehl denn das Dashboard neu laden? Am PC (beim ersten einschalten?), am Smartphone (beim ersten App öffnen?), am Display, am FireTab … ?
Wird so imho nicht funktionieren.
Es braucht halt einen Watchdog auf dem Tablet, der prüft ob die HA Companion App läuft und sie startet, wenn nicht. Die Frage ist also, wer kennt einen solchen Watchdog?
Ich hab so ein Script laufen das einen Page Reload macht wenn der Text „Home Assistant wurde vollständig neu gestartet“ kommt. War ursprünglich dafür das nach einem Reboot Sensoren nicht aktualisiert wurden. Ich denke das müsste reichen da ich nie diese „Cache leeren“ Probleme habe.
folgendes Script in den Ordner “/config/www” legen (oder einen Unterordner darunter)
bei mir liegt das Script zum Beispiel da
function refreshOnLovelaceChange() {
var ha = document.querySelector("home-assistant");
if (!ha || !ha.shadowRoot) {
return;
}
var nm = ha.shadowRoot.querySelector("notification-manager");
if (!nm || !nm.shadowRoot) {
return;
}
var haToast = nm.shadowRoot.querySelector("ha-toast");
if (!haToast) {
return;
}
if (haToast.shadowRoot.firstElementChild.firstElementChild.firstElementChild.textContent === 'The Lovelace UI configuration for this dashboard was updated. Refresh to see changes?') {
location.reload()
}
if (haToast.shadowRoot.firstElementChild.firstElementChild.firstElementChild.textContent === 'Home Assistant wurde vollständig gestartet!') {
location.reload()
}
}
setInterval(refreshOnLovelaceChange, 500);
dann in der configuration.yaml folgenden Eintrag hinzufügen (mit eurem Pfad, Beispiel zeigt meinen)
# Loads default set of integrations. Do not remove.
default_config:
# Load frontend themes from the themes folder
frontend:
themes: !include_dir_merge_named themes
extra_module_url:
- /local/_my/code/js/reload_dashboard.js <------------- (/local/ ist www)
- /local/community/lovelace-card-mod/card-mod.js
# Text to speech
tts:
- platform: google_translate
neu starten und dem Start zuschauen, wenn die Notification “Home Assistant wurde vollständig gestartet!” links unten auftaucht sollte danach die Seite neu geladen werden.