Morgen,
ich schaue gerade nach einer Lösung um das passende cmd zu senden wenn cmdState gesetzt ist.
Dazu lese ich den cmdState extern ein und möchte einen anderen Befehl aus cmdState senden.
Nutze ich nur einfache Wörter, wie "an" und "aus" ist das kein Problem. Nutze ich aber 2 oder mehr, funktioniert das nicht.
Beispiel:
"cmdState": "Trockner arbeitet|Trockner steht|Trockner fertig"
Probiert habe ich das Leerzeichen durch "\s" oder "%20" zu ersetzen, ohne Erfolg.
Ok ich sehe ich muss mir behelfen. Ist noch immer ein Internal-ding?
Wenn ich den cmdState ändere funktioniert es,
"cmdState": "Trockner arbeitet|Trockner steht|Trockner fertig"
Dann lösche ich der Optik wegen " " und füge es anschließend wieder hinzu. Außer jemand
hat noch einen Tip :D
Warum liest du das Attribut aus?
Womöglich gibt es eine einfachere Lösung. Dazu musst du aber deine Geschichte ganz erzählen.
Ich lese die Attribute, in diesem Fall cmdState per Jsonlist2 in Python ein, um eine Liste zu generieren. Fhem aber akzeptiert von Haus aus
das Leerzeichen nicht, wenn ich den cmdState wie im ersten Post setze. Wusste ich vorher nicht, scheint aber so zu sein. Daher ist es wohl
kein DOIF-Problem wie ich jetzt meine zu erkennen.
edit:
wenn kein cmdState gesetzt ist, lese ich PossibleSets ein um die Liste der cmd_.*Kommandos dynamisch zu generieren. (cmd_1,cmd_2,...)
Ok, um Leerzeichen in dem Fall mache ich erstmal einen großen Bogen ;D
Da bleibe ich bei Platzhaltern und nutze es lieber so,
"cmdState": "Trockner_arbeitet|Trockner_steht|Trockner_fertig"
Dann ist der String....wie er eben is, fix und foxy :D