Как известно, Asterisk набирает всё большую популярность в мире. По официальным данным количество инсталляций данной IP-АТС превышает 1.000.000. Что неудивительно ввиду того, что современный IT-мир уже давно смотрит в сторону opensource-решений, которые разрабатываются и поддерживаются непосредственно сообществом девелоперов.
На наш взгляд такая ситуация обусловлена ростом популярности и стандартизацией протокола SIP, который год от года привлекает новых пользователей и развитием интернета в целом. SIP-протокол дает очень важное преимущество: ваш номер больше не привязан географически к местности, в которой вы находитесь, то есть ничто не мешает вам физически находясь, скажем, в Новосибирске и звоня по работе в основном по Москве и области, иметь московский номер, что приведет к огромной экономии бюджета на телефонию.
Ключевые преимущества Asterisk уже заложены в его философии или, если хотите, в его ДНК: т.к. это IP-АТС (для простоты можно сказать, что это - просто софт, несколько тысяч строк кода), то Asterisk можно поставить на любую linux-машину, что делает нас независимыми от вендоров и дает грандиозные возможности масштабирования АТС, потому что это не закрытое коробочное решение. Если есть возможность масштабировать свою АТС именно под ваши нужды и в объемах, не заложенных производителем, а в таких как надо вам - то зачем искусственно ограничивать свои возможности?
Надеюсь, мы смогли донести до вас, что использование Asterisk в качестве телефонной станции вашей компании - это абсолютно правильный выбор и мощный козырь, который поможет вам стать более конкурентноспособными в вашей сфере бизнеса, повысив уровень обслуживания клиентов и оптимизировав ваши внутренние коммуникации.
На данном этапе прочтения статьи, скорее всего, вы уже загорелись идеей перенести свою телефонию на платформу Asterisk и любите Asterisk почти также сильно как мы:) Вероятно, единственное, что вас останавливает от начала использования - это отсутствие опыта работы с Asterisk. Но и это не проблема, специально для новоиспеченных пользователей Asterisk, инженерами компании “АТС Дизайн” была разработана пошаговая инструкция установки Asterisk, с которой вы можете ознакомиться ниже:
В данном мануале использовался дистрибутив Ubuntu 12.04
Прежде чем устанавливать необходимые библиотеки убедимся, что ваш дистрибутив обновлен до последней версии, для этого откроем терминал и введем команду:
sudo apt-get update && apt-get upgrade -y && reboot
После чего ставим необходимые зависимости:
aptitude install build-essential wget libssl-dev libncurses5-dev libnewt-dev libxml2-dev linux-headers-$(uname -r) libsqlite3-dev uuid-dev
Скачиваем архивы исходников Asterisk, LIBPRI (библиотека, необходимая для работы цифровых плат) и DAHDI (необходим для работы аналоговых и цифровых плат):
cd /usr/src/
wget
wget
Извлекаем файлы из архивов:
tar zxvf dahdi-linux-complete*
tar zxvf libpri*
tar zxvf asterisk*
Вместо * будет ваша версия исходников
Установка DAHDI:
cd /usr/src/dahdi-linux-complete*
make && make install && make config
Установка LIBPRI:
cd /usr/src/libpri*
make && make install
Установка Asterisk:
cd /usr/src/asterisk*
./configure && make menuselect && make && make install && make config && make samples
Запуск DAHDI:
/etc/init.d/dahdi start
Запускаем Asterisk и переходим в интерфейс CLI:
/etc/init.d/asterisk start
asterisk -rvvv
Проверяем корректность установки DAHDI и LIBPRI:
*CLI> dahdi show version
DAHDI Version: 2.7.1
Echo Canceller: HWEC
*CLI> pri show version
libpri version: 1.4.14
Поздравляем! Вы успешно установили Asterisk, DAHDI, LIBPRI на Ubuntu 12.04
Теперь нужно сконфигурировать нужное количество абонентов (внутренних номеров телефонов) и правила совершения звонков между ними. За то в Asterisk отвечают два конфигурационных файла sip.conf и extensions.conf (по умолчанию находятся в директории /etc/asterisk).
Пример базовой конфигурации файла sip.conf (в котором происходит объявление пиров, то есть неких оконечных sip-точек, будь то внутренние абоненты, устройства провайдера или другие, связанные с вашей, АТС):
[general] - секция в которой определяются некие общие правила системы
bindport=5060
maxexpiry=3600
defaultexpiry=1800
srvlookup=no
qualify=yes
register => username@ip.addres:password:5060/callerid - строка регистрации, если ваш sip-провайдер требует регистрации на своем оборудовании
[sip-provider] - объявление атрибутов внешнего sip-аккаунта
type=friend
secret=password
defaultuser=user1
srvlookup=no
host=sip.provider.ru
insecure=port,invite
dtmfmode=rfc2833
disallow=all
allow=alaw,ulaw,gsm,ilbc
context=from-provider
fromdomain=sip.provider.ru
fromuser=user1
nat=force_rport,comedia
[6000] - объявление атрибутов каждого внутреннего абонента (внутренний номер)
defaultuser=6000
secret=12345678
callerid="Иван Иванов" <6000>
mailbox=6000
type=friend
context=from-users
qualify=yes
host=dynamic
[6001] - объявление атрибутов каждого внутреннего абонента (внутренний номер)
type=friend
defaultuser=6001
secret=12345678
callerid="Петр Петров." <6001>
context=from-users
mailbox=6001
qualify=yes
host=dynamic
[6002] - объявление атрибутов каждого внутреннего абонента (внутренний номер)
type=friend
defaultuser=6002
secret=12345678
callerid="Василий Васильев" <6002>
context=from-users
mailbox=6002
qualify=yes
host=dynamic
Пример базовой конфигурации файла extensions.conf (в котором происходит объявление пиров, то есть неких оконечных sip-точек, будь то внутренние абоненты, устройства провайдера или другие, связанные с вашей, АТС):
[from-provider]
exten => 74958888888,1,Dial(SIP/6001,60) - при звонке на ваш внешний номер будет звонить телефон абонента 6001
exten => 74958888888,n,Hangup()
[from-users]
exten => _XXXX,1,Dial(SIP/${EXTEN},30). - при наборе внутреннего номера телефон звонит 30 секунда
same => n,Voicemail(${EXTEN},${IF($["{DIALSTATUS}" = "BUSY"]?b:u)}).- если никто не взял турбку вызов идет в голосовую почту
same => n,Hangup() - вешается трубка
exten => _9X.,1,Dial(SIP/sip-provider/${EXTEN:1}) - через префикс “9” идет звонок на sip-провайдеру, 9 потом отрезается
same => n, Hangup()
Итак, простейший диалплан готов: мы сделали связь между внутреннними абонентами и сделали выход на SIP-провайдера.
Asterisk обладает огромным количеством функций, которые позволят вам максимально кастомизировать ваш диалплан и сделать так, чтобы ваша АТС отвечала всем необходимым вам требованиям. Если у вас возникли какие-то трудности в настройке Asterisk, наша компания всегда готова вам оказать техническую консультацию или настроить Asterisk под ваши требования.
В данной статье не рассматриваются вопросы подключения к Asterisk внешних и внутренних аналоговых линий, а также цифровых PRI-потоков, которые все еще очень распространены в мире телефонии и которые также обладают рядом преимуществ. Об этом можно прочитать здесь и здесь.