FB_Callmonitor DOIF Ansage auf Alexa

Begonnen von masterpete23, 01 März 2023, 09:55:21

Vorheriges Thema - Nächstes Thema

masterpete23

Hi,

da Sohnemann bitte selber ans Telefon gehen soll, wenn seine Freunde anrufen habe ich ein DOIF gebastelt.
Leider fehlt mir noch ein Baustein bzw. ich verstehe es nicht komplett.
Gebaut hatte ich es mit dem Event Monitor - nun zum Code:

defmod DI_Anruf_Kind1 DOIF (([Callmonitor:"^external_number:.04324324242432424342$"]) and ([?08:00-22:00])) (set ECHO_G091EU04234234390 speak Kind1 ruft an)(set ECHO_G091EU042342290 sounds glocken)

1.was genau bewirkt das ^ vor der external_number ?
2. was genau bewirkt das  hinter der Telefonnummer?
3. wenn ich nun nur bei eingehenden und nicht bei ausgehenden Anrufen das auslösen möchte, wäre dies dann der korrekte Aufruf  ?
defmod DI_Anruf_Kind1 DOIF (([Callmonitor:"^external_number:.04324324242432424342$"]) and ([?08:00-22:00]) and [Callmonitor:"^direction:.
incoming$"]) (set ECHO_G091EU04234234390 speak Kind1 ruft an)(set ECHO_G091EU042342290 sounds glocken)


Danke für die Hilfe

mthome

Hallo masterpete,

ich kann zwar Deine Frage nicht direkt beantworten, aber ich hatte mir eine Funktion gebaut, die ansagt wer anruft. Das könntest Du ggf. etwas modifizieren. Ich habe das damals mit notify auf den ring Event gebaut:
CallMonitor:event:.ring {my $name=(ReadingsVal("CallMonitor","external_name",1));
my $number=(ReadingsVal("CallMonitor","external_number",1));
if ($name eq "unknown")  {fhem ("set ECHO_G2A1XXXXX speak $number ruft an.");}
else {fhem ("set ECHO_G2A1XXXXX speak $name ruft an.");}
}

Evtl. kannst du das ja für Deinen Fall anpassen.