FHEM Forum

Verschiedenes => Bastelecke => ESP Familie => Thema gestartet von: Sidey am 24 Juni 2019, 08:52:03

Titel: ESP Easy - Initiale Statusabfrage
Beitrag von: Sidey am 24 Juni 2019, 08:52:03
Hi,

Ich habe auf einen ESP mit espeasy betankt und im espeasy habe ich ein Level Control device angelegt.

Das https://www.google.com/url?sa=t&source=web&rct=j&url=https://www.letscontrolit.com/wiki/index.php/LevelControl&ved=2ahUKEwjB1Mzew4HjAhWRecAKHVnXA34QFjAAegQIBxAC&usg=AOvVaw3HLmSPzYVS234omhzHU5lP&cshid=1561359082153 (https://www.google.com/url?sa=t&source=web&rct=j&url=https://www.letscontrolit.com/wiki/index.php/LevelControl&ved=2ahUKEwjB1Mzew4HjAhWRecAKHVnXA34QFjAAegQIBxAC&usg=AOvVaw3HLmSPzYVS234omhzHU5lP&cshid=1561359082153) Level control device sendet leider keinen initialen Status, sondern nur bei Änderung.

Mit welchem Befehl könnte ich denn den Status aus Fhem Pollen?
Die Attribute um GPIOs zu pollen stehen auf deprecated und Alternativen habe ich erst mal keine gefunden.
Ein GPIO wollte ich auch nicht Pollen.

Im Modul selbst bin ich auf die Schnelle nicht durchgestiegen. In Http://EPs/json steht die Information prinzipiell drinnen, eine Abfrage konnte ich im Modul nicht finden.
Mit sendhttp aus einer Rule heraus scheint mir auch eher ein Hack als eine Lösung zu sein.


Gruß Sidey

Gesendet von meinem Moto Z (2) mit Tapatalk

Titel: Antw:ESP Easy - Initiale Statusabfrage
Beitrag von: Wernieman am 24 Juni 2019, 09:33:45
Warum willst Du pollen, wenn der ESP auch pushen kann?

lege Dir per Ruie einen timer an, der die Daten alle X Minuten pusht .... kann Dir (mangels aktuellen zugriff auf meine Umgebung) keine Implementierung dazu liefern.

Wobei sich mir persönlich die Frage stellt, warum sollte man den Regelmäßig den "Status ist nicht geändert" weiterreichen soll. Beim Start kann ich es verstehen ...
Titel: Antw:ESP Easy - Initiale Statusabfrage
Beitrag von: Sidey am 24 Juni 2019, 15:21:40
Pushen geht meines Wissens nach nur via sendHttp oder mqtt.

Jetzt extra mqtt einrichten, finde ich nicht prickelnd.

sendHttp hat leider den Nachteil, dass es nicht den listener des ESP Modules verwenden kann, sondern die webschnittstelle von FHEM.
Csrf Token und Authentication werden schwierig.

Eigentlich würde einmal ein Pollen nach einem Wechsel des presence Status ausreichen.
Der Wert stimmt ja nur dann nicht, wenn der ESP gebootet hat.

Gesendet von meinem Moto Z (2) mit Tapatalk

Titel: Antw:ESP Easy - Initiale Statusabfrage
Beitrag von: Wernieman am 24 Juni 2019, 15:35:29
Es geht auch mit dem Listener des ESP Modules ....

aber s.o.
Zitatkann Dir (mangels aktuellen zugriff auf meine Umgebung) keine Implementierung dazu liefern.

Edit:
Natürlich mußt Du bei dem "Device" das "Send Data" aktivieren. Dann kannst Du mit "TaskRun <Nr. des Devices>" das Senden anstoßen
Titel: Antw:ESP Easy - Initiale Statusabfrage
Beitrag von: DasQ am 24 Juni 2019, 20:20:28
und halt den controller aktivieren
Titel: Antw:ESP Easy - Initiale Statusabfrage
Beitrag von: Sidey am 24 Juni 2019, 23:42:31
Hi zusammen,

Danke für die Tips.


Ich habe das gleich mal ausprobiert.
Funktioniert das bei euch mit dem Level Control Device? Bei mir passiert da nichts,


Grüße Sidey
Titel: Antw:ESP Easy - Initiale Statusabfrage
Beitrag von: Wernieman am 25 Juni 2019, 07:56:37
Zeig doch mal die Rule ...
Titel: Antw:ESP Easy - Initiale Statusabfrage
Beitrag von: Sidey am 25 Juni 2019, 21:26:26
Hi,

die Rule kannst Du gerne sehen. Getestet hatte ich es allerdings nicht mit der Rule, sondern mit
TaskRun,5 ausprobiert.

Ich habe so das Gefühl, dass in dem LevelControl Plugin kein Senden implementiert ist :/



On System#Boot do
   TaskValueSetAndRun 4,1,0
   gpio,12,0
   TaskValueSetAndRun 5,1,0
endon

on WiFi#Connected do
endon
// Set relay off via timer 1
On Rules#Timer=1 do
  TaskValueSet 4,1,1
endon

on Button#Switch do
  if [Dummy#Status] = 1
    TaskValueSet 4,1,0
  else
    TaskValueSet 4,1,1
endif
timerSet,1,0
endon



On onForTimer do
  TaskValueSet 4,1,0
  TimerSet,1,%eventvalue%

endon



Titel: Antw:ESP Easy - Initiale Statusabfrage
Beitrag von: Wernieman am 26 Juni 2019, 09:40:26
TaskValueSetAndRun .. kannte ich noch gar nicht ...

Bist Du Dir mit den Parametern sicher?