Установка и настройка asterisk 1.8 в Linux Ubuntu 12.04

Как установить asterisk в OpenWRT: OpenWRT Asterisk PBX

Установка:

Asterisk 1.8 доступен в официальном репозитории Ubuntu Linux, ставим Asterisk PBX командой:

sudo apt-get update & sudo apt-get install asterisk

Далее вы можете перейти к настройке АТС или установить из исходных кодов более новую версию asterisk — 11 LTS:

apt-get update && apt-get upgrade
apt-get install build-essential libxml2-dev libncurses5-dev linux-headers-`uname -r` libsqlite3-dev libssl-dev

mkdir /usr/src/asterisk
cd /usr/src/asterisk

asterisk=asterisk-11.0.1
wget http://downloads.asterisk.org/pub/telephony/asterisk/releases/${asterisk}.tar.gz
tar ${asterisk}.tar.gz
cd $asterisk
./configure
make menuselect

Выбираем звуковые пакеты для АТС:

Core Sound Package 

    • CORE-SOUNDS-RU-ULAW 
    • CORE-SOUNDS-EN-ULAW 

Music On Hold File Packages

    •  MOH-OPSOUND-ULAW

Extras Sound Packages 

    • EXTRA-SOUNDS-RU-ULAW
    • EXTRA-SOUNDS-EN-ULAW 

Собираем АТС:

make
make install
make samples
make config
/etc/init.d/asterisk start

Настройка АТС Asterisk:

Здесь я предлагаю Вам минимальную конфигурацию АТС, мы отредактируем следующие конфигурационные файлы:
sip.conf: — Общие параметры АТС.
users.conf: — Конфигурационный файл с настройками клиентских аккаунтов.
extensions.conf: диалплан (план дозвона), сердце Asterisk, настройки для определения входящих / исходящих звонков.
Диалплан могут быть настроен с помощью графического инструмента, но вашего любимого текстового редактора будет достаточно.

Настройка /etc/asterisk/sip.conf

[general]
context=home ; Контекст по умолчанию
disallow=all ; Запрещаем все кодеки
allow=ulaw ;Разрешаем нужный нам ULAW кодек
allow=alaw ;Разрешаем нужный нам ALAW кодек
allow=gsm ;Разрешаем нужный нам GSM кодек
qualify=yes ; Проверка SIP линий
canreinvite=no ; see http://www.voip-info.org/wiki/view/Asterisk+sip+canreinvite
srvlookup=no
externip=78.214.126.119 ; Внешний адрес нашей АТС
localnet=192.168.0.0/255.255.255.0 ; Маска локальной сети где находится наша АТС
defaultexpirey=1800
dtmfmode=auto
register = 09xxxxxxxx:secret@freephonie.net
[freephonie] ;Имя транка
context=fromfree ;Контекст для входящих вызовов из этого транка
type=peer
insecure=port,invite
host=freephonie.net ; Хост для подключения к транку
fromuser=09xxxxxxxx
username=09xxxxxxxx ;Имя пользователя
secret=secret ;Пароль пользователя
dtmfmode=auto ;Режим DTMF — автоматический
qualify=yes
fromdomain=freephonie.net
nat=yes ; Мы используем АТС за  Nat`ом
disallow=all ; Запрещаем все кодеки
allow=alaw ; Разрешаем только нужные нам кодеки

Настройка /etc/asterisk/users.conf

[general]
hasvoicemail = yes
hassip = yes
hasiax = yes
callwaiting = yes
threewaycalling = yes
callwaitingcallerid = yes
transfer = yes
canpark = yes
cancallforward = yes
callreturn = yes
callgroup = 1
pickupgroup = 1
nat = yes

[template](!) ;Шаблон для всех пользователей
type=friend
host=dynamic
dtmfmode=rfc2833 ;Режим DTMF
disallow=all ;Запрещаем все кодеки
allow=ulaw ;Разрешаем только нужные нам
context = home ;Название контекста в плане дозвона

[5212](template) ;Номер клиента
fullname = Patrick Nomblot ;Полное имя
username = pnomblot ;Имя пользователя
secret=secret ;Пароль

[5214](template) ;Номер клиента
fullname = Kristin Kreuk ;Полное имя
username = kkreuk ;Имя пользователя
secret=secret ;Пароль

Настройка /etc/asterisk/extensions.conf (План дозвона)

[home]
exten => _XXXX,1,Dial(SIP/${EXTEN},20) ; Звоним на внутренний телефон в течении 20 секунд.
exten => _XXXX,2,Hangup() ; После разговора ложим трубку.