Hauptmenü

Problem bei einer DOIF abfrage

Begonnen von Torsten_MG, 31 Januar 2018, 11:15:45

Vorheriges Thema - Nächstes Thema

Torsten_MG

Hallo DOIF-Experten,

ich habe folgenden Aufbau:

Ich habe ein HTTPMOD TV_Programme, mit dem Code TV-Helper wird die Abfrage behandelt.

Nun habe ich aus den Posts dieser Geschichte auch eine DOIF-Abfrage eingebaut, damit aber ein Problem, welches anscheinend einzigartig ist, da in der Codeschnipsel-Abteilung mir keiner weiterhelfen kann.

Das DOIF sieht folgendermaßen aus:
define TV_Programme.DI.update DOIF ([[TV_Programme:DasErste_Nexttime]]) (deletereading TV_Programme .*_image;; get TV_Programme TVProgramm)DOELSEIF ([[TV_Programme:Kabel1_Nexttime]]) (deletereading TV_Programme .*_image;; get TV_Programme TVProgramm)DOELSEIF ([[TV_Programme:ONE_Nexttime]]) (deletereading TV_Programme .*_image;; get TV_Programme TVProgramm)DOELSEIF ([[TV_Programme:Pro7_Nexttime]]) (deletereading TV_Programme .*_image;; get TV_Programme TVProgramm)DOELSEIF ([[TV_Programme:RTL_Nexttime]]) (deletereading TV_Programme .*_image;; get TV_Programme TVProgramm)DOELSEIF ([[TV_Programme:RTL2_Nexttime]]) (deletereading TV_Programme .*_image;; get TV_Programme TVProgramm)DOELSEIF ([[TV_Programme:RTLNITRO_Nexttime]]) (deletereading TV_Programme .*_image;; get TV_Programme TVProgramm)DOELSEIF ([[TV_Programme:SAT1GOLD_Nexttime]]) (deletereading TV_Programme .*_image;; get TV_Programme TVProgramm)DOELSEIF ([[TV_Programme:SIXX_Nexttime]]) (deletereading TV_Programme .*_image;; get TV_Programme TVProgramm)DOELSEIF ([[TV_Programme:SUPERRTL_Nexttime]]) (deletereading TV_Programme .*_image;; get TV_Programme TVProgramm)DOELSEIF ([[TV_Programme:Sat1_Nexttime]]) (deletereading TV_Programme .*_image;; get TV_Programme TVProgramm)DOELSEIF ([[TV_Programme:VOX_Nexttime]]) (deletereading TV_Programme .*_image;; get TV_Programme TVProgramm)DOELSEIF ([[TV_Programme:WDR_Nexttime]]) (deletereading TV_Programme .*_image;; get TV_Programme TVProgramm)DOELSEIF ([[TV_Programme:ZDF_Nexttime]]) (deletereading TV_Programme .*_image;; get TV_Programme TVProgramm)DOELSEIF ([[TV_Programme:ZDFNEO_Nexttime]]) (deletereading TV_Programme .*_image;; get TV_Programme TVProgramm)


Das Problem ist, wenn ich das DOIF am laufen habe, schmiert mir FHEM ab und ich kann es nur wieder starten, wenn ich das DOIF in der fhem.cfg lösche. Das Problem scheint nur bei DMAX zu sein und auch nur bei dieser Sendung, da der Eintrag im Log immer gleich ist, ausser die Nummer der Folge. Ich habe das jetzt anderthalb Wochen durchprobiert und es passiert nur wenn das DOIF aktiv ist und nur mittags bei dieser Sendung.

Folgender Eintrag ist dann immer im Log zu sehen:
Unmatched ( in regex; marked by <-- HERE in m/\[TV_Programme:DMAX_details-1: Dokusoap, E 2016<br/>Staffel: 1 / Folge: 9<br/>Laufzeit: 30 Minuten<br/>Original-Titel: Control De Fronteras: España ( <-- HERE Border Control(\]|:.+\]|,.+\])/ at ./FHEM/98_DOIF.pm line 1998.


Ellert

Da bedarf es etwas mehr Infos:

Was sagt stacktrace?

Welches Reading erzeugt die Fehlermeldung?

Wie ist der Inhalt des Readings bei der Fehlermeldung?

Bau ein einfaches DOIF mit dem Reading , mit dem sich die Fehlermeldung reproduzieren lässt und poste die "Raw definition".


Wenn der Fehler in einem Befehl auftritt, in welchem? Welche Inhalte stehen in den Befehlsparametern, was liefert get zurück?

Und schau Dir die Hinweise an: https://wiki.fhem.de/wiki/DOIF/Tools_und_Fehlersuche


amenomade

Mehrere Befehle in einem Zweig eines DOIFs sind mit Komas statt Semikolon zu trennen

https://fhem.de/commandref_DE.html#DOIF_Angaben_im_Ausfuehrungsteil
Pi 3B, Alexa, CUL868+Selbstbau 1/2λ-Dipol-Antenne, USB Optolink / Vitotronic, Debmatic und HM / HmIP Komponenten, Rademacher Duofern Jalousien, Fritz!Dect Thermostaten, Proteus