Modem, Anrufbeantworter
-
Kann mir sonst niemand helfen??
-
Also, als ich meinen Anrufbeantworter geschrieben habe (1996 oder so), gab es noch keinen einheitlichen Standard. Mein letztes Modem hatte ich allerdings 1998 oder so, kann gut sein dass sich seitdem eine Menge geändert hat, es hatte sich damals schon der Rockwell-Befehlssatz als Art Standard herauskristallisiert.
Nix desto trotz hat Peter recht, da solltest du im Handbuch deines Modems nachsehen. Wobei ich sagen muss, das bei meinem Elsa Microlink irgendwas die Voice-Befehle auch nicht im Handbuch standen. Elsa hat sie mir aber freundlicherweise auf Nachfrage zugeschickt.
Wie auch immer, das Modem wird ganz normal per AT-Befehlen in den Voice-Modus gesetzt. Beim ZyXEL war's, wenn ich micht recht erinner, AT+FCLASS=8 (0 = Daten, 1=Fax-Klasse 1 (alles selbermachen), 2 = Fax-Klasse 2 (Modem nimmt einem das meiste vom Protokoll ab), 8 = Voice). Beim Rockwell-Befehlssatz AT#CLS=8.
Wenn du dann im Voice-Modus bist, gibt es weitere Befehle, z.B. um die Komprimierung einzustellen. Modems benutzen (zumindest damals) kein WAV sondern stark komprimierte Daten (ADPCM). Im Prinzip sagst du dem Modem einfach nur: Jetzt kommen Sprachdaten (AT#Vergessen) gib die mal auf Lautsprecher/Telefonleitung wieder. Dann werden die ADPCM-Komprimierten Sprachdaten zum Modem geschickt und Voila.
Genauso gibt es dann auch Befehle zur Aufnahme vom Modem, zum Erzeugen eines Pieptones. Das Modem sagt dir auch, wenn es einen DTMF-Ton erkennt, darüber kannst du dann die Tasten abfragen.
-
TAPI ?!
-
Hi Frenki,
dies genau der Weg, den ich vor einiger Zeit gesucht habe. Kannst Du mal noch erklären, wie man dann die ADPCM - Daten in wav bzw. von wav konvertieren kann ? Wie hat dann die Dialtone - Erkennung genau funktioniert ?
Vielen Dank im Voraus.
PS : Übrigens Jonas Klein <> Sandra
-
Wo kann ich die AT befehle eigentlich reinschreiben??
Also währen mein programm läuft muss es die Befehle auch irgendwo hinschreiben...@sandra: es gibt da viele programme. ich habe schon einige gefunden. musst mal bei google nach ADPCM-Convert suchen, dann wirste schon was finden.........
-
Wo kann ich die AT befehle eigentlich reinschreiben
Die AT-Befehle schickt man über sie serielle Schnittstelle zum Modem. Das Modem antwortet auf dem selben Weg, nur in der anderen Richtung
-
Und wie geht das??
-
öffne über CreateFile() den seriellen Port (COM1 oder andere) und schreib' dann über WriteFile die AT - Befehle ( Funktioniert wie bei jedem Terminal ). Lesen kannst Du dann die Antworten bzw. Daten über ReadFile().
Nebenbei - funktioniert dies dann genauso über USB ?
-
Ich habe aber ein internes modem. wie was muss ich bei CreateFile also als ersten parameter angeben??
Bei COM1 währe das ja z.B.:"COM1:."
........, oder??
-
Ein internes Modem stellt sich in der regel auch als COM-Port da, meist COM3:.