Crmgo Blog

Asterisk, dzwonienie przez modem Huawei E173

Asterisk, dzwonienie przez modem Huawei E173

Pojawiła się potrzeba skonfigurowania Asteriska do prowadzenia rozmów przez modem 3G. Po krótkim poszukiwaniu znalazłem moduł o nazwie chan_dongle. Mamy do dyspozycji Asterisk 11 na Ubuntu. Modem Huawei E173 (Djuice). Po pierwsze, należy włączyć obsługę głosu i odblokować modem z kartami SIM operatora. Zrobiłem to...

Asterisk, dzwonienie przez modem Huawei E173

Wstała konieczność skonfigurowania systemu Asterisk do prowadzenia rozmów przez modem 3G. Po krótkim poszukiwaniu znalazłem moduł o nazwie chan_dongle.

Posiadamy system Asterisk 11 na Ubuntu. Modem Huawei E173 (Djuice).

Po pierwsze, należy odblokować funkcję głosu i odblokować modem od kart SIM operatora. Zrobiłem to za pomocą programu dc-unlocker. Program ten przypadł mi do gustu, więc postanowiłem kupić kredyty do odblokowania.

No to zaczynamy.

Pobieramy chan_dongle tutaj lub tutaj.

Rozpakowujemy archiwum i przechodzimy do katalogu:

tar xzvf chan_dongle-1.1.r14.tgz

cd chan_dongle-1.1.r14/

Kompilujemy i instalujemy:

aclocal && autoconf && automake -a

./configure

make

make install

W systemie Asterisk 11 może wystąpić następujący błąd:

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

Rozwiązanie:

1. Pobieramy źródła z łatą
2. Instalujemy autoconf i automake
3. Rozpakowujemy źródła, przechodzimy do ich katalogu i wykonujemy kolejno polecenia: aclocal, autoconf, automake -a
4. Instalujemy chan_dongle w standardowy sposób: ./configure, make, make install
5. Kopiujemy domyślny plik konfiguracyjny z etc/dongle.conf do katalogu z konfiguracją Asteriska.

Na tym instalacja się kończy. Przechodzimy do konfiguracji.

Po pierwsze, sprawdźmy, czy system wykrył nasz modem, wykonując:

ls /dev/ | grep USB

I jeśli widzimy coś w tym stylu:

ttyUSB0 ttyUSB1 ttyUSB2

To znaczy, że wszystko jest w porządk i przechodzimy dalej.

Przechodzimy do katalogu z Asteriskiem i otwieramy plik dongle.conf:

cd /etc/asterisk/

vim dongle.conf

Plik powinien wyglądać mniej więcej tak:

[dongle0] audio=/dev/ttyUSB1 data=/dev/ttyUSB2 context=income

Przykład konfiguracji połączeń przychodzących w pliku extensions.conf:

[income] exten => +380XXXXXXXXX,1,Dial(SIP/100) exten => +380XXXXXXXXX,n,hangup

Przykład konfiguracji połączeń wychodzących w pliku extensions.conf:

[out] exten => _X.,1,Dial(dongle/i:XXXXXXXXXXXXX/${EXTEN}) exten => _X.,n,hangup

Gdzie XXXXXXXXXXXXX to numer IMEI modemu, przez który chcesz zadzwonić.

Uwaga: Nigdy nie używaj rozszerzenia _X., ponieważ jest to bardzo niebezpieczne!

To wszystko. Modem i Asterisk są gotowe do prowadzenia rozmów.

Uwaga: wpis mógł powstać z pomocą AI i redakcji. Odpowiedzialny: Dmytro Lomaka, Kaltenkirchen.