FHEM Forum

FHEM => Anfängerfragen => Thema gestartet von: holzfelix am 10 März 2019, 18:22:39

Titel: notify größer als
Beitrag von: holzfelix am 10 März 2019, 18:22:39
Hi zusammen,

ich möchte gerne ein notify senden sobald einwert größer als 60 ist.

so in die richtung:

define notifyhumidityBad notify humidityBad:humidity:.* { if(ReadingsVal("humidityBad","humidity","") > 50) { fhem("set teleBot _msg bad hohe luftfeuchtigkeit") }}


geht das?
Titel: Antw:notify größer als
Beitrag von: CoolTux am 10 März 2019, 18:24:53
Nein das geht nicht. Du musst hier mit RegEx arbeiten.
Alternative wäre ein userReadings im Device humiditywarn zu erstellen und ein high oder low als value zu nehmen. Dann reagierst du auf das high.
Titel: Antw:notify größer als
Beitrag von: holzfelix am 10 März 2019, 18:26:02
ich hab meinen code oben aktualisiert wie ist das geht das so vielleicht?
Titel: Antw:notify größer als
Beitrag von: holzfelix am 10 März 2019, 18:27:06
uh das hat sogar funktioniert ... es hat was gesendet
Titel: Antw:notify größer als
Beitrag von: CoolTux am 10 März 2019, 18:34:39
Ja das geht auch. Aber so triggert das Notify ja ständig.

Und so lange de rWert drüber liegt bekommst Du jedesmal eine Nachricht.

Gib mal bitte ein list vom Device was humidity hat und ein list vom Notify
Titel: Antw:notify größer als
Beitrag von: holzfelix am 10 März 2019, 18:59:27
ja da hast du recht es bimmelt bei jedem update.

was für ein list möchtest du?
Titel: Antw:notify größer als
Beitrag von: amenomade am 10 März 2019, 19:08:43
"list humidityBad" und "list notifyhumidityBad" im Kommandofeld von Fhem eingeben. Dann copy/paste

Siehe hier: https://forum.fhem.de/index.php/topic,71806.0.html
Titel: Antw:notify größer als
Beitrag von: CoolTux am 10 März 2019, 19:09:42
list ist ein FHEM Kommando das Du in der FHEMWEB Kommandozeile ein gibst
list DEVICENAME

hier brauche ich vom Device welches das humidity Reading hat und vom Notify Device bitte.
Titel: Antw:notify größer als
Beitrag von: holzfelix am 10 März 2019, 21:52:18

Internals:
   DEF        WSDCGQ11LM 0x00158d0002c9cab9
   FRIENDLYNAME
   IODev      myBroker
   MODEL      WSDCGQ11LM
   NAME       humidityBad
   NOTIFYDEV  WSDCGQ11LM 0x00158d0002c9cab9
   NR         155
   SID        0x00158d0002c9cab9
   STATE      state
   TYPE       XiaomiMQTTDevice
   READINGS:
     2019-03-10 21:31:30   battery         low
     2019-03-10 21:31:30   battery_level   55
     2019-03-10 21:31:30   humidity        67.63
     2019-03-10 21:31:30   linkquality     31
     2019-03-10 21:31:30   pressure        965
     2019-03-10 21:31:30   temperature     21.1
     2019-03-10 21:31:30   transmission-state incoming publish received
     2019-03-10 21:31:30   voltage         2995
   message_ids:
   subscribe:
     zigbee2mqtt/0x00158d0002c9cab9
     xiaomi/0x00158d0002c9cab9/#
   subscribeExpr:
     ^zigbee2mqtt\/0x00158d0002c9cab9$
     ^xiaomi\/0x00158d0002c9cab9.*$
   subscribeQos:
     xiaomi/0x00158d0002c9cab9/# 0
     zigbee2mqtt/0x00158d0002c9cab9 0
Attributes:
   IODev      myBroker
   room       6_Bad,MQTT,XiaomiMQTTDevice
   stateFormat state






Internals:
   CFGFN     
   DEF        humidityBad:humidity:.* { if(ReadingsVal("humidityBad","humidity","") > 65) { fhem("set teleBot _msg bad hohe luftfeuchtigkeit") }}
   NAME       notifyhumidityBad
   NOTIFYDEV  humidityBad
   NR         9722
   NTFY_ORDER 50-notifyhumidityBad
   REGEXP     humidityBad:humidity:.*
   STATE      2019-03-10 21:31:30
   TRIGGERTIME 1552249890.57154
   TYPE       notify
   READINGS:
     2019-03-10 19:05:32   state           active
Attributes:



Titel: Antw:notify größer als
Beitrag von: amenomade am 10 März 2019, 21:57:10
define dihumidity DOIF ([humidityBad:humidity] > 65) (set teleBot _msg bad hohe luftfeuchtigkeit)Sowas sollte reichen und nur einmal benachrichtigen.
Titel: Antw:notify größer als
Beitrag von: CoolTux am 10 März 2019, 21:57:38

attr humidityBad userReadings humidityWarn:humidity:.* { ( ReadingsNum($name,'humidity',1000) > 65 ? 'high' : 'low' ) }




humidityBad:humidityWarn:.high set teleBot _msg bad hohe luftfeuchtigkeit


So sollte es gehen
Titel: Antw:notify größer als
Beitrag von: amenomade am 10 März 2019, 21:58:58
Er wollte 65 ;)
Aber die Lösung ist auch schön
Titel: Antw:notify größer als
Beitrag von: CoolTux am 10 März 2019, 22:00:06
Sind wir aber heute pingelig  ;D

Hab es geändert.
Titel: Antw:notify größer als
Beitrag von: KernSani am 10 März 2019, 22:07:29
Sollte dann nicht noch ein event-on-change-reading auf humidityWarn?
Titel: Antw:notify größer als
Beitrag von: CoolTux am 10 März 2019, 22:15:09
Jep das wäre auf jeden Fall noch an zu raten.