Kodi Modul, STATE ist fehlerhaft


#1

Nachdem ich das Gerät gelöscht und wieder neu angelegt habe funktioniert es auch teilweise. :wink:

image

Der Raspberry Pi mit Kodi läuft dauernd, da er zusätzlich auch noch Homegear-Gateway ist. Als Fernbedienung habe ich die OSMC-Remote, Kodi lässt sich sehr angenehm damit bedienen. Da der Fernseher damit nicht ein- oder ausgeschaltet werden kann, frage ich den Bildschirmschoner oder die Lautstärkeregelung ab.

Diese schaltet dann eine Zigbee-Steckdose ein sobald sich die Lautstärke ändert oder der Bildschirmschoner aus geht. Geht der Bildschirmschoner an, wird der Fernseher abgeschaltet.

Grundfunktionalität ist also nach erneutem Erzeugen des Gerätes da. Nun würde ich noch gerne bei bestimmten Events den Player in den Pause-Modus bringen.

Leider schweigt sich die Referenz aus, was ich an PLAY_PAUSE senden muss, damit etwas passiert. Weiss da jemand mehr?


#2

Es wir mir laut Log auch nur der STATE und die PLAYER_ID zurückgegeben, dass funktioniert allerdings irgendwie auch nicht dauernd. Ich würde erwarten, dass auch PLAY_PAUSE geändert wird.

Die Änderung der Lautstärke ist da zuverlässig, da wird jede Änderung erkannt, auch wenn die Statusänderungen nicht mehr angezeigt werden.

11/25/18 21:04:41.300 Module Kodi: Info: VOLUME of peer 162 with serial number 1111111111:2 was set to 0x42696E010000000C000000043171C70000000007.
11/25/18 21:04:48.379 Module Kodi: Info: VOLUME of peer 162 with serial number 1111111111:2 was set to 0x42696E010000000C000000043200000000000007.
11/25/18 21:07:32.909 Module Kodi: Info: PLAYER_ID of peer 162 with serial number 1111111111:9 was set to 0x42696E01000000080000000100000001.
11/25/18 21:07:32.910 Module Kodi: Info: STATE of peer 162 with serial number 1111111111:9 was set to 0x42696E01000000080000000100000002.

Wechselt man bei Kodi (mit einer Fernbedienung) jetzt von Play auf Pause und wieder zurück, wird das irgendwie vergessen. Danach funktioniert das erstmal nicht mehr. Nach einem Stoppen der Wiedergabe geht es wieder.


#3

Ist aktuell immer noch so, die Zustände (PLAY, PAUSE) werden nur einmal gesetzt. Erst Stoppen setzt die Zustandsverarbeitung wieder zurück, so dass wieder genau einmal von Play auf Pause erkannt wird.

Benutzt ausser mir eigentlich noch jemand das Kodi-Modul?


#4

Hallo @job,

irgendwie habe ich den Thread übersehen, sorry…

https://ref.homegear.eu/device.html?directory=Kodi&file=Kodi.xml&familyLink=kodi&name=Kodi#affixSubsubsection3_0_1

Die Variable ist vom Typ ACTION, also ein true.

Die Variable hat keinen Zustand (Typ ACTION), daher kann sie sich nicht ändern. Das ergibt sich aus der Kodi-API.

Wechselt man bei Kodi (mit einer Fernbedienung) jetzt von Play auf Pause und wieder zurück, wird das irgendwie vergessen. Danach funktioniert das erstmal nicht mehr. Nach einem Stoppen der Wiedergabe geht es wieder.

Jetzt sollten sich wiederholende Werte verarbeitet werden. Ändert das etwas? Falls nicht, muss ich mir mal eine Testumgebung aufbauen. Eigentlich habe ich Kodi sogar bei mir am Laufen, nur immer noch nicht in Homegear eingebunden :roll_eyes: - das wäre doch jetzt mal ein Anlass.

Viele Grüße

Sathya


#5

Ahh. Verstehe. ich hatte bei ACTION direkt an einen String wie “PLAY” oder “PAUSE” gedacht.

Dann wechselt die PLAY_PAUSE bei jeder Nachricht immer hin und her. Wenn man also einen definierten Status braucht, muss man vorher den State analysieren.

Ich habe die Funktionen z.Z. in openHAB umgesetzt, da hat man ein Player-Control (Play,Pause, Fwd, Prev), daher bin ich davon ausgegangen, das wäre auch in der Kodi-API so. Die kenne ich eher gar nicht.

Jetzt? Oder nach dem nächsten Nightly?

Vielen Dank!

Joachim


#6

So, hatte jetzt endlich mal etwas Zeit das auszutesten. Es funktioniert leider erst halb.

  • Der Wechsel von Play->Pause wird jetzt immer registriert.
  • Der Wechsel von Pause->Play leider nicht.