[gelöst] - "HTTP POST" Werte in externem Gerät setzen.

Begonnen von Frank_Huber, 22 Mai 2017, 16:11:05

Vorheriges Thema - Nächstes Thema

Frank_Huber


andies

Ja, klar, habe ich ja gelesen. Der Vorteil von HTTPMOD ist in meinen Augen (und das kann Betriebsblindheit sein), dass es ein FHEM-device ist und damit in die Programmabfolge mit allen Details passt (Logfile-Eintrag, Anzeige im room-group etc.). GetFileFromURL ist ein Programmcode und, wenn ich das richtig in Erinnerung habe, im worst case blockierend.
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

viegener

@andies: Ich war versucht etwas sehr ähnliches zu schreiben... :)
Kein Support über PM - Anfragen gerne im Forum - Damit auch andere profitieren und helfen können

Frank_Huber

#18
Ich sehe genau da (momentan) den Nachteil vom httpmod.
Ich müsste ja (bis ich tiefer durchblicke) für jeden Befehl den ich an den Kessel schicken will nen eigenes device anlegen.
Den getfilefromurl baue ich direkt im at/doif/notify mit ein.

Gesendet von meinem S3_32 mit Tapatalk


andies

Nein, das glaube ich nicht. Ich weiß nicht, wie die Befehle genau aussehen, aber ich bastle mal ein device mit zwei Befehlen:

defmod Heizkessel HTTPMOD none 0
attr Heizkessel userattr get1Data get1Name set1URL get2Data get2Name get2URL
attr Heizkessel get1Name Entaschung
attr Heizkessel get1URL http://192.168.12.82:8080/user/var/40/10021/0/0/12112
attr Heizkessel get1Data value=1803
attr Heizkessel get2Name Beaschung
attr Heizkessel get2URL http://192.168.12.82:8080/user/var/40/10021/1/1/34343
attr Heizkessel get2Data value=0815

Das device zeigt dann zwei Möglichkeiten direkt an (Auswahlliste). Selbst die URL kannst Du pro get ändern.
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

viegener

Zitat von: Frank_Huber am 04 Juni 2017, 20:59:34
Ich sehe genau da (momentan) den Nachteil vom httpmod.
Ich müsste ja (bis ich tiefer durchblicke) für jeden Befehl den ich an den Kessel schicken will nen eigenes device anlegen.
Den getfilefromurl baue ich direkt im at/doif/notify mit ein.

Nein das mit dem eigenen Device stimmt so nicht - Wenn Du die commandref gelesen hättest - hättest Du gesehen , dass für jeden set-befehl eines einzelnen HTTPMod-Devices auch ein URL etc vergeben werden kann.

Der direkt einbau ins at/doif/notify macht ja nur Sinn, wenn Du nur automatisch schalten willst / keinerlei Rücklmeldung brauchst / dein FHEM gerne blockiert sein darf etc.

Generell würde ich vermuten, dass Du ja irgendwann den Status des Kesses auch auslesen/darstellen willst spätestens dann ist die getfileFromURL-Methode eher hinderlich und Du betreibst den Aufwand nochmal - Meine Empfehlung nicht an den Konzepten von FHEM vorbei zu gehen, denn das erzeugt viele zusätzliche Probleme und kostet Zeit
Kein Support über PM - Anfragen gerne im Forum - Damit auch andere profitieren und helfen können

Frank_Huber

Ich hab schon verstanden dass httpmod das kann.
hab ja geschrieben "bis ich tiefer durchblicke"...

Auslesen tu ich ja schon einige Werte per httpmod.
für das setzen brauch ich keine weiteren Werte auslesen.

ich ändere die Zirkulationszeiten je nach Anwesenheitsstatus.
Da passt das so erstmal und funktioniert.
wenn ich mal wieder mehr Zeit hab mich da reinzulesen und zu testen baue ich es evtl um.
Aber solange es sauber läuft passt das so erstmal.