Abfrage eines Wertes aus FHEM (von extern - z.B. mit curl)

Begonnen von beejayf, 02 Oktober 2020, 12:49:27

Vorheriges Thema - Nächstes Thema

beejayf

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!

andies

FHEM 6.3 auf RaspPi4 (Raspbian:  6.6.28+; Perl: v5.36.0)
SIGNALduino (433 MHz) und HM-UART (868 MHz), Sonoff, Blitzwolf, Somfy RTS, CAME-Gartentor, Volkszähler, Keyence-Sensor, Homematic-Sensoren und -thermostat, Ferraris-Zähler für Wasseruhr, Openlink-Nachbau Viessmann

beejayf


h002

Ich glaube gemeint war, dass du die Device-Information mittels

list mySwitch1

von FHEM direkt liefern sollst. ;-)

beejayf

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:

Otto123

#5
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, was den csrftoken und den ganzen Rest (encoding) behandelt.

Gruß Otto
Viele Grüße aus Leipzig  ⇉  nächster Stammtisch an der Lindennaundorfer Mühle
RaspberryPi B B+ B2 B3 B3+ ZeroW,HMLAN,HMUART,Homematic,Fritz!Box 7590,WRT3200ACS-OpenWrt,Sonos,VU+,Arduino nano,ESP8266,MQTT,Zigbee,deconz

rudolfkoenig

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


Wernieman

- Bitte um Input für Output
- When there is a Shell, there is a Way
- Wann war Dein letztes Backup?

Wie man Fragen stellt: https://tty1.net/smart-questions_de.html

andies

FHEM 6.3 auf RaspPi4 (Raspbian:  6.6.28+; Perl: v5.36.0)
SIGNALduino (433 MHz) und HM-UART (868 MHz), Sonoff, Blitzwolf, Somfy RTS, CAME-Gartentor, Volkszähler, Keyence-Sensor, Homematic-Sensoren und -thermostat, Ferraris-Zähler für Wasseruhr, Openlink-Nachbau Viessmann

Wernieman

Naja ..ö Script Zurückgabe ist dann doch schon mehr als "erste Schritte" ...

Aber Grundsätzlich wurde es schon mehrfach im Forum bearbeitet
- Bitte um Input für Output
- When there is a Shell, there is a Way
- Wann war Dein letztes Backup?

Wie man Fragen stellt: https://tty1.net/smart-questions_de.html

Frank_Huber

#10
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

beejayf

Danke an Euch alle!! Das hat mir sehr geholfen! Das Script von Otto123 ist klasse zum Probieren.