Name des Anrufers im FB_CALLMONITOR

Begonnen von Hyco, 31 Dezember 2013, 17:10:57

Vorheriges Thema - Nächstes Thema

Hyco

Hallo, ich bin noch FHEM-Frischling!
Ich habe heute den FB_CALLMONITOR aktiviert. Ziel ist es, dass FHEM mir den Anrufer nennt und verschiedene Schalter betätigt.
Ich habe es bereits geschafft, dass mir die Telefonnummer des Anrufers vorgelesen wird. Allerdings wird mir bei external_name immer "unknown" angezeigt. Wie kann ich es schaffen, dass mir der richtige Name aus der Fritz-Box ausgelesen und als external_name angezeigt wird? Ich finde irgendwie nichts im Forum und dem Wiki dazu.
Vielen Dank!

Rince

Wenn du mal den von dir verwendeten Code posten würdest, könnte ein Leser damit mehr anfangen ;)

Beste Grüße

Rince
Wer zu meinen Posts eine Frage schreibt und auf eine Antwort wartet, ist hiermit herzlich eingeladen mich per PN darauf aufmerksam zu machen. (Bitte mit Link zum betreffenden Thread)

det.

1.) Pflege des lokalen Telefonbuches der FB  - alle Kontakte die Du irgendwie mal wieder verwenden willst dort rein
2.) dieses Telefonbuch einbinden - wie siehe commandref bei FB_CALLMONITOR


und es wird erstaunlicher Weise funktionieren!
LG
det.

Hyco

Ich wünsche Euch ein gesundes neues Jahr und vielen Dank für Eure Antworten.
Folgenden Code habe ich in der fhem.cfg eingetragen:
define FritzBox FB_CALLMONITOR 192.168.xxx.xxx
attr FritzBox room System
## Jemand ruft mich an
define TelefonAN notify FritzBox:event:.ring { \
  my $number=(ReadingsVal("FritzBox","external_number",""));;\
  my $telname=(ReadingsVal("FritzBox","external_name",""));;\
  if ($number != 1234567)  { fhem("set TTS Achtung ein Anruf von $telname $number");;} \
}

Wie gesagt, die Nummer wird auch brav angesagt. Ich habe leider auch in der commandref keine Code-Beispiele für das Einbinden des FritzBox-Telefons gefunden.
Ich muss wohl irgendwie das Attribut "reverse-search-phonebook-file" nutzen - habe jedoch noch keinen Plan zur Perl-Syntax.

Rince

#4
Oha,

da gibt es seit kurzem ein Problem:
Du musst dein Telefonbuch von der Fritte sichern. Das geht aber nicht, wenn du es direkt mit deinem Google Account verknüpft hast *ops*.

Ansonsten:
Das Telefonbuch auf der Fritzbox auswählen
Ganz unten steht "Sichern"

Dieses xml File bringst nun auf deinen FHEM Rechner.
In meinem Beispiel .log/

Hier mal meine Config:

##########FB callmonitor#########

define Fritz_Box FB_CALLMONITOR 192.168.10.1
attr Fritz_Box local-area-code 089
attr Fritz_Box reverse-search all
attr Fritz_Box reverse-search-cache 1
attr Fritz_Box reverse-search-cache-file ./log/Fritz_Box-%Y.log Fritz_Box
attr Fritz_Box reverse-search-phonebook-file ./log/Fritz_Box_Telefonbuch_Andi.xml
attr Fritz_Box room Arbeit
# attr Fritz_Box icon icoWelt
define FileLog_Fritz_Box FileLog ./log/Fritz_Box-%Y.log Fritz_Box
attr FileLog_Fritz_Box logtype text
# attr FileLog_Fritz_Box room Technik

### Ende



Edit:
Habe dein Codebeispiel ausprobiert.
Liest brav den Namen und die Nummer vor. Jetzt währe noch eine Sonderbehandlung von unbekannten Anrufern schick ;)
Wer zu meinen Posts eine Frage schreibt und auf eine Antwort wartet, ist hiermit herzlich eingeladen mich per PN darauf aufmerksam zu machen. (Bitte mit Link zum betreffenden Thread)

Rince

Ok,
falls du deine Kontakte mit Google oder sonst einem Anbieter synchronisierst, und daher keine XML ausspielen kannst, dann besorg dir dieses Programm:
http://software.nv-systems.net/ccw/download/

Damit kannst du deine Kontakte als FritzBox XML speichern, die scheint FHEM zu akzeptieren :)
Wer zu meinen Posts eine Frage schreibt und auf eine Antwort wartet, ist hiermit herzlich eingeladen mich per PN darauf aufmerksam zu machen. (Bitte mit Link zum betreffenden Thread)

Hyco

Guten Morgen,

mit Deinen Code-Beispielen hat es jetzt gut geklappt!
Vielen Dank!

Rince

Gerne. Immerhin hast du mir gezeigt, wie man mit meinem TTS Gebastel Variablen vorlesen kann :)

Darf ich das als Codebeispiel zu Dokuzwecken  benutzen?
Wer zu meinen Posts eine Frage schreibt und auf eine Antwort wartet, ist hiermit herzlich eingeladen mich per PN darauf aufmerksam zu machen. (Bitte mit Link zum betreffenden Thread)

Hyco


michael27983

Ich bekomme hier immer Fehler:

2014.03.26 17:34:04 3: Fritz_Box device opened
2014.03.26 17:34:04 3: FB_CALLMONITOR: loading cache file ./log/fbcache.txt
2014.03.26 17:34:04 2: FB_CALLMONITOR: Fritz_Box read no contacts from Cache
2014.03.26 17:34:04 2: FB_CALLMONITOR: Fritz_Box found FritzBox phonebook ./log/Fritz_TB.xml
2014.03.26 17:34:05 2: FB_CALLMONITOR: Fritz_Box read 252 contacts from FritzBox phonebook
2014.03.26 17:34:05 1: Including ./log/fhem.save
2014.03.26 17:34:32 1: CustomGetFileFromURL nginx: malformed or unsupported URL

Meine Config. - Die Kontakte werden nicht angezeigt. Meine Absicht ist eigentlich den Anrufenden Kontakt per Sprachausgabe ansagen zu lassen.


define FileLog_Fritz_Box FileLog ./log/Fritz_Box-%Y.log Fritz_Box
attr FileLog_Fritz_Box logtype text
attr FileLog_Fritz_Box room Telefon

define Fritz_Box FB_CALLMONITOR 192.168.0.1:1012
attr Fritz_Box local-area-code 02509
attr Fritz_Box reverse-search all
attr Fritz_Box reverse-search-cache 1
attr Fritz_Box reverse-search-cache-file ./log/fbcache.txt
attr Fritz_Box reverse-search-phonebook-file ./log/Fritz_TB.xml
attr Fritz_Box room Telefon
attr Fritz_Box userReadings eing0 eing1 eing2 eing3 eing4 A0 A1 A2 A3 A4 B0 B1 B2 B3 B4 C0 C1 C2 C3 C4 D0 D1 D2 D3 D4 E0 E1 E2 E3 E4
attr Fritz_Box verbose 0

Rince

Der Fehler klingt nicht nach einem Callmonitor Fehler.
Ein verbose 0 auf den Callmonitor dürfte auch jeden Fehler effektiv verstecken. Wenn da wirklich was falsch liefe, solltest du verbose auf 3 oder gar 5 setzen. Dann würde man schöner sehen, was passiert.

Der cfg Auszug von Hyco funktioniert sehr gut und liefert eine wunderbare Sprachausgabe.
Wer zu meinen Posts eine Frage schreibt und auf eine Antwort wartet, ist hiermit herzlich eingeladen mich per PN darauf aufmerksam zu machen. (Bitte mit Link zum betreffenden Thread)

michael27983

Ok, die nummer wurde nicht aufgelöst, weil meine eigene Telefonnummer (Handy) tatsächlich nicht im Telefonbuch stand ;)
Aber der Fehler bleibt.

2014.03.26 17:34:32 1: CustomGetFileFromURL nginx: malformed or unsupported URL

Das schaue ich mir dann einmal heute Abend an.

fiedel

Hier ist zu dem Fehler was beschrieben.

Gruß

Frank
FeatureLevel: 6.1 auf Wyse N03D ; Deb. 11 ; Perl: v5.14.2 ; IO: HM-MOD-RPI-PCB + VCCU|CUL 868 V 1.66|LinkUSBi |TEK603
HM: SEC-SCO|SCI-3-FM|LC-SW4-PCB|ES-PMSW1-PL|RC-4-2|SEN-MDIR-O|SEC-WDS-2
CUL: HMS100TF|FS20 S4A-2 ; OWDevice: DS18S20|DS2401|DS2406|DS2423

der-Lolo

cool tts!
jetzt wäre noch toll die durchsage solange zu speichern bis der Android wieder verfügbar ist...