Leider bietet HA dafür keinen Dienst an um eine Integration per Automatisierung oder Script Neu laden zu können.
Man kann aber per rest_command eine beliebige Integration Neu laden.
Dazu wird der Langlebige Zugangs-Token benötigt. Diesen könnt ihr euch in der HA App im Bereich Profil erstellen.
Des Weiteren benötigt ihr entry_id der jeweiligen Integration. Diese findet ihr unter config/.storage/core.config_entries der Order .storage ist versteckt d.h. Ihr müsst im Datei Explorer einstellen, dass auch versteckte Dateien angezeigt werden. die Datei core.config_entries am besten auf den Rechner runter laden, diese könnt Ihr dann in aller Ruhe nach den benötigten entry_id durchsuchen.
Der rest_command sieht dann folgendermassen aus:
Code: Alles auswählen
reload_integration_xy:
url: https://HA-IP:port/api/config/config_entries/entry/123/reload
method: POST
headers:
authorization: !secret api_bearer_token
content-type: 'application/json'
Den Langlebige Zugangs-Token am besten in der secrets.yaml ablegen
Code: Alles auswählen
api_bearer_token: 'Bearer 456'
Wichtig! Das Wörtchen Bearer muss vor den api_bearer_token stehen.
den rest_command könnt Ihr dann einfach in Automatisierungen oder Skripten als Aktion aufrufen.
Ich habe z.B. eine Integration die leider nicht immer zuverlässig nach einen HA Neustart geladen wird.
Also habe ich mir eine Automation erstellt, welche 1 min nach dem Neustart von HA prüft ob eine Entität der Integration verfügbar ist, wenn nicht rufe ich den rest_command auf.
Eine mögliche Automatisierung könnte z.B. so aussehen:
Code: Alles auswählen
alias: Neuladen Integration xy
description: ''
mode: single
trigger:
- platform: homeassistant
event: start
condition: []
action:
- delay:
hours: 0
minutes: 1
seconds: 0
milliseconds: 0
- condition: state
entity_id: media_player.xy
state: unavailable
- service: rest_command.reload_integration_xy
Nicht schön, aber selten!
Gruß
Osorkon