Kodi Lichtsteuerung - Wiki Code geht nicht?

Begonnen von Marc1993, 08 Oktober 2015, 21:13:55

Vorheriges Thema - Nächstes Thema

Marc1993

Hallo,

ich versuche grade mein Kodi via FHEM zu steuern. Habe im Wiki folgenden Code gefunden:
define notify_KODI_status notify wz_KODI:playStatus.* { if (ReadingsVal("wz_KODI", "type", "") eq "movie"){
   if (ReadingsVal("wz_KODI", "playStatus", "") eq "playing"){
       fhem("set FS20_Licht off");
    }
    if (ReadingsVal("wz_KODI", "playStatus", "") eq "paused"){
       fhem("set FS20_Licht on");
    }
   }
}


den mag FHEM ja mal gar nicht:

Unknown command if, try help. Unknown command fhem("set, try help. Unknown command }, try help. Unknown command if, try help. Unknown command fhem("set, try help. Unknown command }, try help. Unknown command }, try help. Unknown command }, try help.
Habe in erinnerung das dort keine Leerzeichen sein dürfen. Auch das entfernen der Leerzeichen bringt nichts :(
Versuche schon seit Stunden das ans Laufen zu bringen. Bekomme es nicht hin  :-[

Den Code habe ich auf meine Config angepasst:


define notify_KODI_status notify KODI:playStatus.* { if (ReadingsVal("KODI", "type", "") eq "movie"){
   if (ReadingsVal("KODI", "playStatus", "") eq "playing"){
       fhem("set HM_1A93E1_Sw off");
    }
    if (ReadingsVal("KODI", "playStatus", "") eq "paused"){
       fhem("set HM_1A93E1_Sw on");
    }
   }
}


Kodi ist erfolgreich in FHEM eingebunden.

P.A.Trick

Stammt die Fehlermeldung von dem Beispiel Code? Wenn ja, das ist klar, denn wahrscheinlich hast du keine Devices die FS20_Licht heißen, oder?
Cubietruck,RPI,QNAP Ts-419p+, FS20, FRITZ!DECT200, 7 MAX! Thermostate, 3 MAX! Fensterkontakte, Kodi, CUL V3.3, EM1000S, LW12, LD382, HUE, HM-CFG-USB-2, 1x HM-LC-SW1-FM, 2x HM-LC-SW2-FM, 2x HM-LC-Sw1PBU-FM, 3xHM-LC-Bl1PBU-FM,HM-SEC-RHS, 2xHM-SEC-SD,HM-WDS30-T-O, 3x HM-LC-Dim1TPBU-FM, RPI+AddOn

Marc1993

Nein. Mein Beitrag hat ein "unglückliches" Layout. Sorry  ;D
Das ist die Fehlermeldung mit meinen Devices.

P.A.Trick

Cubietruck,RPI,QNAP Ts-419p+, FS20, FRITZ!DECT200, 7 MAX! Thermostate, 3 MAX! Fensterkontakte, Kodi, CUL V3.3, EM1000S, LW12, LD382, HUE, HM-CFG-USB-2, 1x HM-LC-SW1-FM, 2x HM-LC-SW2-FM, 2x HM-LC-Sw1PBU-FM, 3xHM-LC-Bl1PBU-FM,HM-SEC-RHS, 2xHM-SEC-SD,HM-WDS30-T-O, 3x HM-LC-Dim1TPBU-FM, RPI+AddOn

Marc1993

Genau. Habe es so übernommen und meine Devices eingetragen.

dominik

Probier es mal mit DOIF...hier der Code (nicht getestet)

define DI_kodilichtsteuerung DOIF \
([KODI:type] eq "movie" and [KODI:playStatus] eq "playing") \
(set HM_1A93E1_Sw off) \
DOELSEIF \
([KODI:type] eq "movie" and [KODI:playStatus] eq "paused") \
(set HM_1A93E1_Sw on)
fhempy -  https://github.com/fhempy/fhempy: GoogleCast, Tuya, UPnP, Ring, EQ3BT, Nespresso, Xiaomi, Spotify, Object Detection, ...
Kaffeespende: https://paypal.me/todominik

Marc1993


m8ichael

#7
Hallo!

Ich habe auch das Beispiel aus dem Wiki nachgebaut.


define notify_KODI_status notify wz_KODI:playStatus.* { if (ReadingsVal("wz_KODI", "type", "") eq "movie"){
   if (ReadingsVal("wz_KODI", "playStatus", "") eq "playing"){
       fhem("set FS20_Licht off");
    }
    if (ReadingsVal("wz_KODI", "playStatus", "") eq "paused"){
       fhem("set FS20_Licht on");
    }
   }
}


Grundsätzlich funktioniert das auch, allerdings wird die "Abspielart" nicht sauber gelesen. Öffne ich z. B. zunächst einen Film ("type=movie"), so läuft alles ohne Probleme. Wenn ich anschließend eine andere Datei abspiele ("Type=unknown"), so wird beim Start der Datei offenbar noch kurz der alte Type gelesen, d.h., die Schleife durchläuft und das Licht wird fehlerhaft gedimmt. Stoppe ich dann die Datei, so steht der Type mittlerweile auf unknown, sodass tatsächlich nichts passiert.

Wie kann ich nun erreichen, dass beim starten der Datei der jeweils richtige Type gelesen wird? Kann man da irgendwo eine Mini-Verzögerung einbauen?

Viele Grüße

Michael

P.A.Trick

Zitat von: m8ichael am 04 Januar 2016, 17:54:34
Hallo!

Ich habe auch das Beispiel aus dem Wiki nachgebaut.


define notify_KODI_status notify wz_KODI:playStatus.* { if (ReadingsVal("wz_KODI", "type", "") eq "movie"){
   if (ReadingsVal("wz_KODI", "playStatus", "") eq "playing"){
       fhem("set FS20_Licht off");
    }
    if (ReadingsVal("wz_KODI", "playStatus", "") eq "paused"){
       fhem("set FS20_Licht on");
    }
   }
}


Grundsätzlich funktioniert das auch, allerdings wird die "Abspielart" nicht sauber gelesen. Öffne ich z. B. zunächst einen Film ("type=movie"), so läuft alles ohne Probleme. Wenn ich anschließend eine andere Datei abspiele ("Type=unknown"), so wird beim Start der Datei offenbar noch kurz der alte Type gelesen, d.h., die Schleife durchläuft und das Licht wird fehlerhaft gedimmt. Stoppe ich dann die Datei, so steht der Type mittlerweile auf unknown, sodass tatsächlich nichts passiert.

Wie kann ich nun erreichen, dass beim starten der Datei der jeweils richtige Type gelesen wird? Kann man da irgendwo eine Mini-Verzögerung einbauen?

Viele Grüße

Michael

Ich habe das mittlerweile durch ein DOIF ersetzt. Guckt mal ob das bei euch läuft?


define di_kodi_lichtsteuerung  DOIF
(
[wz_KODI:playStatus] eq "playing" and
(
  [wz_KODI:type] eq "episode" or
  [wz_KODI:type] eq "movie"
)

(set ls_Erdgeschoss scene Filmstart, msgnotice "Der Filmtitel lautet: [wz_KODI:currentTitle]")
DOELSEIF (
[wz_KODI:playStatus] eq "paused" and
(
  [wz_KODI:type] eq "episode" or
  [wz_KODI:type] eq "movie"
)
)
(set ls_Erdgeschoss scene Filmpause)
DOELSEIF (
[wz_KODI:playStatus] eq "stopped" and
(
  [wz_KODI:type] eq "episode" or
  [wz_KODI:type] eq "movie"
)
)
(set ls_Erdgeschoss scene indirekt)
Cubietruck,RPI,QNAP Ts-419p+, FS20, FRITZ!DECT200, 7 MAX! Thermostate, 3 MAX! Fensterkontakte, Kodi, CUL V3.3, EM1000S, LW12, LD382, HUE, HM-CFG-USB-2, 1x HM-LC-SW1-FM, 2x HM-LC-SW2-FM, 2x HM-LC-Sw1PBU-FM, 3xHM-LC-Bl1PBU-FM,HM-SEC-RHS, 2xHM-SEC-SD,HM-WDS30-T-O, 3x HM-LC-Dim1TPBU-FM, RPI+AddOn

waschbaerbauch

Hallo,

ich bin grad über dieses Thema gestolpert: Kodi Home Cinema Automation ist schon bekannt?
Die Lichtsteuerung kann man damit zumindest relativ einfach organisieren.

Gruß
Mario

P.A.Trick

Zitat von: waschbaerbauch am 04 Januar 2016, 20:19:36
Hallo,

ich bin grad über dieses Thema gestolpert: Kodi Home Cinema Automation ist schon bekannt?
Die Lichtsteuerung kann man damit zumindest relativ einfach organisieren.

Gruß
Mario

Das brauchen wir nicht, denn die Events liefert unser KODI Modul auch!
Cubietruck,RPI,QNAP Ts-419p+, FS20, FRITZ!DECT200, 7 MAX! Thermostate, 3 MAX! Fensterkontakte, Kodi, CUL V3.3, EM1000S, LW12, LD382, HUE, HM-CFG-USB-2, 1x HM-LC-SW1-FM, 2x HM-LC-SW2-FM, 2x HM-LC-Sw1PBU-FM, 3xHM-LC-Bl1PBU-FM,HM-SEC-RHS, 2xHM-SEC-SD,HM-WDS30-T-O, 3x HM-LC-Dim1TPBU-FM, RPI+AddOn

waschbaerbauch

Entschuldigung, ich wollte dir nicht zu nahe treten - das war ja nur ein Vorschlag ...

P.A.Trick

Zitat von: waschbaerbauch am 04 Januar 2016, 20:22:52
Entschuldigung, ich wollte dir nicht zu nahe treten - das war ja nur ein Vorschlag ...

Ja war nicht böse gemeint! :-) Danke für den Hinweis, aber das ist eher etwas für CCU User.
Cubietruck,RPI,QNAP Ts-419p+, FS20, FRITZ!DECT200, 7 MAX! Thermostate, 3 MAX! Fensterkontakte, Kodi, CUL V3.3, EM1000S, LW12, LD382, HUE, HM-CFG-USB-2, 1x HM-LC-SW1-FM, 2x HM-LC-SW2-FM, 2x HM-LC-Sw1PBU-FM, 3xHM-LC-Bl1PBU-FM,HM-SEC-RHS, 2xHM-SEC-SD,HM-WDS30-T-O, 3x HM-LC-Dim1TPBU-FM, RPI+AddOn

waschbaerbauch

#13
Von mir auch nicht, das war neulich mein erster Ansatz und mit CCU hab ich 0 am Hut :D
Das Thema FHEM ist ja so umfangreich, da kann man ja nicht alles auf einmal wissen und implementieren ;)

Das Kodi-Modul schau ich mir mal bei Zeiten an, bis dahin muss das mit dem anderen Teil aufm Kodi reichen der den Dimmer schaltet (Filmstart -> set Wz.Dimmer pct 35).
Aktuell hab ich genug mit der FTUI zu schaffen - aber auch das ist spannend!

Gruß
Mario

P.A.Trick

Zitat von: waschbaerbauch am 04 Januar 2016, 20:27:35
Von mir auch nicht, das war neulich mein erster Ansatz und mit CCU hab ich 0 am Hut :D
Das Thema FHEM ist ja so umfangreich, da kann man ja nicht alles auf einmal wissen und implementieren ;)

Das Kodi-Modul schau ich mir mal bei Zeiten an, bis dahin muss das mit dem anderen Teil aufm Kodi reichen der den Dimmer schaltet.
Aktuell hab ich genug mit der FTUI zu schaffen - aber auch das ist spannend!

Gruß
Mario

Ja die Probleme kommen mir bekannt vor. Tipp: Nimm das Kodi Modul, dass kannst du auch in das FTUI einbinden mit Bildchen usw. :-) (steht leider irgendwo im langen Thread wie das ging!)
Cubietruck,RPI,QNAP Ts-419p+, FS20, FRITZ!DECT200, 7 MAX! Thermostate, 3 MAX! Fensterkontakte, Kodi, CUL V3.3, EM1000S, LW12, LD382, HUE, HM-CFG-USB-2, 1x HM-LC-SW1-FM, 2x HM-LC-SW2-FM, 2x HM-LC-Sw1PBU-FM, 3xHM-LC-Bl1PBU-FM,HM-SEC-RHS, 2xHM-SEC-SD,HM-WDS30-T-O, 3x HM-LC-Dim1TPBU-FM, RPI+AddOn