FHEM Forum

FHEM => Anfängerfragen => Thema gestartet von: 87insane am 23 Februar 2019, 12:28:49

Titel: ESPeasy SendToHTTP -> HTTPS Fhem
Beitrag von: 87insane am 23 Februar 2019, 12:28:49
Hallo zusammen,

nachdem ich mir nun den ganzen Morgen die Zähne ausgebissen habe, frage ich mal hier.

Wie kann ich von einem ESPeasy Gerät ein EVENT in FHEM erzeugen? Wenn man z.B. GPIOs schaltet, sind diese immer sofort auch im EVENT MONITOR.
Am liebsten würde ich einfach z.B. "SendToHTTP 192.168.20.3,8083,/fhem?cmd=setreading%20ESPEasy_az_rollo%20IsAlive%20IchBinHier&XHR=1" senden.
Dies lässt mein FHEM aber nicht zu da ich HTTPS nutze.

FHEMWEB SSL/HTTPS error:  SSL accept attempt failed error:1408F09C:SSL routines:ssl3_get_record:http request (peer: 192.168.20.30)

Da FHEM aber alles mögliche vom Schalter bzw. ESP Gerät mitbekommt (über die Bridge), muss man das doch auch so senden können vom Schalter aus?!

PS: Eigentlich muss ich nicht mal ein Reading setzen. Ich würde nur gerne ein Event haben.

Es geht darum:
FHEM soll an ein ESP Gerät eine Art "Hallo, bist du da?" senden. Danach soll der Schalter antworten "Jo". Das antriggern eines EVENTS von FHEM->ESP Gerät läuft. Nur zurück komme ich nicht.

ESP Rule zum antriggern von FHEM aus:
on IsAlive#IsAlive do
SendToHTTP 192.168.20.3,8083,/fhem?cmd=setreading%20ESPEasy_az_rollo%20IsAlive%20IchBinHier&XHR=1
endon
Titel: Antw:ESPeasy SendToHTTP -> HTTPS Fhem
Beitrag von: dev0 am 24 Februar 2019, 07:30:48
Es gibt mehrere Weg:

1. Precence Erkennung des ESPEasy Moduls verwenden.
2. Zusätzliche FHEMWEB Instanz, ohne tls/csrf und auf den IP Bereich Deiner ESPs beschränkt.
3. Ein Event an den ESP schicken, in den ESP Rules einen Dummy setzen, damit die Daten per Controller Plugin an das ESPEasy FHEM Modul geschickt wird.
Titel: Antw:ESPeasy SendToHTTP -> HTTPS Fhem
Beitrag von: 87insane am 28 Februar 2019, 12:47:11
ZitatEs gibt mehrere Weg:

1. Precence Erkennung des ESPEasy Moduls verwenden.
2. Zusätzliche FHEMWEB Instanz, ohne tls/csrf und auf den IP Bereich Deiner ESPs beschränkt.
3. Ein Event an den ESP schicken, in den ESP Rules einen Dummy setzen, damit die Daten per Controller Plugin an das ESPEasy FHEM Modul geschickt wird.


Hi und danke für deine Antwort!

1. Die Erkennung basiert ja meines Wissens nach auf mehr oder weniger Fake Werten wie RSSI. Diese ist auch an aber nicht ausreichend. Ich muss einen Trigger gegen den Schalter haben von FHEM aus und danach als Antwort zurück.

2. Finde ich zu viel gebogen... Wäre aber natürlich eine Option.

3. Hier bin ich neugierig. Kannst du das ausführlicher erklären?
Ein Event an den ESP senden. Okay das verstehe ich, bekomme es auch hin. Wie bekomme ich diesen "dummy" hin und wie kann er das machen? Genau das hatte ich ursprünglich auch gedacht. Weswegen mich es ärgert das ich das was ich senden will, nicht einfach als SendToHTTP und dann automatisch über das Plugin..... Das würde mich auf jeden Fall interessieren.

Danke!
Titel: Antw:ESPeasy SendToHTTP -> HTTPS Fhem
Beitrag von: dev0 am 01 März 2019, 11:31:06
Was willst Du genau erreichen?

Zu Punkt 3 mußt Du Dich mit den Rules und den darin verwendbaren Funktionen auseinander setzen: vmtl. in die Richtung: taskrun, taskvalueset, taskvaluesetandrun... Eine Übersicht findest Du hier: https://www.letscontrolit.com/wiki/index.php/ESPEasy_Command_Reference
Titel: Antw:ESPeasy SendToHTTP -> HTTPS Fhem
Beitrag von: 87insane am 01 März 2019, 11:48:34
Zitat von: dev0 am 01 März 2019, 11:31:06
Was willst Du genau erreichen?

Zu Punkt 3 mußt Du Dich mit den Rules und den darin verwendbaren Funktionen auseinander setzen: vmtl. in die Richtung: taskrun, taskvalueset, taskvaluesetandrun... Eine Übersicht findest Du hier: https://www.letscontrolit.com/wiki/index.php/ESPEasy_Command_Reference


Am Ende geht es darum ein sauberes EVENT zu haben welches 44_Rollo antriggert. Mache es jetzt über eine Status-Abfrage von einem der GPIOs. Es muss nur eine Frage/Antwort werden. Die Rules in ESPeasy sind meist sehr minimalistisch.

Die Übersicht kann ich schon fast auswendig. Brachte mir bisher nur Kummer :-P
Habe x Dinge probiert bis ich hier geschrieben habe. Taskvalueset war auch dabei. Aktuell bzw. gerade hab ich die simple "set GeräteName status GPIO x"-Abfrage gefunden. Diese gibt auch eine Antwort. Denke das ist erst mal der schönste Weg zum testen ..

Danke Dir!