FHEM Forum

FHEM => Anfängerfragen => Thema gestartet von: rasti am 15 Mai 2017, 21:35:57

Titel: GELÖST ! : Readings eines Devices regelmäßig senden
Beitrag von: rasti am 15 Mai 2017, 21:35:57
Hallo,

wie kann man die Readings eines Devices regelmäßig (z.B. alle 10 Min) senden ?

Beispielsweise den State on/off einer FS 20-Steckdose.
define FS20_Steckdose_2 FS20 3cd3 02
attr FS20_Steckdose_2 IODev WLAN_CUL


Hintergrund ist der, dass manche Devices ohne Rückkanal nicht immer sicher schalten
oder nach einem Stromausfall z.B. standardmäßig  immer aus sind. Bei Devices, die
die ausschließlich über FHEM-gesteuert sind, macht das m.E. Sinn.

Viele Grüße

Ralf
Titel: Antw:readings eines Devices regelmäßig senden
Beitrag von: KernSani am 15 Mai 2017, 21:48:01
Was genau meinst du mit "Readings senden"?
Ich bin mir nicht sicher, ob dein Ansatz wirklich der Richtige ist. Ob die steckdose nun wirklich geschaltet hat erkennst du ja nicht am Reading. Stromausfall ist ein anderes Thema. Dann ist vermutlich dein FHEM auch weg und du kannst auf global:initialized o.ä. reagieren...
Titel: Antw:readings eines Devices regelmäßig senden
Beitrag von: rasti am 15 Mai 2017, 22:18:31
Hallo,

mit Readings senden meine ich dass wenn der Schalter in FHEM auf ON steht,
FHEM dann automatisch alle 10 min ein set Schalter ON schickt solange bis
irgendein anderes FHEM-Ereignis auftritt (Schalter wird auf OFF gesetzt),
dann soll halt alle 10 min ein set Schalter OFF gesendet werden.

Dass ich den Schalterzustand so auch nicht sehen oder kontrollieren kann ist klar.

2 Probleme hoffe ich damit zu lösen
- WLAN CUL ist manchmal "disconnected", wenn in dieser Zeit was gesendet werden sollte, geht das in Leere
- habe einen LAN-Server mit Relaisboard. Wenn da mal der Strom weg ist, z.B. weil Frau mal kurz ein Ladegerät
   umgesteckt hat stehen alle Relais auf OFF.

Der FHEM-Server steht im Keller und hängt an der Heizung. Deren Stromversorgung ist völlig unabhängig von meiner Wohnung,
d.h. selbst wenn bei mir der FI fliegt läuft FHEM noch weiter....

Viele Grüße

Ralf
Titel: Antw:readings eines Devices regelmäßig senden
Beitrag von: Thorsten Pferdekaemper am 15 Mai 2017, 22:33:48

define wiederholungstaeter at +*00:10:00 set FS20_Steckdose_2 [FS20_Steckdose_2]

Gruß,
    Thorsten
Titel: Antw:readings eines Devices regelmäßig senden
Beitrag von: KernSani am 15 Mai 2017, 22:48:34
Den Server würde ich aber trotzdem eher z.B. mit PRESENCE odr WOL überwachen und die Relais per notify schalten.
Titel: Antw:readings eines Devices regelmäßig senden
Beitrag von: rasti am 15 Mai 2017, 23:53:42
Zitat von: Thorsten Pferdekaemper am 15 Mai 2017, 22:33:48

define wiederholungstaeter at +*00:10:00 set FS20_Steckdose_2 [FS20_Steckdose_2]

Gruß,
    Thorsten

Super genau das hab ich gebraucht. Danke !

Ich hab noch eine Frage und zwar möchte ich bei (nichtrückmeldenden) Devices,
die nicht nur von FHEM, sondern auch von Personen manuell gesteuert werden,
den Befehl beispielsweise 3x im Abstand von 10min senden. Das ist z.B. bei meinen
Jalousien der Fall, die gehen bei Sonnenaufgang hoch und bei Sonnenuntergang runter,
können aber zusätzlich noch manuell über Schalter bedient werden, ohne das FHEM
das mitbekommt.

Mein Code lautet so:
define Jalousie_Wohnzimmer.runter at +*{sunset_rel()} set Jalousie_Wohnzimmer off
define Jalousie_Wohnzimmer.hoch at +*{sunrise_rel(0,"07:00",)} set Jalousie_Wohnzimmer on


Ich könnte jetzt zwar anstatt der 2 defines 2*3 defines nehmen aber evtl. hast du wieder einen eleganten Einzeiler parat....

Viele Grüße

Ralf
Titel: Antw:readings eines Devices regelmäßig senden
Beitrag von: KernSani am 16 Mai 2017, 00:25:41
Zitat von: KernSani am 16 Mai 2017, 00:22:55
define Jalousie_Wohnzimmer.runter2 at +*{2}00:10:00 set Jalousie_Wohnzimmer off
könnte ein zweites at lauten, das du im ersten at mitdefinierst
Titel: Antw:readings eines Devices regelmäßig senden
Beitrag von: Thorsten Pferdekaemper am 16 Mai 2017, 06:51:04
Oder so:

define Jalousie_Wohnzimmer.runter at +*{sunset_rel()} set Jalousie_Wohnzimmer off;; sleep 600;; set Jalousie_Wohnzimmer off;; sleep 600;; set Jalousie_Wohnzimmer off

Gruß,
   Thorsten
Titel: Antw:readings eines Devices regelmäßig senden
Beitrag von: CoolTux am 16 Mai 2017, 07:15:10
Nur mal so mein Senf mit reinwerfend.
Anscheinend ist es Dir wichtig das das Gerät was geschalten werden soll auch tatsächlich schaltet. Wäre es da nicht besser die Ursache zu bekämpfen statt das Symptom. Bedeutet, wenn es wichtig ist nimm ein Rückkanal fähigen Schaltaktor.


Grüße
Titel: Antw:readings eines Devices regelmäßig senden
Beitrag von: rasti am 16 Mai 2017, 08:05:25
Zitat von: KernSani am 16 Mai 2017, 00:25:41
könnte ein zweites at lauten, das du im ersten at mitdefinierst

Danke !
Titel: Antw:readings eines Devices regelmäßig senden
Beitrag von: rasti am 16 Mai 2017, 08:06:14
Zitat von: Thorsten Pferdekaemper am 16 Mai 2017, 06:51:04
Oder so:

define Jalousie_Wohnzimmer.runter at +*{sunset_rel()} set Jalousie_Wohnzimmer off;; sleep 600;; set Jalousie_Wohnzimmer off;; sleep 600;; set Jalousie_Wohnzimmer off

Gruß,   Thorsten


Auch dir DANKE !
Titel: Antw:readings eines Devices regelmäßig senden
Beitrag von: rasti am 16 Mai 2017, 08:08:21
Zitat von: CoolTux am 16 Mai 2017, 07:15:10
Nur mal so mein Senf mit reinwerfend.
Anscheinend ist es Dir wichtig das das Gerät was geschalten werden soll auch tatsächlich schaltet. Wäre es da nicht besser die Ursache zu bekämpfen statt das Symptom. Bedeutet, wenn es wichtig ist nimm ein Rückkanal fähigen Schaltaktor.

Grüße

Ja das wäre das beste. Das ganze funktioniert aber schon einigermaßen zuverlässig und es betrifft nun nichts sicherheitsrelevantes.
Und 10 neue rückkanalfähige Steckdosenstecker möchte ich derzeit nicht anschaffen....
Titel: Antw:readings eines Devices regelmäßig senden
Beitrag von: CoolTux am 16 Mai 2017, 08:15:26
Ich kenne jetzt das Modul für FS20 nicht, aber bei den IST Teilen kann man ein Attribut zur Befehlswiederholung setzen. Falls noch nicht dran gedacht  :)
Titel: Antw:readings eines Devices regelmäßig senden
Beitrag von: Amenophis86 am 16 Mai 2017, 13:42:09
Sollte das Problem gelöst sein, dann bitte als solches markieren. Danke :)
Titel: Antw:GELÖST ! : Readings eines Devices regelmäßig senden
Beitrag von: rasti am 17 Mai 2017, 00:20:19
Hallo,

doch noch nicht gelöst  ???

Ich habe definiert :
define FS20_Steckdose_1_Repeat at +*00:10:00 set FS20_Steckdose_1 [FS20_Steckdose_1]

Und nun im Log folgende Einträge gefunden
2017.05.16 11:45:25 3: FS20_Steckdose_1_Repeat: Unknown argument [FS20_Steckdose_1], choose one of dim06% dim100% dim12% dim18% dim25% dim31% dim37% dim43% dim50% dim56% dim62% dim68% dim75% dim81% dim87% dim93% dimdown dimup dimupdown off off-for-timer on on-100-for-timer-prev on-for-timer on-old-for-timer on-old-for-timer-prev ramp-off-time ramp-on-time reset sendstate timer toggle dim:slider,0,6.25,100 on-till on-till-overnight blink off-till-overnight intervals off-till


Das in den eckigen Klammern [FS20_Steckdose_1] versteht er also nicht....das muss irgendwie anders formatiert werden...Wie ?

Viele Grüße

Ralf

Titel: Antw:GELÖST ! : Readings eines Devices regelmäßig senden
Beitrag von: CoolTux am 17 Mai 2017, 04:49:39
Wie aktuell ist Dein FHEM?
Titel: Antw:GELÖST ! : Readings eines Devices regelmäßig senden
Beitrag von: igami am 17 Mai 2017, 06:05:58
Zitat von: rasti am 17 Mai 2017, 00:20:19
Das in den eckigen Klammern [FS20_Steckdose_1] versteht er also nicht....das muss irgendwie anders formatiert werden...Wie ?
siehe https://fhem.de/commandref.html#set
Es muss noch das Reading mit angegeben werden
Titel: Antw:GELÖST ! : Readings eines Devices regelmäßig senden
Beitrag von: CoolTux am 17 Mai 2017, 06:09:18
Zitat von: igami am 17 Mai 2017, 06:05:58
siehe https://fhem.de/commandref.html#set
Es muss noch das Reading mit angegeben werden

Stimmt, das hatte ja nur bei DOIF ohne geklappt. Dann also

[FS20_Steckdose_1:state] als Beispiel.
Titel: Antw:GELÖST ! : Readings eines Devices regelmäßig senden
Beitrag von: igami am 17 Mai 2017, 07:35:13
Zitat von: CoolTux am 17 Mai 2017, 06:09:18
Stimmt, das hatte ja nur bei DOIF ohne geklappt. Dann also

[FS20_Steckdose_1:state] als Beispiel.
Ich würde auch immer das Readings mit angeben. im STATE kann sonstwas stehen. Auch Value würde ich keinem empfehlen, lieber ReadingsVal und fallback mit angeben, dann weiß man wenigstens was passiert :)