ESP Easy - Initiale Statusabfrage

Begonnen von Sidey, 24 Juni 2019, 08:52:03

Vorheriges Thema - Nächstes Thema

Sidey

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

Signalduino, Homematic, Raspberry Pi, Mysensors, MQTT, Alexa, Docker, AlexaFhem,zigbee2mqtt

Maintainer von: SIGNALduino, fhem-docker, alexa-fhem-docker, fhempy-docker

Wernieman

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 ...
- 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

Sidey

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

Signalduino, Homematic, Raspberry Pi, Mysensors, MQTT, Alexa, Docker, AlexaFhem,zigbee2mqtt

Maintainer von: SIGNALduino, fhem-docker, alexa-fhem-docker, fhempy-docker

Wernieman

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

DasQ

und halt den controller aktivieren
Fhem on MacMini/Ubuntu.
Absoluter Befürworter der Konsequenten-Kleinschreibung https://de.wikipedia.org/wiki/Kleinschreibung
Infos zu Klimawandel http://www.globalcarbonatlas.org

Sidey

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
Signalduino, Homematic, Raspberry Pi, Mysensors, MQTT, Alexa, Docker, AlexaFhem,zigbee2mqtt

Maintainer von: SIGNALduino, fhem-docker, alexa-fhem-docker, fhempy-docker

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

Sidey

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



Signalduino, Homematic, Raspberry Pi, Mysensors, MQTT, Alexa, Docker, AlexaFhem,zigbee2mqtt

Maintainer von: SIGNALduino, fhem-docker, alexa-fhem-docker, fhempy-docker

Wernieman

TaskValueSetAndRun .. kannte ich noch gar nicht ...

Bist Du Dir mit den Parametern sicher?
- 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