Autor Thema: ESPEasy - userSetCmds Verständnisproblem  (Gelesen 697 mal)

Offline wk

  • Full Member
  • ***
  • Beiträge: 100
ESPEasy - userSetCmds Verständnisproblem
« am: 12 Februar 2019, 14:43:26 »
Auch nach stundenlangem Suchen in Wiki und commandref bin ich nicht in der Lage aus den wenigen Beispielen mir einen funktionierenden Befehl zu basteln.

Ich möchte erreichen, dass der funktionierende Befehl: set We_Ez event HzAn durch den Befehl set We_Ez an ersetzt wird.

Versuche wie:
attr We_Ez userSetCmds ( an => {url => "/control?cmd=event HzAn"} )
und viele andere Schreibweisen führen zu Fehlermeldungen oder gar keiner Reaktion.

Die Suchfunktion in fhem gibt nicht viele Treffer über userSetCmds.

Offline KernSani

  • Developer
  • Hero Member
  • ****
  • Beiträge: 2804
Antw:ESPEasy - userSetCmds Verständnisproblem
« Antwort #1 am: 14 Februar 2019, 00:26:42 »
Hi,

da das ziemlich ESPEasy-spezifisch ist, vielleicht in das entsprechende Unterforum (Bastelecke/ESP8266) verschieben (Button ganz unten links).

Grüße,

Oli
RasPi: RFXTRX, HM, zigbee2mqtt, mySensors, JeeLink, miLight, squeezbox, Alexa, Siri, ...

Offline riker1

  • Sr. Member
  • ****
  • Beiträge: 579
Antw:ESPEasy - userSetCmds Verständnisproblem
« Antwort #2 am: 14 Februar 2019, 08:49:46 »
Hallo

ich denke eher das ist ein reines Fhem Thema eventmap oder so
versuch mal

attrib <device> eventmap  /event HzAn:neuer_befehl/
dann eventuell noch ein WebCMD dazu <neuer_Befehl>
« Letzte Änderung: 14 Februar 2019, 08:51:30 von riker1 »
FHEM 5.8 Ubuntu, FHEM 5.8 RPI 3 , Actoren: IT ,
MAX CUBE, MAX HT, MAX WT, Selbstbau nanoCULs, FS 20, Homematic, FTK, SW. DIM, Smoke,KODI,Squeezebox

Offline dev0

  • Developer
  • Hero Member
  • ****
  • Beiträge: 3543
    • _.:|:._
Antw:ESPEasy - userSetCmds Verständnisproblem
« Antwort #3 am: 15 Februar 2019, 12:15:01 »
eventMap kann das vmtl. auch, aber die korrekte userSetCmds Syntax wäre:
attr We_Ez userSetCmds ( an => {url => "/control?cmd=event,HzAn"} )
Im Log sieht man dann auch:
2019.02.15 11:54:27.405 3: ESPEasy We_Ez: set em1 an
2019.02.15 11:54:27.406 4: ESPEasy bridge: httpReq device:em1 ident:em1 timeout:10 url:http://<ip>:80/control?cmd=event,HzAnan

Wie man sieht, ist da ein "an" zu viel hinten an der aufgerufenen URL. Ich schaue mir das bei Gelegenheit an und fixe es falls nötig, jetzt gerade geht es nicht.

Offline wk

  • Full Member
  • ***
  • Beiträge: 100
Antw:ESPEasy - userSetCmds Verständnisproblem
« Antwort #4 am: 15 Februar 2019, 18:30:43 »
Danke dev0.

Dann habe ich ja eigentlich schon richtig gelegen, aber durch das angehängte 'an' kommt halt die Fehlermeldung:

 ESPEasy Wemos: http://<ip>:80/control?cmd=event HzAnan: empty answer received [set We_Ez an]

Offline dev0

  • Developer
  • Hero Member
  • ****
  • Beiträge: 3543
    • _.:|:._
Antw:ESPEasy - userSetCmds Verständnisproblem
« Antwort #5 am: 16 Februar 2019, 10:14:43 »
Bisher war es so, dass das ein neu definierter <FHEM cmd> identisch mit dem <ESP Easy cmd> sein mußte und auch so an den ESP übertragen wurde. Nun gibt es die Möglichkeit den hash key "args" auf "-1" zu setzen: dann wird der <FHEM Befehl> nicht mehr an den ESP gesendet. Dafür muß/sollte dann der hash key "url" den <ESP Easy cmd> beinhalten. Optionale Argumenmte werden weiterhin mit Kommatas angehängt.

fhem#> attr We_Ez userSetCmds ( an => {url => "/control?cmd=event,HzAn", args => -1} )
fhem#> set We_Ez an

2019.02.16 10:09:08.790 3: ESPEasy We_Ez: set We_Ez an
2019.02.16 10:09:08.790 4: ESPEasy bridge: httpReq device:We_Ez ident:We_Ez timeout:10 url:http://<ip>:80/control?cmd=event,HzAn

Via Update morgen ab 8 oder jetzt aus dem svn. Bitte testen.

Offline wk

  • Full Member
  • ***
  • Beiträge: 100
Antw:ESPEasy - userSetCmds Verständnisproblem
« Antwort #6 am: 17 Februar 2019, 11:45:22 »
Nach dem update habe ich es jetzt getestet.

Das doppelte 'an' ist verschwunden, so dass jetzt alles wie vorgesehen funktioniert.

Vielen Dank dev0

Offline dev0

  • Developer
  • Hero Member
  • ****
  • Beiträge: 3543
    • _.:|:._
Antw:ESPEasy - userSetCmds Verständnisproblem
« Antwort #7 am: 17 Februar 2019, 11:54:52 »
Das doppelte 'an' ist verschwunden, so dass jetzt alles wie vorgesehen funktioniert.
Vorgesehen war dieser Fall bisher nicht,  aber ich empfinde es als sinnvoll und habe es eingebaut. ;)
Ob meine Beschreibung in der command ref dazu leicht genug verständlich ist, kann ich nur erahnen. Wenn es jemand kurz und knapp besser beschreiben kann, dann bitte hier melden.

 

decade-submarginal