Hauptmenü

(Gelöst) Notify und at

Begonnen von is2late, 14 Juni 2020, 13:30:34

Vorheriges Thema - Nächstes Thema

is2late

Hallo,

ich bekomme ein Notify nicht zum Laufen. Wenn die Alarmanlage ausgeschaltet ist, soll per Sonos zehn Minuten vorher ein Hinweis erklingen, dass die Scharfstellung bevorsteht. Folgenden Code habe ich in verschiedenen Varianten ergebnislos probiert:

defmod n_gleichAlarmzeit notify Alarmanlage:Aus at *22:50:00 set Sonos_Unnamed_Room Speak 30 de In zehn Minuten schaltet sich die Alarmanlage ein

Findet jemand den Fehler?

LG und Dank,
is2late
Pi4, Tahoma Jalousien, Hue, Echo, Sonos, Lupusec XT3, FritzBox

MadMax-FHEM

Sollen wir raten was das Problem ist!!?

Was geht denn nicht?
Fehler im Log?

Wie soll ein at 10 VOR irgendwas laufen was schon passiert ist!?

Wie geschrieben: mit den super detaillierten Infos, lists von beteiligten Geräten, etc. -> keine Ahnung...

Gruß, Joachim
FHEM PI3B+ Bullseye: HM-CFG-USB, 40x HM, ZWave-USB, 13x ZWave, EnOcean-PI, 15x EnOcean, HUE/deCONZ, CO2, ESP-Multisensor, Shelly, alexa-fhem, ...
FHEM PI2 Buster: HM-CFG-USB, 25x HM, ZWave-USB, 4x ZWave, EnOcean-PI, 3x EnOcean, Shelly, ha-bridge, ...
FHEM PI3 Buster (Test)

is2late

Entschuldigung!
Also: Sonos gibt nicht die gewünschte Meldung ab. Ich bin beim Schreiben meiner Frage davon ausgegangen, dass ein Syntaxfehler oä vorliegt und hab daher in dem Log nicht nachgesehen und auch keine weiteren Infos geliefert. Mittlerweile bin ich von dem Notify abgerückt und hab einfach ein at formuliert:
defmod a_gleichAlarmzeit at *22:50:00 set Sonos_Unnamed_Room Speak 30 de TEXT
Das funktioniert einwandfrei. Jetzt würde ich noch gern die Alarmanlage dort mit einbinden, dh die Sonos-Ansage soll nur erfolgen, wenn die Alarmanlage ausgeschaltet ist. Würde also gern wissen, wie man diese zusätzliche Bedingung mit einbinden kann.
Ich tippe mal auf ein if gemäß folgendem Beispiel:
if ($wday == 3) => ... ob der 3. Wochentag ist, wenn ja dann ..., weiß aber nicht, wie anzupassen.

LG
Pi4, Tahoma Jalousien, Hue, Echo, Sonos, Lupusec XT3, FritzBox

TomLee

#3
Verstehe es so das jeden Tag eine Sprachausgabe erfolgen soll wenn die Alarmanlage noch aus ist:

Zitatdefine n_gleichAlarmzeit at *22:50:00 {if (Value("Alarmanlage") eq "offAUS") {fhem(set Sonos_Unnamed_Room Speak 30 de In zehn Minuten schaltet sich die Alarmanlage ein)}}

Gruß

Thomas

is2late

Ja, korrekt. Täglich um 22:50 Uhr, wenn die Alarmanlage aus ist, soll die Ansage erfolgen.
Pi4, Tahoma Jalousien, Hue, Echo, Sonos, Lupusec XT3, FritzBox

MadMax-FHEM

Warum machst du dann nicht ein at um 22:00 (wenn die Uhrzeit FIX ist) und frägst darin ab, ob Aus und machst nur dann die Ansage!?

Funktioniert denn der Speak-Befehl an sich in FHEMWeb!?

Gruß, Joachim
FHEM PI3B+ Bullseye: HM-CFG-USB, 40x HM, ZWave-USB, 13x ZWave, EnOcean-PI, 15x EnOcean, HUE/deCONZ, CO2, ESP-Multisensor, Shelly, alexa-fhem, ...
FHEM PI2 Buster: HM-CFG-USB, 25x HM, ZWave-USB, 4x ZWave, EnOcean-PI, 3x EnOcean, Shelly, ha-bridge, ...
FHEM PI3 Buster (Test)

is2late

#6
Hallo TomLee,

hab Deinen Code gleich mal probiert, vielen Dank!
Im Raw gibt es dabei folgenden Hinweis:
syntax error at (eval 3340) line 1, near "Speak 30"

@MadMax: Würde ich ja gern, wenn gewusst, wie... ja, die Sonos-Ansagen funktionieren grundsätzlich.

LG
Pi4, Tahoma Jalousien, Hue, Echo, Sonos, Lupusec XT3, FritzBox

TomLee

Da haben noch die " gefehlt jetzt:

defmod n_gleichAlarmzeit at *22:50:00 {if (Value("Alarmanlage") eq "offAUS") {fhem("set Sonos_Unnamed_Room Speak 30 de In zehn Minuten schaltet sich die Alarmanlage ein")}}

is2late

Funktioniert perfekt, herzlichen Dank!
Pi4, Tahoma Jalousien, Hue, Echo, Sonos, Lupusec XT3, FritzBox

TomLee

Zitat von: is2late am 14 Juni 2020, 14:31:30
Funktioniert perfekt, herzlichen Dank!

Sicher ? Hast du es auch getestet ?
Hab das Gefühl du hast wieder nur kopiert, weil oben war noch ein Fehler drin, zeig mal besser noch ein List oder Raw Definition.

MadMax-FHEM

Gewusst wie, naja, so in der Art (NICHT copy/paste, dazu hab ich jetzt zu wenig mitgelesen und es wird ja offenbar eine andere Variante verfolgt ;)  ):

Äh, ok, dann doch at und Abfragen ;)

Schneller geschrieben als geselen ;)
...hab ich erst gemerkt, als ich das Beispiel zusammenkopieren wollte ;)


Eine Anmerkung nur:

Value "frägt" STATE ab!!
Also das INTERNAL!

NICHT state (das Reading)...

Ist beeinflussbar duch z.B. stateFormat!

Führt ab und an (oft) dazu, dass "man" sich wundert warum Dinge (plötzlich: STATE ändert sich/wird "beeinflusst") nicht mehr gehen...

Value ist zwar schnell "hingeschrieben" aber, naja...

Ich nutze eher ReadingsVal/ReadingsNum/AttrVal/AttrNum/InternalVal/...

Ja, etwas "mehr zu schreiben" aber dafür weiß man (hoffentlich) GENAU was man bekommt/abfrägt...

Gruß, Joachim
FHEM PI3B+ Bullseye: HM-CFG-USB, 40x HM, ZWave-USB, 13x ZWave, EnOcean-PI, 15x EnOcean, HUE/deCONZ, CO2, ESP-Multisensor, Shelly, alexa-fhem, ...
FHEM PI2 Buster: HM-CFG-USB, 25x HM, ZWave-USB, 4x ZWave, EnOcean-PI, 3x EnOcean, Shelly, ha-bridge, ...
FHEM PI3 Buster (Test)

is2late

@TomLee: Na hör mal, ich gebe mich doch nicht auf Verdacht zufrieden  ;)
Habs natürlich mit aktueller Uhrzeit getestet und es funktioniert. Hier das List:
Internals:
   CFGFN     
   COMMAND    {if (Value("Alarmanlage") eq "Aus") {fhem("set Sonos_Unnamed_Room Speak 30 de In zehn Minuten schaltet sich die Alarmanlage ein")}}
   DEF        *22:50:00 {if (Value("Alarmanlage") eq "Aus") {fhem("set Sonos_Unnamed_Room Speak 30 de In zehn Minuten schaltet sich die Alarmanlage ein")}}
   FUUID      5ee61817-f33f-a080-06d6-b20e3bca7ebeeb7c
   NAME       a_gleichAlarmzeit
   NR         401
   PERIODIC   yes
   RELATIVE   no
   REP        -1
   STATE      Next: 22:50:00
   TIMESPEC   22:50:00
   TRIGGERTIME 1592167800
   TRIGGERTIME_FMT 2020-06-14 22:50:00
   TYPE       at
   READINGS:
     2020-06-14 17:31:09   state           Next: 22:50:00
Attributes:


Wo siehst Du denn da einen weiteren Fehler?

@Joachim: Danke, hab wieder etwas gelernt.

LG
Pi4, Tahoma Jalousien, Hue, Echo, Sonos, Lupusec XT3, FritzBox

TomLee

ZitatNa hör mal, ich gebe mich doch nicht auf Verdacht zufrieden

Is ja gut  ;D

Zitat@Joachim: Danke, hab wieder etwas gelernt.

Wirklich, lies nochmal genau was er schrieb, sehe nicht das du seine Empfehlung umgesetzt hast.



betateilchen


{ fhem('set Sonos_Unnamed_Room Speak 30 de In zehn Minuten schaltet sich die Alarmanlage ein') if (ReadingsVal('Alarmanlage','state','') eq 'Aus') }


Zeit für Popcorn  :)
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

is2late

Das wäre es mir wert....Komm vorbei und bediene Dich einfach.....  ;) Aber Vorsicht, Alarmanlage... 8)
Vielen Dank, Betateilchen
Pi4, Tahoma Jalousien, Hue, Echo, Sonos, Lupusec XT3, FritzBox