Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi Telefonat annehmen aus Fritzbox (https://www.delphipraxis.net/202008-telefonat-annehmen-aus-fritzbox.html)

kdf 18. Sep 2019 11:46

Delphi-Version: 10 Seattle

Telefonat annehmen aus Fritzbox
 
Hallo,

hat jemand eine Idee oder gar Lösung, wie ich ein eingehendes Telefonat aus der Fritzbox 6490, bzw. 7490 anzeigen und weiter verarbeiten kann?

Verarbeiten würde mir zunächst ausreichen, wenn folgendes funktionieren würde:

Rufnummer anzeigen, annehmen, auflegen;
Bei bekanntem Anrufer, Datensatz aus DB (Firebird) lesen;
Anruf in meiner DB speichern;
Mitschnitt des Telefonates.

Gruß
K.-D.

jobo 18. Sep 2019 12:06

AW: Telefonat annehmen aus Fritzbox
 
Es gibt hier jemand, der eine Fritzboxverwaltung geschrieben hat. Wenn Du hier suchst, findest Du da sicher was.

Zu Deiner Frage müsstest Du vielleicht präzisieren, womit (Hardware) Du ein Gespräch annehmen willst.
Soll es ein VOIP Client werden, soll es am PC, Tablet, .. laufen..

Uwe Raabe 18. Sep 2019 12:11

AW: Telefonat annehmen aus Fritzbox
 
Die nötige Dokumentation stellt AVM ja bereit: Entwicklungssupport

kdf 18. Sep 2019 12:18

AW: Telefonat annehmen aus Fritzbox
 
Zitat:

Zitat von jobo (Beitrag 1446863)
Zu Deiner Frage müsstest Du vielleicht präzisieren, womit (Hardware) Du ein Gespräch annehmen willst.
Soll es ein VOIP Client werden, soll es am PC, Tablet, .. laufen..

Ich will ja gleich die Daten aus der DB lesen, also Hardware ist PC

jobo 18. Sep 2019 12:34

AW: Telefonat annehmen aus Fritzbox
 
Nun, Uwes Antwort dürfte erstmal keine Wünsche offen lassen.

DB = PC?

DB gibt's grundsätzlich auch auf dem Smartphone, dem Tablet und auch auf der Fritzbox selbst. Letztere dürfte bei guter Pflege sogar schon die passenden Daten enthalten.

Welche DB soll es sein?

kdf 19. Sep 2019 10:28

AW: Telefonat annehmen aus Fritzbox
 
Die DB ist Firebird auf Linux. Client ist Windows.

K.-D.

kdf 19. Sep 2019 10:56

AW: Telefonat annehmen aus Fritzbox
 
Zitat:

Zitat von Uwe Raabe (Beitrag 1446866)
Die nötige Dokumentation stellt AVM ja bereit: Entwicklungssupport

Das ist mir zu hoch.

TiGü 19. Sep 2019 11:24

AW: Telefonat annehmen aus Fritzbox
 
Zitat:

Zitat von kdf (Beitrag 1447058)
Zitat:

Zitat von Uwe Raabe (Beitrag 1446866)
Die nötige Dokumentation stellt AVM ja bereit: Entwicklungssupport

Das ist mir zu hoch.

Was hast du erwartet? Eine fertige Delphi-Komponente zum aufs Formular ziehen? :wall:

zeras 19. Sep 2019 11:38

AW: Telefonat annehmen aus Fritzbox
 
Hier vielleicht eine Anregung.

jus 19. Sep 2019 11:55

AW: Telefonat annehmen aus Fritzbox
 
Hallo,

zum Anfangen finde ich die FRITZ!Box Komponente v0.17 sehr gut. Die aktuelle Doku und die Seite vom Autor findet man hier. Da wir in der Firma eine Fritzbox im Büro haben, nutze ich die Fritzbox um die Telefonnummer des Anrufers auszulesen. Das Stichwort nennt sich "Anrufmonitor". Soweit ich weiß enthält die Fritzboxkompnenten von Garfield auch einen Anrufmonitor.


Zitat:

Zitat von zeras (Beitrag 1447066)

Achja, ich kann mich auch irren, aber der Link von zeras, liest nur die vergangenen Anrufe aus, sprich dann ist meist der Anruf schon wieder beendet. Damit du den aktuellen Anrufer mitkriegst, schau dir die Implementierung von Anrufmonitor an. Wir verwenden eine nicht so ausgefeilte Implementierung wie von Garfield, aber das Prinzip bei der Fritzbox ist eigentlich, dass eine TCP Verbindung mit Port 1012 von der Fritzbox aufgebaut wird und man dann lauscht. Sobald ein Anruf reinkommt, schickt die Fritzbox die Rufnummer, Anrufzeit,.... Wenn der Anrufer wieder auflegt, schickt die Fritzbox die Rufnummer, Anrufzeit,....

lg,
jus

kdf 19. Sep 2019 17:52

AW: Telefonat annehmen aus Fritzbox
 
Zitat:

Zitat von jus (Beitrag 1447067)
Hallo,

zum Anfangen finde ich die FRITZ!Box Komponente v0.17 sehr gut. Die aktuelle Doku und die Seite vom Autor findet man hier. Da wir in der Firma eine Fritzbox im Büro haben, nutze ich die Fritzbox um die Telefonnummer des Anrufers auszulesen. Das Stichwort nennt sich "Anrufmonitor". Soweit ich weiß enthält die Fritzboxkompnenten von Garfield auch einen Anrufmonitor.

Ja, habe mir mal die Demo davon angeschaut. Das könnte die Lösung sein. Die Listen der 7490 konnte ich auslesen. Den Monitor habe ich noch nicht zum Laufen bekommen. Meine Konfiguration ist aber auch etwas eigen. Da ist die 6490, die eigentlich nur als Kabelmodem läuft und die Telefonie bereitstellt. Die ist aber nicht im lokalen Netz. Dahinter läuft die 7490 im lokalen Netz. Die 7490 stellt Fax zur Verfügung, da die Capi over TCP nur mit einer Box im lokalen Netz läuft. Die mit der Demo ausgelesene Liste ist also nur Fax. Diese Konfiguration mit 2 Boxen ist erforderlich, da ich eine feste IP habe.

K.-D.

jus 19. Sep 2019 23:28

AW: Telefonat annehmen aus Fritzbox
 
ich habe CallMonitor v0.1.1.0 Source runtergeladen und unter Delphi 2007 kompiliert. Die EXE funktionierte bei mir auf Anhieb bei meiner Fritzbox.

Der Source kompilierte bis auf eine minimale Änderung sogar unter Delphi Rio 10.3.1.
Delphi-Quellcode:
procedure WSAError;
{*******************************************************************************
*  Winsocks Fehler ausgeben.
}
var
  Len : Integer;
  Str : AnsiString;
begin
  Setlength(Str, 260);
  Len := Formatmessage(Format_Message_from_System, nil, WinSock.WSAGetLastError, 0, @Str[1], Length(Str), nil);
  Setlength(Str, Len);
  MessageBox(0, PAnsiChar(Str), 'Socket Error', MB_OK or MB_ICONERROR or MB_TASKMODAL);
end;
MessageBox auf MessageBoxA geändert:
Delphi-Quellcode:
procedure WSAError;
{*******************************************************************************
*  Winsocks Fehler ausgeben.
}
var
  Len : Integer;
  Str : AnsiString;
begin
  Setlength(Str, 260);
  Len := Formatmessage(Format_Message_from_System, nil, WinSock.WSAGetLastError, 0, @Str[1], Length(Str), nil);
  Setlength(Str, Len);
  MessageBoxA(0, PAnsiChar(Str), 'Socket Error', MB_OK or MB_ICONERROR or MB_TASKMODAL); // <------------------ hier geändert!!!!!!!!!!
end;
Und auch die EXE von Rio funktionierte bei mir auf Anhieb bei meiner Fritzbox.
Vielleicht liegt es bei dir an den Firewalleinstellungen? Und überprüfe sicherheitshalber ob das Freischalten immer noch mit "#96*5*" funktioniert. Es kann sein, dass bei neuerer Firmware oder einem anderen Modell eine andere Tastenkombination notwendig ist. Gib halt bescheid, wenn du die Lösung gefunden hast.

lg,
jus

kdf 21. Sep 2019 12:52

AW: Telefonat annehmen aus Fritzbox
 
Liste der Anhänge anzeigen (Anzahl: 1)
ich habe Virenschutz und Firewall komplett ausgeschaltet. #96*4* und #96*5* kann ich beliebig schalten. Das wird auch im Display so angezeigt "Callmonitor ein/aus". Es gibt immer wieder diese Fehlermeldung.

HolgerX 21. Sep 2019 13:07

AW: Telefonat annehmen aus Fritzbox
 
Hmm..

Welchen 'Host' gibst Du denn an?
'fritz.box' ?

Bei mir muss ich die IP der Box angeben, da ich nen alternativen DNS bei mir eingestellt habe und somit fritz.box nicht aufgelöst werden kann.

Der Callmonitor hat zwar ein paar kleine Bugs und es fehlen Try/finally, auch ist die Ableitung von TThread unnötig, da dessen funktionen garnicht verwendet werden, aber ansonsten funktioniert er..

kdf 21. Sep 2019 13:40

AW: Telefonat annehmen aus Fritzbox
 
ich habe Host Fritz.box, lokale IP, statische IP versucht. Es gibt immer die gleiche Meldung.

Wenn ich #96*5* oder #96*4* schalte, mache ich das von einem Dect Telefon an der 6490. An dieser Box hängen 2 AVM Dect und 1 Gigaset ISDN. Diese Box hat die statische IP von Unitymedia. Die 7490 ist telefonietechnisch nur für Fax mit Capi/TCP eingerichtet. Die 6490 funktioniert neben der Telefonie nur als Modem. Vielleicht habe ich da eine Blockade im Kopf. Alle Freigaben sind in der 7490 eingerichtet und zeigen auf den NAS Server, nur die von 1012 zeigt auf den PC mit dem Monitor.

Edit:
denke bei mir kann der Host Fritz.box nicht benutzt werden, da 2 Boxen da sind.

Schokohase 21. Sep 2019 13:52

AW: Telefonat annehmen aus Fritzbox
 
So wie du das beschreiben hast, nimmt die 6490 die Anrufe entgegen und die 7490 nimmt die Faxe entgegen.

Wenn dich also die Anrufe interessieren, dann musst du eine Verbindung mit der 6490 herstellen.

Eine Weiterleitung des Ports 1012 auf den PC mit dem Anrufmonitor ist eher nicht nötig.

HolgerX 21. Sep 2019 14:27

AW: Telefonat annehmen aus Fritzbox
 
Hmm..

Mit welcher IP kommst Du mit dem Browser auf die Konfiguration der 6490?
Denn nur dort kommen die Telefonate an.

Diese IP wird benötigt.

Zum aktivieren des Ports 1012 mal ein kleiner Link:
https://www.janrufmonitor.de/ueberwachung-freischalten/

Die dortige Firmware Version einer 6360 ist zwar was die Bilder angeht veraltet, jedoch funktioniert die '#96*5*' mit der Wählhilfe wie dort beschrieben. (Getestet mit ner 7490).

Als Hinweis: '#96*4*' schaltet die Port Freigabe wieder aus!!
Deshalb nur '#96*5*'!!!

kdf 21. Sep 2019 16:37

AW: Telefonat annehmen aus Fritzbox
 
die 6490 ist von Unitymedia so konfiguriert, dass sie weder LAN noch WLAN zur Verfügung stellen kann, eigentlich nur als Kabelmodem mit Telefonie. Darum habe ich derzeit Fax auf der 7490 konfiguriert. Ggf. kann man auch die Telefonie komplett auf die 7490 legen. Wenn man das macht, zicken die beim Unitymedia Support immer rum. Das Problem war, dass die 6490 aus dem lokalen Netz nicht ansprechbar ist. Lediglich die Konfigurationsseite 94.79.170.109 geht. Die Capi TCP war auf der 6490 eben auch nicht zu installieren. Vielleicht ist das Problem ähnlich gelagert.

edit:
ob ich #96*4* oder #96*5* schicke, ändert an der Freigabe aber nichts. Die ist immer auf aktiv gesetzt.

HolgerX 21. Sep 2019 17:57

AW: Telefonat annehmen aus Fritzbox
 
Hmm..

Dann wirst Du wohl nichts machen können...

Die 94.79.170.109 dürfte die öffentliche Internet-IP deiner 6490 sein.
Wenn darüber die Konfiguration läuft, dann prost Mahlzeit...
Damit würde 'jeder' aus dem Internet an deiner Box rum konfigurieren können...

Auf meiner Arbeit läuft auch eine 6490, jedoch mit Internet und somit am lokalen Netz.
Dort habe ich den Zugriff von Außen deaktiviert, da die Box ganz normal im lokalen Netz ansprechbar ist.

Der Callmonitor läuft dort ohne Probleme..

kdf 22. Sep 2019 09:45

AW: Telefonat annehmen aus Fritzbox
 
nein, die xxx.109 ist nicht öffentlich. Das ist die Adresse für die Konfiguration. Versuch einfach mal, ob sich da etwas meldet. Sollte nicht sein.

kdf 22. Sep 2019 13:11

AW: Telefonat annehmen aus Fritzbox
 
es scheint so zu sein, dass die 2 Boxen sich behindern.

Garfield 22. Sep 2019 22:08

AW: Telefonat annehmen aus Fritzbox
 
Die http://fritz.box:80/jason_boxinfo.xml sollte abrufbar sein. In der Datei steht drin wie die Box heisst und Du weisst, ob die richtige Box verbunden ist.

kdf 23. Sep 2019 19:14

AW: Telefonat annehmen aus Fritzbox
 
ja, die Verbindung ist 7490. In der 7490 ist ja Fax konfiguriert. Warum also diese Fehlermeldung?

Ich habe derzeit eine aktive Freigabe 1012 auf der 7490. Wenn ich mit dem DECT #96*5* sende, wird das wohl an die 6490 gehen und so verpuffen.

Garfield 23. Sep 2019 22:30

AW: Telefonat annehmen aus Fritzbox
 
Das DECT-Telefon muss mit der Box verbunden sein, bei welcher der Port geschaltet werden soll. Und der Callmonitor entsprechend mit der selben Box.

Habe das noch nicht mit zwei Boxen ausprobiert. Bei mir ist nur eine Box angeschlossen.

kdf 24. Sep 2019 10:53

AW: Telefonat annehmen aus Fritzbox
 
gibt es eine andere Möglichkeit, die Sequenz an die 7490 zu senden?

Kann man dafür eventuell auch das Dect Telefon mit der 7490 verbinden, ohne die ganze SIP Konfiguration?

Es geht ja zunächst nur drum, ob man das mit 2 Boxen hin bekommt. Wenn der Monitor mit Fax an der 7490 funktioniert, würde ich die Telefonie versuchen auf die 7490 zu legen.

Garfield 26. Sep 2019 18:40

AW: Telefonat annehmen aus Fritzbox
 
Du musst nur ein Telefon mit der Box verbinden um den Port freiuschalten.

kdf 27. Sep 2019 11:11

AW: Telefonat annehmen aus Fritzbox
 
Liste der Anhänge anzeigen (Anzahl: 2)
Funktioniert. Habe mit einem Dect an der 7490 den Monitor freigeschaltet.

AppError ist von der Fritz!Box Monitor (Demo Delphi XE5).

In der 7490 ist nur Fax eingerichtet (623). Werde dann die Tage die Telefonie auch in die 7490 bauen.

kdf 29. Sep 2019 16:34

AW: Telefonat annehmen aus Fritzbox
 
Liste der Anhänge anzeigen (Anzahl: 1)
kann das jemand erklären?

Ich habe die Demo Callmonitor mit seattle compiliert und es blockiert sofort der Virenscanner. Wenn ich den Virenscanner ausschalte, läuft die Demo ganz normal.


Wenn ich Callmonitor mit Delphi 6 compiliere, läuf alles normal.

kdf 30. Sep 2019 18:55

AW: Telefonat annehmen aus Fritzbox
 
Zitat:

Zitat von jus (Beitrag 1447160)
ich habe CallMonitor v0.1.1.0 Source runtergeladen und unter Delphi 2007 kompiliert. Die EXE funktionierte bei mir auf Anhieb bei meiner Fritzbox.

Der Source kompilierte bis auf eine minimale Änderung sogar unter Delphi Rio 10.3.1.
jus

Wie groß ist bei Rio die EXE ?

Ich habe bei Seattle eine Größe von 2.165.248 byte und kann die nur mit ausgeschaltetem Virenscanner (Kaspersky) compilieren. Die läuft einwandfrei, solange der Virenscanner aus ist. Den Virenscanner wieder einschalten und die EXE ist weg.

Wenn ich diese Demo mit Delphi 6 compiliere, gibt es dieses Problem nicht. Die EXE hat nur eine Größe von 452.608 byte.

jus 1. Okt 2019 12:58

AW: Telefonat annehmen aus Fritzbox
 
Liste der Anhänge anzeigen (Anzahl: 2)
Zitat:

Zitat von kdf (Beitrag 1448535)
...

Wie groß ist bei Rio die EXE ?

Ich habe bei Seattle eine Größe von 2.165.248 byte und kann die nur mit ausgeschaltetem Virenscanner (Kaspersky) compilieren. Die läuft einwandfrei, solange der Virenscanner aus ist. Den Virenscanner wieder einschalten und die EXE ist weg.

Wenn ich diese Demo mit Delphi 6 compiliere, gibt es dieses Problem nicht. Die EXE hat nur eine Größe von 452.608 byte.

die Rio ist in Debug Einstellung 2.333.184 Bytes groß. Ich habe auf Windows 7 den Delphi 2007 mit "MS Security Essentials" und auf den Windows 10 "Windows Defender" laufen. Beide machen mir überhaupt keine Probleme, weder beim Kompilieren noch beim Starten. Ich habe dir die 2 kompilierten EXE Dateien angehängt.

lg,
jus

kdf 1. Okt 2019 14:05

AW: Telefonat annehmen aus Fritzbox
 
[QUOTE=jus;1448648]
Zitat:

Zitat von kdf (Beitrag 1448535)
...

"Windows Defender" laufen. Beide machen mir überhaupt keine Probleme, weder beim Kompilieren noch beim Starten. Ich habe dir die 2 kompilierten EXE Dateien angehängt.

lg,
jus

Die laufen beide einwandfrei.

Habe mich gestern an Kaspersky Support gewandt.
Zunächst einmal deinstalliert/letzte IS Version neu installiert, gleiches Problem. Dann einen Systemcheck (GetSystemInfo6.2) hingeschickt. Heute kam eine Mail mit der Bitte um eine verpackte EXE zur Analyse und der Hinweis, könnte blinder Alarm sein.

Dieses Problem mit Delphi 10 Seattle habe ich hier noch nie gehabt. Das ist wahrscheinlich blinder Alarm. Dennoch möchte ich die Datei jetzt ungern hier anhängen.

edit:
Habe die mit seattle compilierte EXE eben auf einem anderen Rechner versucht zu starten. Wird von Kaspersky sofort gelöscht.

Garfield 2. Okt 2019 07:17

AW: Telefonat annehmen aus Fritzbox
 
Du kannst die Datei auch dort prüfen lassen: https://www.virustotal.com/gui/home/upload

kdf 2. Okt 2019 19:25

AW: Telefonat annehmen aus Fritzbox
 
Kaspersky Support hat mir heute mitgeteilt, es handelt sich um eine falsche Erkennung. Die Virensignaturen würden die nächsten Tage aktualisiert.

Garfield 4. Okt 2019 10:44

AW: Telefonat annehmen aus Fritzbox
 
Das hört sich gut an.

Ich hatte es schon einmal beim Ausprobieren eines Beispielprojektes, dass der Virenscanner angeschlagen hatte, bis ich einen Variablennamen geändert hatte.

kdf 6. Okt 2019 18:39

AW: Telefonat annehmen aus Fritzbox
 
Zitat:

Zitat von Garfield (Beitrag 1449057)
Das hört sich gut an.

.... bis ich einen Variablennamen geändert hatte.

welcher Variablenname?

Die Signaturen vom 05.10.2019 waren schon OK

K.-D.

Garfield 7. Okt 2019 17:47

AW: Telefonat annehmen aus Fritzbox
 
Das hat nichts mit dem Projekt hier zu tun. War ein Beispiel von einer Delphiseite. Da musste nur ein Variablenname in der Deklaration geändert werden und der Virenscanner hatte keinen Virus mehr gemeldet.

kdf 22. Okt 2019 20:17

AW: Telefonat annehmen aus Fritzbox
 
Habe die XE5 Demo mal mit Seattle kompiliert. Das scheint alles zu laufen bis auf die letzten beiden Funktionen WLAN und Onlinemonitor. Da werden bei beiden Konvertierungsfehler (Integer) angezeigt.

Mit den beiden Boxen läuft das einwandfrei. Man muss nur statt 'fritz.box' im Quelltext die IP der gewünschten Box eintragen.

K.-D.


Alle Zeitangaben in WEZ +1. Es ist jetzt 17:14 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz