Information
In diesem How-To beschreibe ich, wie der Miniserver auf Statusänderungen von XBMC und Kodi reagieren kann.
Dazu wird in XMBC/Kodi ein Addon installiert und auf den Miniserver eingestellt.
Mit virtuellen Eingängen reagiert dann der Miniserver auf diese Aktionen:
- Beim Start eines Filmes wird das Licht ausgeschaltet, eine vordefinierte Szene angewählt oder die Storen heruntergefahren
- Bei Pause wird das Licht hochgedimmt (Klopause), leider geht das Verteilen von Eis (noch) nicht
Der Fantasie sind keine Grenzen gesetzt.
Installation Addon in XBMC oder Kodi
Das beiliegende Addon herunterladen
service.callback.handler-v1.4.1.zip (buki: neue events und event types hinzugefügt (screensaver, tv, video, ...)
service.callback.handler-v1.3.zip (CF: Typo in unknown korrigiert, xbmc_started/xbmc_stopped in kodi_started/kodi_stopped geändert)
service.callback.handler-v1.2.zip (Original von Tefi)
Das Addon installieren
Dies erfolgt unter Programme > Mehr... und dann aus "Zip-Datei installieren"
Addon konfigurieren
Dann "Benutzer-Addons > Alle > Callback Handler" anwählen und konfigurieren.
Die UDP-Adresse ist die Adresse des Miniservers. Danach einen beliebigen Port (Default 7000) angeben, über welchen Kodi mit dem Miniserver Daten austauschen soll.
Gibt es mehrere Kodi-Installationen, ist es sinnvoll, jeweils unterschiedliche Ports pro Kodi-Installation zu wählen und bei den virtuellen Eingängen zu vergeben.
Für Kodi kann eine Start-Lautstärke angegeben werden.
Seit v1.4 kann die Zeit zwischen dem versenden von UDPs zwischen 1-15 Sekunden konfiguriert werden.
Virtuellen UDP Eingang und UDP Eingangsbefehle anlegen
Zuerst einen UDP Eingang anlegen. Hier Senderadresse (Adresse des Kodi Players) und den Port (Default 7000) angeben.
Danach werden UDP Eingangsbefehle, unten sind deren vier, angegeben (Tabelle siehe unten).
Jeder Befehl wird als Digital-Eingang konfiguriert. Bei der Befehlserkennung kommt jeweils das Keyword aus der Tabelle.
Folgende Befehle sind möglich:
Status | Funktion | Beispiele |
---|---|---|
| Beim Starten und Stoppen des Kodi-Services | Leinwand hochfahren oder runterfahren, Raum abdunkeln |
| Beim aktivieren und deaktivieren des Kodi Screensavers | Beleuchtung manipulieren, Periferie ausschalten. |
| Filme | Beleuchtung dimmen oder abschalten, bei Pause Beleuchtung wieder hochdimmen |
| Serien | Beleuchtung dimmen oder abschalten, bei Pause Beleuchtung wieder hochdimmen |
| Musik | Discokugel einschalten |
| Video | Title und Filename z.B. zur Protokollierung der angesehenen (YouTube) Videos |
| TV (in Verbindung mit Mediaportal TV Server PVR) | Bei Title wird der "Sender Name | Sendung" übermittelt. Protokollierung oder TTS ansagen. Bei "Sendung" werden die EPG Daten übermittelt. |
| Unbekannte Medien, beispielsweise Streams oder Video-Bildschirmschoner | wie oben |
unknown_stopped
unknown_stopped kommt manchmal (immer?), wenn Serien gestoppt werden → v1.4 ich verwende keine Serien, dies könnte jedoch behoben sein. Bitte verändertes Verhalten ggf. in der Loxone Config berücksichtigen.
Die Befehle können danach beliebig verwendet werden.
Christian Fenzl: Danke an Jens Beckers, der auf den Typo in "unknown" hingewiesen hat. Da der eigentliche Programm-Autor das bisweilen nicht korrigiert hat, habe ich mir erlaubt, hier die Version 1.3 hochzuladen und die Doku um Serien (episode) zu ergänzen. Die Version 1.3 verwendet nun korrekterweise den Status unknown (statt unkown), außerdem wird kodi_started und kodi_stopped (statt xbmc_started und xbmc_stopped) übermittelt.
Jens Beckers: Bei movie_title=%s wird zwar bei wenigen Filmen der Titel an Loxone weitergegeben, aber einen Schaltbefehl zu generieren, wenn ein bestimmter Titel angezeigt wird, erscheint mir nur bedingt nützlich. Möglicherweise habe ich den Zweck dieses Status aber auch nur missverstanden.
buki: Tefi kontaktiert und dann Version 1.4 veröffentlicht. Getestet mit Kodi 17.3 Krypton und Mediaportal PVR auf OpenElec und raspi 3.
Fehlersuche
Kommen die Befehle nicht an, so kann dies in der Loxone Config einfach gemonitored werden, indem der UDP Monitor gestartet wird.