Autor |
Beitrag |
Stefan-W
      
Beiträge: 475
Win 7 SP1
D2005 PE
|
Verfasst: So 28.05.06 17:30
Hi,
ich will ein Anrufmonitor für unsere Fritzbox programmieren, da ich mit den meisten die es so gibt nicht ganz so zufrieden bin.
Allerdings hab ich keine Idee wie ich die Daten von einem bestimmten Port (1012) empfangen kann und dann weiterverarbeiten kann.
Die FritzBox liefert die Daten in der Form:
Ausgehende Anrufe: datum;CALL;ConnectionID;Nebenstelle;GenutzteNummer;AngerufeneNummer;
Eingehende Anrufe: datum;RING;ConnectionID;Anrufer-Nr;Angerufene-Nummer;
Zustandegekommene Verbindung: datum;CONNECT;ConnectionID;Nebenstelle;Nummer;
Ende der Verbindung: datum;DISCONNECT;ConnectionID;dauerInSekunden;
hat vielleicht einer von euch eine Idee nach was ich suchen kann bzw in welche richtung ich arbeiten muss?
Danke schon mal im Vorraus
Tschau Stefan
|
|
mkinzler
      
Beiträge: 4106
Erhaltene Danke: 13
Delphi 2010 Pro; Delphi.Prism 2011 pro
|
Verfasst: So 28.05.06 17:33
Meinst du einen Socket?
_________________ Markus Kinzler.
|
|
Stefan-W 
      
Beiträge: 475
Win 7 SP1
D2005 PE
|
Verfasst: So 28.05.06 17:39
hmm... kann ich nicht sagen ich weis nur das auf dem Port die Daten irgendwie auf meinen Rechner gelangen und ein Programm das ganze dann anzeigt.
ich hab da n Java Code allerdings ist das für mich nicht verständlich. Aber ich seh mal nach ob ich mit Socket vllt weng näher komme
|
|
Stefan-W 
      
Beiträge: 475
Win 7 SP1
D2005 PE
|
Verfasst: So 28.05.06 20:41
Also die Socket sind auf jedenfall die richtige Richtung! Allerdings fehlt mir die ServerSocket-Komponente die wohl standart mäßig bei Delphi bei ist...
kann mir da jemand helfen oder andere empfehlen... ich hab auch Indy allerdings weis ich da nicht was ich nehmen soll bzw wie ich das dann verwende
|
|
mkinzler
      
Beiträge: 4106
Erhaltene Danke: 13
Delphi 2010 Pro; Delphi.Prism 2011 pro
|
Verfasst: So 28.05.06 20:45
TidTCPClient bzw. TidUDPClient.
Alternativ zu INDY gibt es auch noch ICS und Synapse
_________________ Markus Kinzler.
|
|
Stefan-W 
      
Beiträge: 475
Win 7 SP1
D2005 PE
|
Verfasst: So 28.05.06 20:48
war ein Client nicht zum senden? ich wollt doch empfangen 
|
|
mkinzler
      
Beiträge: 4106
Erhaltene Danke: 13
Delphi 2010 Pro; Delphi.Prism 2011 pro
|
Verfasst: So 28.05.06 21:15
Stimmt :oops;
_________________ Markus Kinzler.
|
|
Fighter#1
      
Beiträge: 787
Win XP, Ubuntu 8.04
Turbo Delphi 2006, Delphi 2005 Pe, Delphi 5 Pe, Netbeans 6.1, Eclipse, Microsoft VisualC#, Dev C++, PHP, HTML, CSS
|
Verfasst: So 28.05.06 21:20
Wer, oder was sendet denn die Daten, was ist das für ein Programm, oder sendet ein Server oder ein Client?
Gib ein bisschen mehr info und wir können besser helfen
MfG Fighter#1
Ach ja: Client kann genauso empfangen ...
_________________ Wer andere beherrscht ist stark,
wer sich selbst beherrscht ist mächtig. Lao Tse
|
|
Stefan-W 
      
Beiträge: 475
Win 7 SP1
D2005 PE
|
Verfasst: Mo 29.05.06 07:21
Also: Wenn ein Anruf Rausgeht, oder Reinkommt bzw die verbindung wieder getrennt wird sendet unser Router (Fritz.box) auf dem Port 1012 die Daten, die wollte ich abfangen und verarbeiten
|
|
frank-wob
Ehemaliges Mitglied
Erhaltene Danke: 1
|
Verfasst: Mo 29.05.06 07:45
Der Port allein wird dir nicht weterhelfen! Du mußt auch wissen was für ein Protokoll verwendet wird. Das sollte aber aus deinem Java-Code in irgendeiner Weise ersichtlich sein. Es werden sich doch wohl ein paar Kommentare darin finden lassen.
Gruß Frank
|
|
Stefan-W 
      
Beiträge: 475
Win 7 SP1
D2005 PE
|
Verfasst: Di 30.05.06 09:39
so wiet ich das ersehen kann wir da mit TCP gearbeitet
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19: 20: 21: 22: 23: 24: 25: 26: 27: 28: 29: 30: 31: 32: 33: 34: 35: 36: 37: 38: 39: 40: 41: 42: 43: 44: 45: 46: 47: 48: 49: 50: 51: 52: 53: 54: 55: 56: 57: 58: 59: 60: 61: 62: 63: 64: 65: 66: 67: 68: 69: 70: 71:
| #!/usr/bin/perl -w # # read_calls.pl # # Synopsis: # Script is run as a service daemon. It connects to the Fritz!Box Fon Ata # (port 1012) and receives the calling string (number of the party calling # in). This number is passed on to another program. I.e. this could be an # Jabber client or a "look who called list". # # Requirements: # - must be able to reach tcp port 1012 on your FB # - activate call monitor on FB by dialing #96*5* # - required perl package # # Licence: GPL2 # # History: # ver. 0.1 - 20060401 - Lars G. Sander, Zuerich # First public release. # ver. 0.2 - 20060510 - Ulrich Dangel <fritzbox@spamt.net> # Added telefon book support # To Do: # - beefed up security? # - proxy functionality # - additionally monitor calls OUT use IO::Socket; use strict;
# your fritz box (ip or hostname) my $FRITZBOX="fritz.box"; my $TELEFONBUCH="$ENV{HOME}/doc/addressbook"; my $EXTPRO="/usr/bin/X11/xmessage"; #-------- NO USER SERVICABLE PARTS BELOW -------#
sub read_book { my %book = (); open(IN, "<", $TELEFONBUCH) || return (); while(<IN>){ chomp; my @elements = split(":",$_); $book{$elements[0]}=$elements[1]; } close(IN); return %book; }
my %book = &read_book;
my $sock = new IO::Socket::INET ( PeerAddr => $FRITZBOX, PeerPort => '1012', Proto => 'tcp' ); die "Could not create socket: $!\n" unless $sock; while(<$sock>) { if ($_ =~ /RING/){ my @C = split(/;/); my $nr=""; if (exists($book{$C[3]})) { $nr=$book{$C[3]}; } else { $nr=$C[3]; } my @args = ($EXTPRO, "Anruf: ", $nr); system(@args); } } |
Das hier ist der Code der wohl auf der Fritzbox läuft, so richtig geht das nicht hervor. das könnte natürlich auch zum empfangen sein. KA
|
|
Stefan-W 
      
Beiträge: 475
Win 7 SP1
D2005 PE
|
Verfasst: Mi 31.05.06 09:08
Hi, ich hab nun die Lösung für mein Problem gefunden.
ich hab gestern abend noch ca 3 Stunden versucht das mit Indy & Co auf die Reihe zu bringen (leider ohne Erfolg)
danach hab ich bei Google nach den StandartKomponenten gesucht (TClientSocket und TServerSocket)
und den Beitrag in der DP gefunden, wo gesagt wurde, dass die dabei sind (wusst ich schon, hatte sie aber trotzdem nicht) weiter unten stand dann, dass die nur nicht Installiert sind (standartmässig) aber wirklich mitgeliefer sind
nun hab ich sie installiert und jetzt klapts auf Anhieb.
Also nochmal danke für eure Mühe (haben ja doch einige hier gepostet)
Tschau Stefan 
|
|
xSTrEaMi
Hält's aus hier
Beiträge: 4
|
Verfasst: Mi 20.06.07 17:38
Hi,
könntest du evtl. die Lösung posten wie du die Anrufe über TClientSocket und TServerSocket abrufst.
Hab momentan das gleiche Problem.
Danke
|
|
Narses
      

Beiträge: 10183
Erhaltene Danke: 1256
W10ent
TP3 .. D7pro .. D10.2CE
|
Verfasst: Mi 20.06.07 17:57
Moin!
xSTrEaMi hat folgendes geschrieben: | könntest du evtl. die Lösung posten wie du die Anrufe über TClientSocket und TServerSocket abrufst.
Hab momentan das gleiche Problem. |
Also wenn ich mir das Perl-Script so ansehe, dann würde ich sagen, probier das mal so:
Delphi-Quelltext 1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19: 20: 21: 22:
| uses ..., ScktComp;
type TForm1 = class(TForm) Memo1: TMemo; ClientSocket1: TClientSocket; procedure FormCreate(Sender: TObject); procedure ClientSocket1Read(Sender: TObject; Socket: TCustomWinSocket);
procedure TForm1.FormCreate(Sender: TObject); begin ClientSocket1.Host := '192.168.0.100'; ClientSocket1.Port := 1012; ClientSocket1.Open; end;
procedure TForm1.ClientSocket1Read(Sender: TObject; Socket: TCustomWinSocket); begin Memo1.Lines.Add(Socket.ReceiveText); end; |
cu
Narses
_________________ There are 10 types of people - those who understand binary and those who don´t.
|
|
xSTrEaMi
Hält's aus hier
Beiträge: 4
|
Verfasst: Mi 20.06.07 18:20
Danke.
Was sich jetzt als Problem darstellt ist der Call-Monitor. Weil wie aktiviere ich ihn ohne
das ein Telefon an der FritzBox hängt. Bei uns läuft das noch über eine 2te Funktelefonanlage
und ich kann hier auch nicht einfach ein Telefon drannhängen...
Kennt jemand von euch den FBEditor? Darüber müsste man ja eigentlich die Config-Files direkt
ändern können. Leider bekommt man des Teil nur ausm ip-phone-forum und die haben irgenwelche Probleme
beim anmelden....
|
|
Narses
      

Beiträge: 10183
Erhaltene Danke: 1256
W10ent
TP3 .. D7pro .. D10.2CE
|
Verfasst: Mi 20.06.07 18:24
Moin!
xSTrEaMi hat folgendes geschrieben: | Danke. |
Bitte.
xSTrEaMi hat folgendes geschrieben: | Was sich jetzt als Problem darstellt ist der Call-Monitor.
... |
Wenn ich das richtig sehe, dann ist damit deine Frage bzgl. dieses Threads geklärt. Bitte erstelle ein neues Topic (dürfte in die Sparte "Off Topic" fallen) für das Problem mit der FritzBox-Software (Forumsregel: nur eine Frage pro Topic, sonst gibt das Chaos!). Danke.
cu
Narses
_________________ There are 10 types of people - those who understand binary and those who don´t.
Zuletzt bearbeitet von Narses am Di 02.09.08 20:08, insgesamt 1-mal bearbeitet
|
|
Stefan-W 
      
Beiträge: 475
Win 7 SP1
D2005 PE
|
Verfasst: Mi 27.06.07 18:26
Sorry bin erst aus dem Urlab zurück gekommen... aber hat sich ja geklärt 
|
|