Поиск по моему блогу

Установка Asterisk с веб интерфейсом FreePBX и модемом Huawey E1550 на Ubuntu 10.10


Февраль 27
Раздел: Linux
1. Устанавливаем необходимые пакеты:

sudo apt-get update
sudo apt-get install php5-mysql libapache2-mod-php5 mysql-server libmysqlclient15-dev php-db php5-gd php-pear sox curl g++ libncurses-dev libxml2-dev subversion libspandsp-dev
sudo -i

2. Скачиваем исходники Asterisk и FreePBX, и устанавливаем:
cd /tmp
tar xvzf asterisk-1.8.2.4.tar.gz
tar xvzf asterisk-addons-1.6.2.3.tar.gz
tar xvzf freepbx-2.8.1.tar.gz

cd /tmp/ asterisk-1.8.2.4
./configure
make install
make config
make samples


cd /tmp/asterisk-addons-1.6.2.3
perl -p -i.bak -e 's/CFLAGS.*D_GNU_SOURCE/CFLAGS+=-D_GNU_SOURCE\nCFLAGS+=-DMYSQL_LOGUNIQUEID/' Makefile
./configure
make
make install

adduser asterisk --disabled-password --gecos "Asterisk PBX"
adduser www-data asterisk

cd /tmp/freepbx-2.8.1
//Самое главное примечание - НЕ ИСПОЛЬЗУЙТЕ в пароле спецсимволы (!@#$%^&* и т.д.) - как не странно, FreePBX не пустит в веб морду, если в пароле будет любой из этих символов.
mysqladmin create asterisk -pPassword # Password - Ваш пароль для рутового пользователя MySQL
mysqladmin create asteriskcdrdb -pPassword # Password - Ваш пароль для рутового пользователя MySQL
mysql asterisk < SQL/newinstall.sql -pPassword # Password - Ваш пароль для рутового пользователя MySQL
mysql asteriskcdrdb < SQL/cdr_mysql_table.sql -pPassword # Password - Ваш пароль для рутового пользователя MySQL
mysql -pPassword # Password - Ваш пароль для рутового пользователя MySQL
GRANT ALL PRIVILEGES ON asterisk.* TO asteriskuser@localhost IDENTIFIED BY 'Pass'; # Pass - Ваш пароль для пользователя asteriskuser в MySQL
GRANT ALL PRIVILEGES ON asteriskcdrdb.* TO asteriskuser@localhost IDENTIFIED BY 'Pass'; # Pass - Ваш пароль для пользователя asteriskuser в MySQL
flush privileges;
quit;

3. Конфигурируем FreePBX для работы с Asterisk:
Запускаем Астериск перед установкой Freepbx
/etc/init.d/asterisk start
Запускаем установку:
cd /tmp/freepbx-2.8.1 # на всякий случай. Вдруг Вы успели выйти из нужного каталога
./install_amp
Меняем только требуемые параметры (остальные оставляем по умолчанию):
Enter your PASSWORD to connect to the 'asterisk' database:
[amp109] Pass # Pass - Ваш пароль для пользователя asteriskuser в MySQL

Enter a PASSWORD to connect to the Asterisk Manager interface:
[amp111] Pass # Pass - Ваш пароль для пользователя asteriskuser в MySQL

Enter the path to use for your AMP web root:
[/var/www/html]
/var/www/freepbx # лучше каталог сделать с менее стандартным названием, если веб интерфейс будет торчать напрямую в Инет

Enter a PASSWORD to perform call transfers with the Flash Operator Panel:
[passw0rd] Pass


4. Дополнительно настраиваем FreePBX для правильной работы:
nano /etc/amportal.conf
#Закомментируем параметр для правильной работы FOP (флеш панель):
#AMPWEBADDRESS=xx.xx.xx.xx
#Исправляем параметр для включения авторизации доступа к веб интерфейсу и хранения учетных данных в базе данных (по умолчанию логин/пароль: admin/admin):
AUTHTYPE=database
#Исправляем пароль авторизации доступа к веб интерфейсу по управлению записями разговоров.
ARI_ADMIN_PASSWORD=Pass # Pass - укажите свой
#записываем изменения Ctrl+O и выходим из редактора nano Ctrl+X

5. Делаем автостарт веб интерфейса:
Я строчку
/usr/local/sbin/amportal start
запихал в файл /etc/init.d/asterisk
в конец секции start
(у меня почему-то после всех настроек поломался запуск Астериска через amportal, а так все работает).

6. Обновляем имеющиеся модули:
http://192.168.1.1/freepbx/admin (Для первого захода admin/admin, потом поменяйте для безопасности)
Module admin -> Check for updates online -> Download all -> Upgrade all -> Process

Установка Asterisk с веб интерфейсом FreePBX и модемом Huawey E1550 на Ubuntu 10.10

(повторить несколько раз, пока все не обновится).
Если будут проблемы с каким-либо модулем - удалите его в этой менюшке, и установите заново - так исправляются многие глюки с ошибками в БД (из-за нехватки полей например).

7. Подключаем модем E1550:
Модем необходимо предварительно разлочить и обновить прошивку - для активации голосовых возможностей.
Теперь самый интересный момент:
Существует как минимум 3 разновидности модуля CHAN_DATACARD:
У меня голосовая связь в обе стороны заработала только с последним.
Может после написания статьи уже поправят, так что имеет смысл сначала попробовать собрать из исходников. Если не будет голоса в обе стороны - скачайте последний файл.
apt-get install automake
cd /usr/src/datacard
automake
./configure
make install
cp etc/datacard.conf /etc/asterisk
apt-get install automake
# либо из оригинального репозитория:
# svn co https://www.makhutov.org/svn/chan_datacard/trunk/ /usr/src/chan_datacard
cd /usr/src/datacard
automake
./configure
make install
cp etc/datacard.conf /etc/asterisk

8. Настраиваем параметры модуля под наш модем:
nano /etc/asterisk/datacard.conf
в самом низу конфигурационного файла удаляем все данные (Ctrl+k) после последней черты и вставляем данный конфиг

[000101]
context=from-gsm ; context для входящих звонков
audio=/dev/ttyUSB1 ; tty порт для аудио подключения
data=/dev/ttyUSB2 ; tty порт для управляющих AT комманд модема
group=1 ; Группа вызова
rxgain=10 ; Изменение громкости динамика
txgain=-5 ; Изменение громкости микрофона
autodeletesms=yes ; auto delete incoming sms
resetdatacard=yes ; reset datacard during initialization
u2diag=256 ; set U2DIAG parameter (256 = включить модем и кард ридер)
usecallingpres=yes ; use the caller ID presentation or not
callingpres=allowed_passed_screen ; set caller ID presentation
записываем изменения Ctrl+O и выходим из редактора nano Ctrl+X

9. Создаем контент в диалплане:

nano /etc/asterisk/extensions_custom.conf

[from-gsm]
exten => s,1,Set(CALLERID(all)=${CALLERID(num)})
exten => s,n,Set(CALLERID(num)=8${CALLERID(num):2})
exten => s,n,goto(from-trunk,${IMEI},1)


Перезапускаем Asterisk
service asterisk restart

Проверка состояния модема:
asterisk -r
datacard show devices
Внимание! У вас нет прав для просмотра скрытого текста.

10. Настройка FreePBX для работы с модемом:

Исходящий маршрут:
В веб интерфейсе - Setup -> Basic -> Trunks -> ADD Custom Trunk
Назвать например modem
Последний пункт - Custom dial string - указать
datacard/i:123456789012345/$OUTNUM$
где 123456789012345 - IMEI модема (виден в предыдущем пункте).

В веб интерфейсе - Setup -> Basic -> Outbound routes -> ADD route
Назвать например Outbound (Исходящий)
match patern -> . (ставим точку в это поле),
в Trunk Sequence for Matched Routes выбираем наш транк.


Входящий маршрут:

В веб интерфейсе - Setup -> Inbound Call Control -> Inbound routes -> ADD Incoming route
Назвать например Inbound (Входящий)
Номер DID -> 123456789012345 (IMEI модема)
в 'Set destination' выбрать получателя звонков, поступающих на модем.
datacard/i:123456789012345/$OUTNUM$

11. Русификация озвучки:

cd /tmp
cd /var/lib/asterisk/sounds
tar xvfz /tmp/asterisk-sounds-ru-wav.tar.gz
Включаем русскоязычную озвучку для протоколов, например для SIP, через WEB-интерфейс
Tools -> Asterisk SIP Settings -> language -> ru

12. Ребутимся и проверяем, запустилось ли все автоматом:
reboot

13. Заходим в веб интерфейс:
со своими логином/паролем
Видим это:

Установка Asterisk с веб интерфейсом FreePBX и модемом Huawey E1550 на Ubuntu 10.10


14. Все
Дальнейшие настройки зависят от персональных требований и предпочтений.


Комментариев нет:

Реклама от BigBN