(GELÖST) Telegram Nachricht bei Heizung Ausfall? Mit DoIf?

Begonnen von misux, 13 Februar 2018, 20:53:44

Vorheriges Thema - Nächstes Thema

misux

HI!
Ich bin absoluter Anfänger aber bin immerhin schon soweit das ich mir einen Sensor und den TelegramBot eingerichtet habe...

Nun zu meiner Frage:

Wie müsste ein DoIF Befehl aussehen wenn er mir mit dem TelegramBot eine Nachricht senden soll wenn in Meinen Heizungs Readings unter BasicSet ein Wert 255 steht?

Wäre für einen Tipp sehr Dankbar denn die Ganzen beispiele und Anleitungen auch für if für mich nicht sehr verständlich sind...

Oder ist es besser sowas mit IF oder sogar mit Notify zu machen?

Vielen Dank!

Otto123

Hi,

Du meinst DOIF?
define di_bla DOIF ([Heizungsname:Readingsname] == 255) (Schicke Telegramm)

Ist natürlich mit soviel Infos ausgrüstet die Du geliefert hast.  :D

Gruß Otto
Viele Grüße aus Leipzig  ⇉  nächster Stammtisch an der Lindennaundorfer Mühle
RaspberryPi B B+ B2 B3 B3+ ZeroW,HMLAN,HMUART,Homematic,Fritz!Box 7590,WRT3200ACS-OpenWrt,Sonos,VU+,Arduino nano,ESP8266,MQTT,Zigbee,deconz

misux

#2
Ja, sorry meine DOIF.

leider bekomme ich diese Fehlermeldung:
ALARM DOIF: expected DOELSEIF or DOELSE: set Telegram _msg ALARM

eingegeben habe ich:

define ALARM DOIF ([SENSOR_1_Heizung:basicset] == 255) set Telegram _msg ALARM

hmm...

rabehd

Auch funktionierende Lösungen kann man hinterfragen.

Otto123

so luschig habe ich mein Beispiel doch nicht verfasst  ::)
Viele Grüße aus Leipzig  ⇉  nächster Stammtisch an der Lindennaundorfer Mühle
RaspberryPi B B+ B2 B3 B3+ ZeroW,HMLAN,HMUART,Homematic,Fritz!Box 7590,WRT3200ACS-OpenWrt,Sonos,VU+,Arduino nano,ESP8266,MQTT,Zigbee,deconz

Thyraz

Finde den Fehler / Unterschied zu Ottos Pseudocode. ;)
Fhem und MariaDB auf NUC6i5SYH in Proxmox Container (Ubuntu)
Zwave, Conbee II, Hue, Harmony, Solo4k, LaMetric, Echo, Sonos, Roborock S5, Nuki, Prusa Mini, Doorbird, ...

Damian

Nicht nur als Anfänger, aber insb. als dieser, sollte man sich etwas Zeit zum Lesen lassen: https://fhem.de/commandref_DE.html#DOIF

Nach wenigen Zeilen stößt man dort auf die Syntax des Moduls, die man einfach einhalten muss, sonst kommt man nicht weit.

ZitatSyntax:

define <name> DOIF (<Bedingung>) (<Befehle>) DOELSEIF (<Bedingung>) (<Befehle>) DOELSEIF ... DOELSE (<Befehle>)
Programmierte FHEM-Module: DOIF-FHEM, DOIF-Perl, DOIF-uiTable, THRESHOLD, FHEM-Befehl: IF

Thyraz

Und die Klammern bedeuten nicht, dass da was optional ist, sondern die müssen da einfach hin. ;)
Fhem und MariaDB auf NUC6i5SYH in Proxmox Container (Ubuntu)
Zwave, Conbee II, Hue, Harmony, Solo4k, LaMetric, Echo, Sonos, Roborock S5, Nuki, Prusa Mini, Doorbird, ...

misux

 ::) Hammer... nach vielem hin und her endlich Erfolg!

So muss das besagte aussehen:

([SENSOR_1_Heizung:"255"]) (set Telegram _msg meineNachricht) DOELSE (set Telegram _msg meineNachricht)

Somit sendet mir Telegram eine Nachricht wenn meine Heizung eine Störung hat.

Vielen Dank für eure Hilfe! Manchmal ist es aber echt nicht einfach für einen Leien weil es jedesmal irgendwie anders aussieht...

nils_

warum hast du da jetzt ein DOELSE dazu gepackt?
viele Wege in FHEM es gibt!

CoolTux

Mach das DOELSE weg und dafür das Attribut do always hin.
Du musst nicht wissen wie es geht! Du musst nur wissen wo es steht, wie es geht.
Support me to buy new test hardware for development: https://www.paypal.com/paypalme/MOldenburg
My FHEM Git: https://git.cooltux.net/FHEM/
Das TuxNet Wiki:
https://www.cooltux.net

misux

Der Heizungssensor hat 2 Werte: 255 und 0.

Das DOELSE sendet mir eine Nachricht wenn der Aktor wieder offen (0) ist das die Heizung wieder OK ist!

DOALWAYS würde theoretisch immer eine Nachricht bei 255 senden, richtig?

Otto123

Zitat von: misux am 14 Februar 2018, 10:12:28
Der Heizungssensor hat 2 Werte: 255 und 0.

Das DOELSE sendet mir eine Nachricht wenn der Aktor wieder offen (0) ist das die Heizung wieder OK ist!

DOALWAYS würde theoretisch immer eine Nachricht bei 255 senden, richtig?
Nö, die Else sendet Dir in deinem jetzigen Konstrukt nie
Viele Grüße aus Leipzig  ⇉  nächster Stammtisch an der Lindennaundorfer Mühle
RaspberryPi B B+ B2 B3 B3+ ZeroW,HMLAN,HMUART,Homematic,Fritz!Box 7590,WRT3200ACS-OpenWrt,Sonos,VU+,Arduino nano,ESP8266,MQTT,Zigbee,deconz

CoolTux

glaube aber nicht das Dein DOIF bei 0 triggert. Du sagst ja explizit das er nur beim Event 255 des Devices SENSOR_1_Heizung triggern soll.
Du musst nicht wissen wie es geht! Du musst nur wissen wo es steht, wie es geht.
Support me to buy new test hardware for development: https://www.paypal.com/paypalme/MOldenburg
My FHEM Git: https://git.cooltux.net/FHEM/
Das TuxNet Wiki:
https://www.cooltux.net

Otto123

Ich denke mal von der Funktion ist es egal. Er hat einen Eventtrigger. Bei Event 255 wird gesendet. Bei jedem anderen Event wird nicht gesendet und bestenfalls das DOIF zurückgesetzt (da bin ich nicht sicher)

Ich würde do always machen, ich finde die sinnlose Else unlogisch. Aber das ist Ansichtssache.

Gruß Otto
Viele Grüße aus Leipzig  ⇉  nächster Stammtisch an der Lindennaundorfer Mühle
RaspberryPi B B+ B2 B3 B3+ ZeroW,HMLAN,HMUART,Homematic,Fritz!Box 7590,WRT3200ACS-OpenWrt,Sonos,VU+,Arduino nano,ESP8266,MQTT,Zigbee,deconz