.titleBar { margin-bottom: 5px!important; }

Telefon-Verbindung unter Linux aufbauen

Dieses Thema im Forum "FRITZ!Box Fon: Modifikationen" wurde erstellt von crusader, 3 März 2005.

Status des Themas:
Es sind keine weiteren Antworten möglich.
  1. crusader

    crusader Mitglied

    Registriert seit:
    28 Okt. 2004
    Beiträge:
    425
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    Ort:
    Valdecruz
    Die FBF akzeptiert bekanntlich auf Port 1011 ein Subset der AT-Modem-Befehle, u.a. 'ATD'.

    Eine Telefon-Verbindung vom Linux-PC aus aufzubauen ist demnach ziemlich einfach:
    Code:
    # echo "ATD02214711" | netcat 192.168.178.1 1011
    
    Danach Telefon an 'FON1'-Anschluß abheben und los geht's.

    Gruß
    crusader
     
  2. Odysseus

    Odysseus Aktives Mitglied

    Registriert seit:
    7 Sep. 2004
    Beiträge:
    1,425
    Zustimmungen:
    0
    Punkte für Erfolge:
    36
    Feine Sache ... wird wohl so bereits im FBF Call-Monitor von ahooge gemacht. Aber dennoch gut, das mal zu erfahren, denn ich hab mir bisher noch garkeine Gedanken gemacht, wie er das realisiert :)
     
  3. ahooge

    ahooge Neuer User

    Registriert seit:
    6 Feb. 2005
    Beiträge:
    99
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    Ja wird es, genauso wie im Outlook-Makro von saltlake :)

    Schöne Grüße
    Axel
     
  4. crusader

    crusader Mitglied

    Registriert seit:
    28 Okt. 2004
    Beiträge:
    425
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    Ort:
    Valdecruz
    Darauf bezog sich dieser Satz:
    Ich hab bloß etwas Probleme mit Outlook auf meinem Linux-System. Daher hier eine einfache Möglichkeit für Unix-shells.

    Gruß
    crusader

    P.S.: Neuerdings laufen ja schon Java-Programme nur noch unter M$ :gruebel:
     
  5. ahooge

    ahooge Neuer User

    Registriert seit:
    6 Feb. 2005
    Beiträge:
    99
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    Hi,

    das hatte ich auch so aufgefasst, danke. Wollte die Quelle nur der Vollständigkeithalber nennen.
    Sollte nicht heissen, dass Du Outlook benutzen solltest. So war das nicht gemeint. Sorry, falls das irgendwie nach verarschung klang, oder so.

    Achso: Das Java Programm läuft nur unter Windows, weil ich einen Telefon-Monitor nucht permanent im Gesichtsfeld haben wollte und ich halt für Windows die Möglichkeit gefunden hatte, das Programm im Systemtray zu verstecken (Native Methoden mit ner DLL). Ob und vor Allem 'wie' das bei Linux geht, weiß ich (derzeit) leider nicht.

    Schöne Grüße
    Axel
     
  6. matzetronic

    matzetronic Neuer User

    Registriert seit:
    23 Feb. 2005
    Beiträge:
    3
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    Hi,

    ich würde noch die Optionen -n -w und evtl. -t verwenden.

    -n = no DNS
    -w [x] = Timeout in Sekunden
    -t = Telnet-Negotiation (für eventuelle Zeilenvorschub-Probleme)

    In Perl könnte das dann vielleicht so gehen (ungetestet - bin kein Perl-Profi !):

    Code:
    #!/usr/bin/perl
    
    use Socket;
    
    $NUM  = "ARGV[1]" || Error("missing number");
    $Timeout = 10;
    $Dest = 192.168.1.1 # fritzbox
    $Port = 1011 # port
    
    $SIG{ALRM} = sub { Error("timeout"); };
    alarm($Timeout);
    $iaddr = inet_aton($Dest)                   || Error("no host: $Dest");
    $paddr = sockaddr_in($Port, $iaddr);
    
    $proto = getprotobyname('tcp');
    socket(SOCK, PF_INET, SOCK_STREAM, $proto)  || Error("socket: $!");
    connect(SOCK, $paddr)                       || Error("connect: $!");
    select(SOCK); $| = 1;
    Send("ATD".$NUM);
    Send("quit");
    close(SOCK)                                 || Error("close: $!");
    
    

    Bye,
    Matze
     
  7. crusader

    crusader Mitglied

    Registriert seit:
    28 Okt. 2004
    Beiträge:
    425
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    Ort:
    Valdecruz
    @Axel:
    Ach, iwoo. Hab ich schon richtig verstanden.
    Systemtray: Ja, gibt's auch auf den Linux-Desktops KDE und Gnome. Dynamic Link Libraries gibt's auch, heissen aber *.so Wenn du sagst, welche Funktionen die Library bereitstellen muß, kann vielleicht jemand aus dem Forum eine Linux-Library erstellen.

    Gruß
    crusader
     
  8. ahooge

    ahooge Neuer User

    Registriert seit:
    6 Feb. 2005
    Beiträge:
    99
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    Hi,

    vielen Dank. Ich hab aber auf die Anregungen hin schon mal etwas weiter gesucht. Mittlerweile habe ich eine API gefunden, die sowohl auf Win als auch auf Linux funktionieren soll (JDIC) Werde mal sehen, ob das klappt

    Schöne Grüße
    Axel
     
  9. crusader

    crusader Mitglied

    Registriert seit:
    28 Okt. 2004
    Beiträge:
    425
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    Ort:
    Valdecruz
    Danke für den Hinweis.
    Wenn man das Kommando nicht auf der Konsole eingibt, sondern in ein Script einbaut, dann darf natürlich der -w Parameter nicht fehlen. (Sonst wartet netcat nämlich, bis die FBF disconnected...und das tut sie nicht).

    Im KDE-Adressbuch (Version 3.3) kann man damit sehr einfach eine Telefonwahl einbauen:
    - Einstellungen|KDE-Adressbuch einrichten
    - Im Feld 'Script-Hooks' unter 'Phone:' folgendes Kommando eintragen:
    Code:
    echo "ATD"%N | netcat -w 1 192.168.178.1 1011
    -> Beim Anklicken einer Telefon-Nummer im Kontaktfeld wählt die FBF die Nummer (nach Abheben von FON1)

    Edit: Vorsicht: Wenn man vergißt, FON1 abzuheben, ruft die FBF nach ca. 10s die Zielnummer. Hebt der Teilnehmer dann nicht ab, klingelt's endlos. Besser also ein kleines Script schreiben, das den Verbindungsversuch am PC signalisiert oder besser den Versuch nach Timeout wieder abbricht(Befehl: "ATH0").

    Parameter -t also nicht nötig. Aber was soll der Parameter -n denn noch gutes tun ?

    crusader
     
  10. WrMulf

    WrMulf Mitglied

    Registriert seit:
    2 Okt. 2004
    Beiträge:
    553
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    Ort:
    Stuttgart
    Bei mir klingelt erst die Zielnummer und der Angerufene hört "Ihre Verbindung wird gehalten". Dann erst klingelt FON1. Kann das jemand bestätigen?
     
  11. crusader

    crusader Mitglied

    Registriert seit:
    28 Okt. 2004
    Beiträge:
    425
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    Ort:
    Valdecruz
    Wie meinst du das ? Du hörst den Rufton oder das Telefon klingelt tatsächlich ?

    Bei mir höre ich den Rufton ziemlich genau zeitgleich mit dem Klingelton bei der Zielnummer.
    Hast Du vielleicht ISDN ?

    Gruß
    crusader
     
  12. matzetronic

    matzetronic Neuer User

    Registriert seit:
    23 Feb. 2005
    Beiträge:
    3
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    wenn du netcat nur mit ip aufrufst, spart das die reverse-dns-auflösung :)

    gruß,
    matze
     
  13. ahooge

    ahooge Neuer User

    Registriert seit:
    6 Feb. 2005
    Beiträge:
    99
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    @ WrMulf:
    Wenn Du vom PC wählst, kurz warten und Dann das Telefon an FON1 abnehmen. Nicht auf das Klingeln warten.

    Schöne Grüße
    Axel
     
  14. crusader

    crusader Mitglied

    Registriert seit:
    28 Okt. 2004
    Beiträge:
    425
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    Ort:
    Valdecruz
    Uiiiih...
    Das wußte ich nicht. Es gibt also zwei Möglichkeiten, eine Verbindung herzustellen:
    1. Nach dem Absetzen des "ATD"-Befehls FON1 abnehmen
    -> Teilnehmer wird gerufen wie bei Wahl vom Telefon
    2. Nach dem Absetzen des "ATD"-Befehls warten
    -> Teilnehmer wird nach ca. 10s gerufen.
    --> Falls er abhebt, bekommt er eine Ansage "Ihre Verbindung wird gehalten" und man selber bekommt einen Klingelton auf FON1
    --> Falls er nicht abhebt, benötigt man nun eine Möglichkeit den Anrufversuch zu beenden. Der geht dann so:
    Code:
    echo "ATH0" | netcat -w 1 192.168.178.1 1011
    crusader
     
  15. hubble

    hubble Neuer User

    Registriert seit:
    21 Mai 2005
    Beiträge:
    1
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    Bekomme demnächst die neue Box mit S0. Weiß jemand, ob diese oder eine andere Art der Wahlhilfe auch mit einem angeschlossenen ISDN Telefon funktioniert oder muss es ein herkömmliches Analogtelfefon sein? Wäre an einer solchen Lösung sehr interessiert.

    Gruß,
    Daniel
     
  16. ich1234

    ich1234 Mitglied

    Registriert seit:
    12 Dez. 2004
    Beiträge:
    231
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    und wie bekomm ich es hin dieses mit dem FON2 zu nutzen?

    edit:

    geht es das wenn ich schon mit dem FON1 telefoniere und über den pc den ATD befehl sende kein ERROR kommt sondern anklopft und ich das gespräch per R2 entgegen nehmen kann?
     
  17. crusader

    crusader Mitglied

    Registriert seit:
    28 Okt. 2004
    Beiträge:
    425
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    Ort:
    Valdecruz
    Wenn du schon mit dem FON1 telefonierst, solltest du nicht gleichzeitig ein 2. Gespräch über FON2 beginnen. Das verwirrt doch nur die Gesprächsteilnehmer.
     
  18. ich1234

    ich1234 Mitglied

    Registriert seit:
    12 Dez. 2004
    Beiträge:
    231
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    es sollte deshalb ja auch anklopfen und ich kann dan das gespräch via R2 abnehmen und wenn nötig mi R3 eine 3-er konferenz einleiten.

    bzw. warum sollte es verwirren wenn ich über FON1 telefoniere und gleichzeitig ein gespräch über FON2 aufgebaut wird für meine schwester? ^^
     
  19. crusader

    crusader Mitglied

    Registriert seit:
    28 Okt. 2004
    Beiträge:
    425
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    Ort:
    Valdecruz
    OK, das mit der Schwester hattest du aber nicht geschrieben.

    In diesem Fall solltest du die beiden Telefone tauschen.
    Du telefonierst dann über FON2 und gleichzeitig kannst du ein Gespräch für deine Schwester aufbauen über FON1.
     
  20. ich1234

    ich1234 Mitglied

    Registriert seit:
    12 Dez. 2004
    Beiträge:
    231
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    dann muss ich alle nebenstellen umschalten und kann diese funktion nicht für mein telefon benutzen ;) naja muss eben damit leben ^^
     
Status des Themas:
Es sind keine weiteren Antworten möglich.