[Gelöst] set-Befehl (cmd gpio,2,0) im Ausführungsteil - doppelte Klammerung

Begonnen von Gisbert, 29 Dezember 2019, 15:45:39

Vorheriges Thema - Nächstes Thema

Gisbert

Hallo zusammen,

ich habe folgenden set-Befehl, der in der Fhem-Kommandozeile funktioniert:
set Stellantriebe.EG cmd gpio,2,0
Damit wird beim MQTT-Device Stellantriebe.EG der GPIO2 auf null gesetzt.

Wenn ich dengleichen Befehl in einem DOIF-Ausführungsteil benutzen möchte, erhalte ich folgenden Fehler im log - das DOIF hat den Namen "HKV.EG":
2019.12.29 14:21:16 2: HKV.EG: 2: Unknown command 2, try help.
Wenn ich mit mqttfx lausche, dann wird nur die payload gpio übertragen, nicht aber gpio,2,0.
Gibt es dafür eine Lösung, d.h. Senden der payload gpio,2,0 in dem Ausführungsteil eines DOIFs?

Viele Grüße Gisbert
Aktuelles FHEM | PROXMOX | Fujitsu Futro S740 | Debian 12 | UniFi | Homematic, VCCU, HMUART | ESP8266 | ATtiny85 | Wasser-, Stromzähler | tuya local | Wlan-Kamera | SIGNALduino, Flamingo Rauchmelder FA21/22RF | RHASSPY | DEYE | JK-BMS | ESPHome

Frank_Huber

Hallo Gisbert,

Doppelt klammern ist der Trick.
Doif nutzt das Komma als Befehlstrenner. Mit der doppelten klammerung wird das Komma zum Befehl genommen.

Grüße
Frank

Gesendet von meinem Doogee S60 mit Tapatalk


Gisbert

Zitat von: Frank_Huber am 29 Dezember 2019, 16:15:41
Hallo Gisbert,

Doppelt klammern ist der Trick.
Doif nutzt das Komma als Befehlstrenner. Mit der doppelten klammerung wird das Komma zum Befehl genommen.

Grüße
Frank

Hallo Frank,

funktioniert perfekt.
Ich erinnere mich, dass ich die doppelte Klammersetzung im Ausführungsteil beim Versenden von Nachrichten sogar schon genutzt  habe, um die  Formatierung der Nachricht beim Empfänger hinzubekommen. Gut zu wissen, das es eine Erklärung gibt.

Viele Grüße Gisbert
Aktuelles FHEM | PROXMOX | Fujitsu Futro S740 | Debian 12 | UniFi | Homematic, VCCU, HMUART | ESP8266 | ATtiny85 | Wasser-, Stromzähler | tuya local | Wlan-Kamera | SIGNALduino, Flamingo Rauchmelder FA21/22RF | RHASSPY | DEYE | JK-BMS | ESPHome