Fehler bei einer IF Bedingung

Begonnen von Reddevil, 23 April 2014, 16:16:54

Vorheriges Thema - Nächstes Thema

Reddevil

Hallo,

ich habe das Handbuch durchgearbeitet und wollte mich mal an eine ganz einfache Sache machen wie, wenn ein Anruf eingeht soll der Denon auf Mute gehen.
Das ganze wollte ich dann mit ReadingsVal machen und habe folgendes geschrieben:

define muteoncall { if
(ReadingsVal ("AVM","event","disconnect") eq "ringing") { fhem("set wz_denon mute on") }}

(Folgt dem Beispiel in der Anleitung auf Seite 40)

Das ganze habe ich mir in einem Texteditor geschrieben und dann kopiert um es in der fhem Befehlszeile einzugeben.

Als Fehlermeldung bekomme ich in fhem: Unknown module {

Was ist denn nun hieran verkehrt?
Ich weis das es fertige andere Lösungen gibt (die ich auch aktuell nutze), aber ich möchte die Programmierung schon verstehen.

THX

marvin78

#1
Der Fehler weist eigentlich schon recht klar darauf hin, was hier falsch ist. Du hast schlicht ein define gemacht ohne mitzuteilen, was du definieren möchtest. Nach dem Namen des Devices erwartet FHEM den Modulnamen. Der Fehler sagt, dass FHEM { als Modul nicht kennt.

Da ich denke, dass du hier ein notify bauen möchtest, müsste dein Code in etwa so lauten:

define muteoncall notify AVM:event:.ring set wz_denon mute

Reddevil

Hallo marvin78,

Danke für Deinen Beitrag, das sieht ja wesentlich einfacher aus...
Allerdings wurde es in dem Handbuch nicht so beschrieben.
Wie gesagt ich bin da dem angegebenen Beispiel gefolgt wie man Bedingungen mit ReadingsVal strickt.
Gibts irgendwo eine Anleitung die Dein Beispiel beschreibt?

THX

Puschel74

Hallo,

ja.
Die commandref und das Einsteiger.pdf

Grüße
Zotac BI323 als Server mit DBLog
CUNO für FHT80B, 3 HM-Lan per vCCU, RasPi mit CUL433 für Somfy-Rollo (F2F), RasPi mit I2C(LM75) (F2F), RasPi für Panstamp+Vegetronix +SONOS(F2F)
Ich beantworte keine Supportanfragen per PM! Bitte im Forum suchen oder einen Beitrag erstellen.