Eine Client/Server-Anwendung zur Speicherung und
zur Anzeige von Verbindungsdaten zu Telefonaten, die über die
Fritzbox geführt werden bzw. wurden.
Achtung!
Offenbar hat sich die Webseite von 11880 etwas geändert, weshalb
die Rückwärtssuche keine Namen zu Nummern mehr gefunden hat.
Die Version 1.2 ist entsprechend angepasst.
Inhalt
OWN_AREA_CODE | Hier ist die eigene Vorwahlnummer
einzustellen (sie wird Nummern aus dem Telefonbuch ohne
führende Null vorangestellt). |
FRITZBOX_IP | Unter der hier eingestellten IP-Adresse oder dem Hostname wird die Fritzbox erwartet. |
CALLMON_SERVER_SOCKET | Auf dem hier eingestellten Port lauscht das Script und wartet auf Verbindungen von CallMon-Clients. |
FRITZBOX_CALLMON_PORT |
Dieser Wert sollte üblicherweise nicht
geändert werden. Auf dem Port lauscht der
Fritzbox-Callmonitor (1012). |
USE_11880_QUERIES |
Wird hier der Wert True durch False
ersetzt, fragt der CallMon-Server nicht mehr bei 11880 nach
Namen zu unbekannten Telefonnummern an. |
STATUS_TO_TERMINAL |
Bei dem Wert True werden
Status-Meldungen ausgegeben, bei False nur
Fehlermeldungen. |
FRAME_NO_TASKBAR | Wird hier der Wert False durch True
ersetzt, erscheint der CallMon-Client nicht mehr in der
Taskbar. In diesem Fall kann er mittels wmctrl -a
CallMonClient in den Vordergrund geholt
werden (was primär dann Sinn macht, wenn man in der Taskbar
ein Starter hat, der dies tut). |
Will heißen: keine geöffneten Sockets zu Clients, aber eine offene Verbindung zum Fritzbox-Callmonitor.
dede@c2q:~/callmon> ./CallMonServer.py
2014.11.28-17:45:42 Anweisungs-Sockets=0 Meldungs-Sockets=0 Clients=[]
2014.11.28-17:45:42 Die Verbindung zum CallMonitor der Fritzbox wurde hergestellt!
Es wurde ein Anweisungs- und ein Meldungs-Socket geöffnet, dann die eigene Ortsvorwahl, die Liste von bereits beendeten Telefonaten und danach die Liste der aktuell offenen Telefonate vom Client angefragt. Etwas später (um 17:51) wurde der Server vom Client noch angewiesen, das Telefonbuch der Fritzbox in die Datenbank zu übertragen. Der Buchstaben-Salat ist das verschlüsselte Passwort der Fritzbox, das am Client abgefragt wurde.
2014.11.28-17:48:10 connect: 192.168.178.23:60185 alias Client[0]
2014.11.28-17:48:10 Anweisungs-Sockets=1 Meldungs-Sockets=0 Clients=[0]
2014.11.28-17:48:10 connect: 192.168.178.23:60185 alias Client[0]
2014.11.28-17:48:10 Anweisungs-Sockets=1 Meldungs-Sockets=1 Clients=[0]
2014.11.28-17:48:10 Anweisung von Client[0] empfangen: ['GET_OWN_AREA_CODE']
2014.11.28-17:48:10 Anweisung von Client[0] empfangen: ['GET_FINISHED_CALLS', '42']
2014.11.28-17:48:10 Anweisung von Client[0] empfangen: ['GET_OPEN_CALLS']
2014.11.28-17:51:24 Anweisung von Client[0] empfangen: ['READ_PHONEBOOKS', 'C82tfHrfkIFSYYqgYGES9ctm4g1ydhtGTaldMpXHc7iC562k3z4atpWniCrCTIKL4QxFNa2Ru/C9\ncK6JMjeCHBu/MX/iYnFWDyDH46mt9G7V+nINgOSy10G+LVoG9xiiUB0RQzpYoYUWgvuJvnznw8zG\njb8fpQSQhUW/8YN/YNg=']
An verbundenen CallMon-Clients wird der Ausfall mit einer Popup-Meldung signalisiert:
2015.02.08-10:58:19 Die Verbindung zum CallMonitor der Fritzbox ist abgebrochen!
socket.error [Errno 111] Connection refused
socket.error [Errno 111] Connection refused
socket.error [Errno 111] Connection refused
socket.gaierror [Errno -3] Temporary failure in name resolution
socket.gaierror [Errno -3] Temporary failure in name resolution
socket.gaierror [Errno -3] Temporary failure in name resolution
socket.gaierror [Errno -3] Temporary failure in name resolution
socket.gaierror [Errno -3] Temporary failure in name resolution
socket.gaierror [Errno -3] Temporary failure in name resolution
2015.02.08-11:01:34 Die Verbindung zum CallMonitor der Fritzbox wurde hergestellt!
Weil das Fritzbox-Telefonbuch auf den CallMon-Server übertragen wurde, muss nicht jeder weitere Client das Telefonbuch ebenfalls einlesen.
Anmerkung: Das Passwort der Fritzbox wird nirgendwo im Dateisystem gespeichert.
Immer dann, wenn es benötigt wird, fragt der CallMon-Client dessen Nutzer nach dem Passwort und überträgt es verschlüsselt zum CallMon-Server. Dieser meldet sich damit einmalig an der Fritzbox an, um die vom CallMon-Client beauftragte Aktion auszuführen.
Derzeit wird das Fritzbox-Passwort ausschließlich zum Einlesen des Telefonbuches benötigt.
Inhalt |
Bedeutung |
-> |
ausgehendes Telefonat |
<- |
ankommendes Telefonat |
bla |
es wird gesprochen ... bzw. eine Verbindung
ist zustande gekommen |
-X |
das Telefonat ist beendet |
Inhalt |
Bedeutung |
-> |
Es wurde eine Nummer angerufen, dort aber
noch nicht abgehoben. |
-> bla |
Es wurde eine Nummer angerufen und auf der
Gegenseite abgehoben. |
-> -X |
Es wurde eine Nummer angerufen, es ist keine
Verbindung zustande gekommen, dann wurde aufgelegt. |
-> bla -X |
Es wurde eine Nummer angerufen, ein Gespräch
geführt und die Verbindung beendet. |
<- |
Ein ankommender Anruf, den noch niemand
angenommen hat. |
<- bla |
Ein Anruf wurde angenommen und die
Verbindung ist noch offen. |
<- -X |
Ein Anruf kam an, wurde nicht angenommen und
der Anrufer hat aufgelegt. |
<- bla -X |
Ein Anruf wurde angenommen und ist
bereits beendet. |