hallo zusammen,
irgendwie raffe ich die Syntax nicht. Ich habe folgendes:
define Radio_An_MOFR WeekdayTimer BJobenSteuerung WeekdayTimer 8|06:35|1 {fhem("set BJobenSteuerung 1Livediggi $EVENT")} (Value("Automatikmodus") eq "Standard")
Was möchte ich? das entsprechend dem gestellten Weekdaytimer um 6:35 Uhr der Befehl "set BJobenSteuerung 1Livediggi 1" ausgefüht wird. wenn der Automatikmodus = Standard ist. Damit geht das Busch Jäger -Radio an. Das tuts aber nicht, was mache ich falsch? Irgendwas im Bereich der geschweiften Klammer ist wohl falsch bei mir
zum Einen würde ich sagen, die geschweiften Klammern sind falsch gesetzt und zum Zweiten würde ich sagen, da fehlt irgendwo ein if um die gewünschte Bedingung abzufragen.
Zitat von: CommandRefdefine <name> WeekdayTimer <device> [<language>] [weekdays] <profile> <command>|<condition>
Bei Weekdaytimer, ist es ENTWEDER {command} ODER (condition). Wenn Du beides brauchst, musst Du die condition in dem Perlcode von command einbauen
{ command if (condition) }
oder
{ if (condition) {command}}
Deswegen die Antwort von betateilchen.
{fhem("set BJobenSteuerung 1Livediggi $EVENT") if (Value("Automatikmodus") eq "Standard") }
solte gehen
Zitat von: amenomade am 16 Januar 2018, 12:42:09
Bei Weekdaytimer, ist es ENTWEDER {command} ODER (condition). Wenn Du beides brauchst, musst Du die condition in dem Perlcode von command einbauen
{ command if (condition) }
oder
{ if (condition) {command}}
Deswegen die Antwort von betateilchen.
{fhem("set BJobenSteuerung 1Livediggi $EVENT") if (Value("Automatikmodus") eq "Standard") }
solte gehen
Ok probiere ich mal aus. Bei meinen anderen weekdaytimern geht die Bedingung einfach mit Klammer dahinter seit 1 Jahr problemlos ohne IF
Gesendet von iPhone mit Tapatalk
Zitat von: Andre0909 am 16 Januar 2018, 13:36:48
Ok probiere ich mal aus. Bei meinen anderen weekdaytimern geht die Bedingung einfach mit Klammer dahinter seit 1 Jahr problemlos ohne IF
Gesendet von iPhone mit Tapatalk
Ah entweder / oder alles klar
Gesendet von iPhone mit Tapatalk
Zitat von: Andre0909 am 16 Januar 2018, 13:36:48
Ok probiere ich mal aus. Bei meinen anderen weekdaytimern geht die Bedingung einfach mit Klammer dahinter seit 1 Jahr problemlos ohne IF
Die Bedingung geht einfach mit Klammer ohne if solange Du kein spezielles Kommando in der DEF auch dazu nutzt.
Zitat von: amenomade am 16 Januar 2018, 16:57:12
Die Bedingung geht einfach mit Klammer ohne if solange Du kein spezielles Kommando in der DEF auch dazu nutzt.
Danke für deine und eure Hilfe. Mal schauen ob ich morgen früh von Musik im Bad entfangen werde :)
Gesendet von iPhone mit Tapatalk
Wenn's funktioniert bitte das Subject des ersten Posts bearbeiten und [Gelöst] davor schreiben (und bei der Gelegenheit vielleicht ein etwas aussagekräftigeres Subject wählen, Stichwort weekdaytimer o.ä. mit aufnehmen).
Danke :-)
Zitat von: KernSani am 16 Januar 2018, 23:44:48
Wenn's funktioniert bitte das Subject des ersten Posts bearbeiten und [Gelöst] davor schreiben (und bei der Gelegenheit vielleicht ein etwas aussagekräftigeres Subject wählen, Stichwort weekdaytimer o.ä. mit aufnehmen).
Danke :-)
Alles klar mache ich dann. Ging aber leider nicht. Hab den Code genau wie vorgeschlagen so kn der cfg. Denken das evtl noch Semikolons rein müssen ? Sorry mit Perl Zusammenspiel kenn ich mich leider noch nicht so aus
Gesendet von iPhone mit Tapatalk
Leider auch ein 2. Test ohne ERfolg. Doch nochwas falsch?
Es soll halt
set BJobenSteuerung 1Livediggi 1
um 6:35 ausgeführt werden. Der Automatikmodus steht auf Standard.
Mit der Empfehlung
define Radio_An_MOFR WeekdayTimer BJobenSteuerung WeekdayTimer 8|06:35|1 {fhem("set BJobenSteuerung 1Livediggi $EVENT") if (Value("Automatikmodus") eq "Standard") }
in der DFG hat es leider nicht geklappt
Zeig mal das Ergebnis eines "list Radio_An_MOFR" bitte
Zitat von: amenomade am 18 Januar 2018, 16:20:52
Zeig mal das Ergebnis eines "list Radio_An_MOFR" bitte
Das wäre dann:
Internals:
COMMAND WeekdayTimer 8|06:35|1 {fhem("set BJobenSteuerung 1Livediggi $EVENT") if (Value("Automatikmodus") eq "Standard") }
CONDITION
DEF BJobenSteuerung WeekdayTimer 8|06:35|1 {fhem("set BJobenSteuerung 1Livediggi $EVENT") if (Value("Automatikmodus") eq "Standard") }
DEVICE BJobenSteuerung
GlobalDaylistSpec
LANGUAGE de
NAME Radio_An_MOFR
NR 354
STATE ???
STILLDONETIME 0
TYPE WeekdayTimer
SWITCHINGTIMES:
Timer:
Radio_an_mofr_settimerofday:
HASH Radio_An_MOFR
MODIFIER SetTimerOfDay
NAME Radio_An_MOFR_SetTimerOfDay
SETTIMERATMIDNIGHT 1
Daynumber:
!$we 8
$we 7
di 2
do 4
fr 5
mi 3
mo 1
sa 6
so 0
Helper:
daysRegExp (so|mo|di|mi|do|fr|sa|\$we|\!\$we)
daysRegExpMessage (so|mo|di|mi|do|fr|sa|$we|!$we)
Switchingtime:
Longdays:
de:
Sonntag
Montag
Dienstag
Mittwoch
Donnerstag
Freitag
Samstag
Wochenende
Werktags
en:
Sunday
Monday
Tuesday
Wednesday
Thursday
Friday
Saturday
weekend
weekdays
fr:
Dimanche
Lundi
Mardi
Mercredi
Jeudi
Vendredi
Samedi
weekend
jours de la semaine
Profil:
Shortdays:
de:
so
mo
di
mi
do
fr
sa
$we
!$we
en:
su
mo
tu
we
th
fr
sa
$we
!$we
fr:
di
lu
ma
me
je
ve
sa
$we
!$we
Attributes:
Du hast in der def ein WeekdayTimer zu viel.
Gruß
Hans
Zitat von: Hans Franz am 18 Januar 2018, 19:52:22
Du hast in der def ein WeekdayTimer zu viel.
Gruß
Hans
Wie unfassbar BLIND man sein kann. oh mann. DANKE