Pojava potrebe za podešavanjem Asteriska za pozive putem 3G modema. Nakon malo pretraživanja, pronašao sam modul pod nazivom chan_dongle.
Imamo Asterisk 11 na Ubuntu-u. Modem Huawei E173 (Djuice).
Prvo je potrebno omogućiti audio i odblokirati modem od SIM kartica operatera. To sam uradio putem programa DC-Unlocker. Ovaj program mi se svideo, pa sam odlučio kupiti kredite za otključavanje.
Pa, krenimo.
Preuzmite chan_dongle ovde ili ovde.
Raspakujte arhivu i uđite u direktorijum:
tar xzvf chan_dongle-1.1.r14.tgzcd chan_dongle-1.1.r14/
Kompajlirajte i instalirajte:
aclocal && autoconf && automake -a./configure
make
make install
Kod Asteriska 11 pojaviće se sledeća greška:
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
Rešenje:
1. Preuzmite izvorni kod sa patch-om
2. Instalirajte autoconf i automake
3. Raspakujte izvorni kod, uđite u njegov folder i izvršite komande jednu po jednu: aclocal, autoconf, automake -a
4. Instalirajte chan_dongle kao i obično: ./configure, make, make install
5. Kopirajte podrazumevani konfiguracioni fajl iz etc/dongle.conf u Asterisk konfiguracioni folder.
Time je instalacija završena. Prelazimo na konfiguraciju.
Prvo proverimo da li je sistem prepoznao naš modem, izvršite:
ls /dev/ | grep USB
I ako vidite nešto poput ovoga:
ttyUSB0 ttyUSB1 ttyUSB2
To znači da je sve u redu i možemo nastaviti.
Uđite u direktorijum sa Asterisk-om i otvorite dongle.conf:
cd /etc/asterisk/vim dongle.conf
Trebalo bi da izgleda otprilike ovako:
[dongle0] audio=/dev/ttyUSB1 data=/dev/ttyUSB2 context=income
Primer konfiguracije dolaznih poziva u extensions.conf:
[income] exten => +380XXXXXXXXX,1,Dial(SIP/100) exten => +380XXXXXXXXX,n,hangup
Primer konfiguracije odlaznih poziva u extensions.conf:
[out] exten => _X.,1,Dial(dongle/i:XXXXXXXXXXXXX/${EXTEN}) exten => _X.,n,hangup
Gde je XXXXXXXXXXXXX IMEI modema preko kojeg želite da pozovete.
Napomena: Nikada ne koristite ekstenziju _X. jer to nije bezbedno!
Evo svega. Modem i Asterisk su spremni za pozive.
