FB_CALLMONITOR: Eingehende und ausgehende Rufe unterscheiden usw.

Begonnen von Brockmann, 10 Juli 2014, 16:55:46

Vorheriges Thema - Nächstes Thema

Puschel74

#30
Hallo,

und im verlintken Beitrag sieht man das die Screenshots eingebettet sind.
Und das wo ich mir so ungern irgendwelche Files aus dem Internet runterlade weil es auch eine andere Möglichkeit gibt).

Aber nach 132 Beiträgen noch einen auf Unwissend machen ist schon hart  ;D
Und ich dachte mein angepinnter Beitrag ist recht leicht und verständlich geschrieben - was muss ich ändern oder was ist zu kompliziert beschrieben?
Ich änder den gerne ab wenn was unverständlich ist.

Grüße

P.S.: Mal schauen, vielleicht zieh ich mir deine Dateien doch noch runter und schau sie mir noch an.

Edith: Das Define von mirco.homestatus fehlt noch - nur der Vollständigkeit halber - ich will sowas gerne so weit es geht 1:1 nachbauen.
Und die Events im EventMonitor wenn ein Anruf eingeht und das notify auslösen sollte fehlt auch noch.
Ich werde das notify aber erstmal "kürzen" - den Callmonitor benutze ich auch und werd mir mal einen Logeintrag machen lassen.
Damit kannst du ja dann mal schauen ob dein notify überhaupt was macht - aber sowas wurde doch, meine ich  ??? von Brockmann schonmal gepostet.

Edith2: Versuch mal das und zeig uns den Logfileauszug bitte - mMn kann das notify nicht richtig funktionieren da %EVTPART immer ne "unknown" sein wird.
Fritz_Box:missed_call:.* {
    Log(2,"%EVTPART hat angerufen");
    Log(2,"$EVTPART0 $EVTPART1 und $EVTPART2 als Vergleich");
}

Einfach das DEF bearbeiten und gegen das ersetzen - modify klicken und dich mal selbst anrufen und posten.
Mir war doch so das %EVTPART nicht passen kann, es wird hier $EVTPART0 bis $EVTPART2 beschrieben.
Edith2: In $EVTPART2 steht die anrufende Nummer drin oder ggf. unknown (hoffentlich).
Fritz_Box:missed_call:.* {
  if (Value("Mirco.homestatus") =~ "Unterwegs|im Büro") {
    Log(2,"$EVTPART1 hat angerufen");
  }
}

Versuchs mal so - wenn im Logfile kein Text xyz hat angerufen auftaucht dann passt deine Valueabfrage nicht
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.

coolice

Anbei noch das define des Homestatus. Das notify werde ich heute wenn die Meute im Bett ist testen. Danke dafür.

coolice

#32
Fritz_Box:missed_call:.* {
    Log(2,"%EVTPART hat angerufen");
    Log(2,"$EVTPART0 $EVTPART1 und $EVTPART2 als Vergleich");
}


Bringt den Fehler Anruf_abwesend return value: Global symbol "$EVTPART2" requires explicit package name at (eval 24211) line 3.


Fritz_Box:missed_call:.* {
  if (Value("Mirco.homestatus") =~ "Unterwegs|im Büro") {
    Log(2,"$EVTPART1 hat angerufen");
  }
}

Versuchs mal so - wenn im Logfile kein Text xyz hat angerufen auftaucht dann passt deine Valueabfrage nicht
[/quote]

bringt 2014.10.03 13:31:04 2: 0172xxxxxxx hat angerufen  ;D

Puschel74

#33
Hallo,

ich würde die Rufnummer unkenntlich machen  ;)

ZitatAnruf_abwesend return value: Global symbol "$EVTPART2" requires explicit package name at (eval 24211) line 3.
Entweder hast du einen anderen Code verwendet oder du hast einen anderen CALLMONITOR  :o

Ich muss nochmal schauen aber in $EVTPART2 steht vermutlich der Name des Anrufers wenn die Nummer aufgelöst werden kann.

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.

Puschel74

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.

Brockmann

Zitat von: Puschel74 am 03 Oktober 2014, 14:20:58
Ich muss nochmal schauen aber in $EVTPART2 steht vermutlich der Name des Anrufers wenn die Nummer aufgelöst werden kann.
Ja und das ist das Problem: Wenn kein Anrufer identifiziert werden kann oder wenn keine Nummer übermittelt wurde, dann gibt es kein $EVTPART2. Deshalb habe ich es so gelöst, wie ich es hier im Thread gepostet hatte.
Was mich zu der Frage bringt: Wer löscht eigentlich Beiträge aus diesem Thread (nämlich eben den, wo ich auf Anfrage von Coolice meine Lösung gepostet hatte)?
Genauer gesagt hatte ich dieses Notify gepostet, was bei mir problemlos funktioniert:

Fritz_Box:missed_call:.* {if ((Value("HAUS_STATUS") =~ "Abwesend|Babysitter|Urlaub") && ("%EVTPART1" ne "unknown")) {my $t= substr("%EVENT",13);;fhem("set Pushover msg 'FHEM' 'Anruf verpasst: $t' 'gs5' 0 'tugboat'")}}