субота, 15 жовтня 2011 р.

Переход на IP-телефонию. Установка Asterisk

Шпаргалка для чайника по установке Asterisk.
В статье частично описан частный случай внутренней реорганизации сервиса телефонии.

Дано:

телефония, предоставляемая провайдером в PRI-потоке, в данном случае DataGroup. Внутренняя сеть абонентов (20-30 стационарных и радиотелефонов, факсы) подключенная через мини-АТС LG LDK 300.

Необходимо:

перевести сервис из PRI в SIP, заменить внутреннюю аппаратную инфраструктуру (частично и поэтапно), удешевить сервис, повысить функционально возможности и удобства.

Реализация:

Замена мини-АТС на компьютер с программной АТС Asterisk, замена отдельных телефонов на IP-телефоны, замена одной радиотрубки на WiFi-телефон, организация бесшовного роуминга в WiFi, подключение VoIP – шлюзов для поддержки части старой инфраструктуры, установка GSM-шлюзов для удешевления звонков на мобильные операторы. Далее более детально.

Компьютер для Asterisk под управлением Ubuntu 11.04 (рекомендую 32-битную).

1. Устанавливаем инструментарий, используемый Asterisk, для чего в терминале:

sudo apt-get install gcc
sudo apt-get install g++
sudo apt-get install ncurses-dev
sudo apt-get install libxml2-dev 

2. Качаем исходник Asterisk версии 1.6 с сайта:

sudo wget http://downloads.asterisk.org/pub/telephony/asterisk/releases/asterisk-1.6.2.20.tar.gz

3. Разворачиваем архив:

sudo tar -xzvf asterisk-1.6.2.20.tar.gz 

и выполняем установку:

cd asterisk-1.6.2.20
sudo ./configure
sudo make
sudo make install
sudo make samples 

4. Ставим с репозитария mysql-сервер и mysql-dev (это понадобится для статистики звонков):

sudo apt-get install mysql-server
sudo apt-get install sudo apt-get install libmysqld-dev 

5. Запускаем mysql командой:

sudo /etc/init.d/mysql

6. Ставим из репозитария phpmyadmin:

sudo apt-get install phpmyadmin

при запросе вебсервера выбираем apache2.

7. Далее качаем аддоны для астериска весии 1.6.2.3, для чего в терминале выполняем:

wget http://downloads.asterisk.org/pub/telephony/asterisk/releases/asterisk-addons-1.6.2.3.tar.gz

8. Распаковываем скачанный архив:

sudo tar -xzvf asterisk-addons-1.6.2.3.tar.gz

и выполняем установку:

cd asterisk-addons-1.6.2.3
sudo ./configure
sudo make
sudo make install
sudo make samples 

9. Для экономии на мобильных звонках я поставил 3 USB-GSM-модема (у меня huawei-e1550), для работы которых скачаем еще один дополнительный модуль Asterisk:

wget http://asterisk-chan-dongle.googlecode.com/files/chan_dongle-1.1.r10.tgz

и установим:

sudo tar -xzvf chan_dongle-1.1.r10.tgz
cd chan_dongle-1.1.r10
sudo ./configure
sudo make
sudo make install 

10. Для правильного определения модемов выполняем следующие действия:
10.1. Устанавливаем пакет usb-modeswitch:

sudo apt-get install usb-modeswitch

10.2. Создаем в папке /etc/udev/rules.d файл 15-huawei-e1550.rules со следующим содержанием:

SUBSYSTEM=="usb", SYSFS{idProduct}=="1446", SYSFS{idVendor}=="12d1",
RUN+="/usr/sbin/usb_modeswitch --vendor 0x12d1 --product 0x1446 --type option-zerocd"

10.3. Устанавливаем пакет minicom:

sudo apt-get install minicom

10.4. Вставляем первый модем и заходим в minicom командой:

minicom -s

В меню выбираем “настройка последовательного порта” и нажимаем латинскую “A”
После чего minicom перекинет курсор на название порта. В названии вводим:

/dev/ttyUSB0

два раза нажимаем Enter и нажимаем Выход.
После этого мы попадаем в консоль модема. В ней выполняем команду AT^U2DIAG=0 и нажимаем Enter.
10.5. Вынимаем модем, вставляем следующий и проделываем пункт 10.4. для каждого следующего модема.
10.6. Я купил 3 стартовых пакета: MTS, Kievstar, Life, (каждый – в сети бесплатно) вставив в обычный телефон, убрал запрос pin-кода и функцию ожидания вызова, и затем вставил sim-карточки в модемы и воткнул в компьютер с Asterisk.
11. Ставим астериск в автозагрузку. Для этого открываем файл

sudo vi /etc/rc.local

и вносим в него строчку /usr/sbin/asterisk

Ну вот, Астериск установили, GSM-шлюз подключили, осталось заменить и настроить телефоны, VoIP шлюз, и подправить файлы /etc/asterisk/extensions.conf, /etc/asterisk/sip.conf. По количеству затраченного времени и нервов это отдельное дело, поэтому остановлюсь на этих этапах поподробнее в следующей статье.

Немає коментарів:

Дописати коментар

HyperComments for Blogger

comments powered by HyperComments