Es bestand die Notwendigkeit, Asterisk für Anrufe über einen 3G-Modem einzurichten. Nach kurzer Suche fand ich das Modul namens chan_dongle.
Wir haben Asterisk 11 auf Ubuntu. Das Modem ist ein Huawei E173 (Djuice).
Zuerst müssen wir die Sprachfunktion aktivieren und das Modem von den SIM-Karten des Betreibers entkoppeln. Ich habe dies mit dem Programm DC-Unlocker durchgeführt. Dieses Programm hat mir gut gefallen, und ich entschied mich, Credits für die Freischaltung zu kaufen.
Nun beginnen wir.
Laden Sie chan_dongle hier oder hier herunter.
Entpacken Sie es und wechseln Sie in das Verzeichnis:
tar xzvf chan_dongle-1.1.r14.tgzcd chan_dongle-1.1.r14/
Kompilieren und installieren:
aclocal && autoconf && automake -a./configure
make
make install
Bei Asterisk 11 tritt der folgende Fehler auf:
In file included from app.c:21:0: /usr/include/asterisk/version.h:1:2: error: #error «Do not include ‘asterisk/version.h’; use ‘asterisk/ast_version.h’ instead.» app.c: In function ‘app_register’: app.c:162:3: warning: passing argument 2 of ‘ast_register_application2’ from incompatible pointer type [enabled by default] In file included from app.c:20:0: /usr/include/asterisk/module.h:458:5: note: expected ‘int (*)(struct ast_channel *, const char *)’ but argument is of type ‘int (*)(struct ast_channel *, void *)’ make: *** [app.o] Error 1
Lösung:
1. Laden Sie die Quelldatei mit Patch herunter.
2. Installieren Sie autoconf und automake.
3. Entpacken Sie die Quelldatei, wechseln Sie in das Verzeichnis und führen Sie nacheinander die Befehle aclocal, autoconf, automake -a aus.
4. Installieren Sie chan_dongle wie üblich: ./configure, make, make install.
5. Kopieren Sie die Standardkonfiguration aus etc/dongle.conf in das Asterisk-Konfigurationsverzeichnis.
Die Installation ist damit abgeschlossen. Wir gehen zur Konfiguration über.
Zuerst prüfen wir, ob das Modem vom System erkannt wurde, indem wir folgenden Befehl ausführen:
ls /dev/ | grep USB
Wenn wir etwas Ähnliches sehen:
ttyUSB0 ttyUSB1 ttyUSB2
Dann ist alles in Ordnung und wir fahren fort.
Wechseln Sie in das Asterisk-Verzeichnis und öffnen Sie dongle.conf:
cd /etc/asterisk/vim dongle.conf
Es sollte ungefähr so aussehen:
[dongle0] audio=/dev/ttyUSB1 data=/dev/ttyUSB2 context=income
Beispiel zur Konfiguration eingehender Anrufe in extensions.conf:
[income] exten => +380XXXXXXXXX,1,Dial(SIP/100) exten => +380XXXXXXXXX,n,hangup
Beispiel zur Konfiguration ausgehender Anrufe in extensions.conf:
[out] exten => _X.,1,Dial(dongle/i:XXXXXXXXXXXXX/${EXTEN}) exten => _X.,n,hangup
Wobei XXXXXXXXXXXXX die IMEI des Modems ist, über das Sie anrufen möchten.
Hinweis: Verwenden Sie niemals die Extension _X., da dies sehr unsicher ist!
Fertig. Das Modem und Asterisk sind bereit für Anrufe.
