Hallo,
ich bastel schon länger an der Abfrage herum, mit der ich z.B. den status eines dummy switches aus FHEM herauslesen möchte - ich finde jedem Menge Referenzen, wie das innerhalb FHEM geht - aber von extern (z.B. einen Shellscript oder python) komme ich nicht klar - was mache ich in den Aufruf falsch?
http://192.168.1.183:8083/fhem?cmd=get%20mySwitch1
Danke im Voraus!
list vom switch bitte
für http://192.168.1.183:8083/fhem?list=mySwitch1
bekomme ich eine leere Seite (nur die Navigation links)
Ich glaube gemeint war, dass du die Device-Information mittels
list mySwitch1
von FHEM direkt liefern sollst. ;-)
Internals:
CFGFN
FUUID 5f770248-f33f-c404-ceb5-ee85c99722bfd003
NAME mySwitch1
NR 257
STATE 0
TYPE dummy
READINGS:
2020-10-02 12:44:52 state 0
Attributes:
Hi,
Ein dummy kennt kein get ;)
Du kannst mit list oder jsonlist2 mySwitch1 state
arbeiten. Oder eben mit den typischen Perl Abfragen z.B. {Value("mySwitch1")}
Ich hätte auch noch ein Script (https://github.com/heinz-otto/fhemcl), was den csrftoken (https://wiki.fhem.de/wiki/CsrfToken-HowTo)und den ganzen Rest (encoding) behandelt.
Gruß Otto
Falls man telnet aktiviert, kann man auch fhem.pl fuer die Kommunikation verwenden, siehe Usage:
% perl fhem.pl
Usage:
as server: perl fhem.pl [-d] {<configfile>|configDB}
as client: perl fhem.pl [host:]port cmd cmd cmd...
testing: perl fhem.pl -t <testfile>.t
Exit 1
Und Zuletzt, um alles zu haben, geht auch MQTT
Meine Vermutung ist, dass diese Lektüre momentan mehr bietet: https://wiki.fhem.de/wiki/Erste_Schritte_in_FHEM (https://wiki.fhem.de/wiki/Erste_Schritte_in_FHEM)
Naja ..ö Script Zurückgabe ist dann doch schon mehr als "erste Schritte" ...
Aber Grundsätzlich wurde es schon mehrfach im Forum bearbeitet
ich mach das zum Teil mit getstate.
/fhem?cmd=getstate%20D_ESP_RGBWW_2_White_Dimmer&XHR=1&fwcsrf=Token
EDIT: getstate muss dazu noch vom contrib/getstate/ in den FHEM Ordner kopiert werden
99_getstate.pm
Danke an Euch alle!! Das hat mir sehr geholfen! Das Script von Otto123 ist klasse zum Probieren.