Блоги разработчиков

Организуем Asterisk IP телефонию в офисе без изучения Linux

В этой статье я расскажу по шагам об организации IP телефонии в офисе на 15 человек с помощью Asterisk в виде сборки Askozia, неттопа Intel NUC и телефонов Linksys и Yealink, заказанных с Ebay, а также прикину примерные затраты на организацию связи со своим сервером телефонии, плюс попробую рассказать о преимуществах и недостатках этого решения.
[spoiler]
Железо
Системные требования к железу у Asterisk минимальные. В принципе, под нашу задачу подойдет любая современная платформа. В качестве такой системы я выбрал Intel NUC DCCP847DYE с процессором Celeron и памятью 2 gb. Внутренний SSD диск не брал.
75269a14cebebb02e018af351a4e2a3a.png
За телефонами я обратился к аукциону Ebay, используя запрос «lot linksys spa» получаем такие предложения:
dd4c297bbbe47ad9bc90dc86d824c6c4.png
Используя снайпера для ebay, мейлфорвардера и посылки с одеждой, я в общей сложности привез в офис за несколько месяцев порядка 15 телефонов Lynksys, Cisco, Yealink(Cortelco). В среднем 1 телефон обошелся в 2300 руб. Я старался брать старшие модели с двумя ethernet портами, подсветкой экрана и POE. Ну и для Sales менеджеров и специалистов техподдержки взял на том же Ebay 6 гарнитур Plantronics MX500i
29370450b7bbf77f39eb5fe93651ff59.png
Достаточно удобная штука и приемлемое для наших требований качество связи. Даже вебинары через нее проводим :)

Софт
На момент организации IP телефонии я мало чего знал про Asterisk и в Linux практически не шарил, потому выбрал готовый дистрибутив «Asterisk на флешке» — Askozia

Многоканальный номер
В качестве основного поставщика IP траффика выбрали, используемого ранее на протяжении нескольких лет, провайдера Манго Телеком.Для исходящих добавилиМультифон, Zadarma, PCTEL. У каждого из них есть свои плюсы при звонках на определенных направлениях.

Установка и настройка
Телефоны просто поставили между компьютерами и локальной сетью, гарнитуры воткнули в телефоны, хотя к ним шли USB звуковые, которые пригодились для проведения вебинаров через компьютер позже :)
Про настройку IP АТС попробую рассказать подробно, используя установку с нуля, чтобы не пропустить ничего важного. Для этого начну все с самого начала на демо системе и постепенно доведу ее настройки до состояния нашей рабочей станции.
Образ IP АТС за пару минут залил на флешку по инструкции и воткнул в Intel NUC, в биосе которого выбрал загрузку с USB. В сети есть DHCP сервер, потому Askozia сразу получила адрес, который я заменил на статический.
9fffb39f0cb905417ac0c1d229c5a4d1.png
Собственно на этом работа в консоли завершена, и можно переходить в веб интерфейс по ip адресу отображенному в консоли.
36edb87d060f0d7bb2dad1fe057ce5e0.png
При первом входе авторизуемся, используя учетные данные по умолчаниюadmin/askozia, переходим на вкладку лицензии и вбиваем полученные при покупке ключи.
0a6194dc16a0e7c58204b29dee0dd657.png
У меня 2 ключа, т.к. мы используем расширенную версию Askozia с редактором маршрутов. Вводим их последовательно, сохраняя каждый ключ.В общих настройках меняем пароль, устанавливаем русский язык.
214e95df3c66ec79b6f7cdbde3d94a31.png516c6a1f9fa5113b96b84166a64f076a.png
Далее в настройках подключаем внешний диск для хранения логов, голосовой почты и истории разговоров.

699714718169c677acd61898f2d30e77.png
Диск форматируется в FAT, и его легко можно подключить к любой Windows машине, чтобы скинуть записи разговоров.
f2b270906773eeeee765c6b90dcbeaea.png
Настройка IP телефонов и SIP учеток
Далее переходим к настройке IP телефонов. В Askozia есть механизм автоматического поиска и настройки IP телефонов, есть TFTP сервер для прошивок и конфигурационных файлов. Телефоны перед автонастройкой необходимо сбросить до заводских настроек, после чего они будут доступны в интерфейсе Askozia. Можно конечно все настроить вручную, для этого придется в каждом телефоне через веб-интерфейс прописывать хост, логин и пароль.
8c12ededc6c4049b129107c7730ef123.png
И тоже самое на телефоне
58a66e4c1baffea5a35cd6e36b999c4c.png
Добавляем для каждого сотрудника учетку
d003fba4bd5eca7b097edf5e2b81db8b.png

Настройка провайдера
Далее переходим к настройке провайдера, для чего в личном кабинете идем в пункт меню Настройка-Сотрудники и добавляем сотрудника Askozia, для которого в настройках добавляем новый SIP номер.
847ed826d74a272b4093c45eaea1324a.png
В итоге мы имеем следующие данные:
  • Логин: AskoziaUser123456789
  • Пароль: 6Ir2034+9098789987
  • Хост: mikru.mangosip.ru
  • Номер телефона: +7(495)202-02-02
Открываем в Askozia пункт меню Учетные записи -> Провайдеры и добавляем нового VoIP провайдера МангоОфис:
cd9af246306b4ad7313b6a3c2046b2a8.png
Настроим шаблон для исходящих звонков, по сути, нам нужны только 2 страны.
a78dccb0a69e1ebcba9ce835954fa335.png
В кодеках разрешаем только alaw.
ab8a39bc3775c0a5ab1de20a80c2dd2f.png
И настраиваем дополнительные параметры транка следующим образом. Эти параметры дает Манго в своей документации для подключения к Asterisk.7083b7e4d80f48d9abc47f91729ae4ba.png
После этого можно проверить работу исходящих звонков, набрав номер c любого внутреннего телефона номер в формате 7(ХХХ)ХХХ-ХХ-ХХ
Для того чтобы заработали входящие звонки, необходимо их разрешить в свойствах транка. Например, мы хотим, чтобы все входящие звонки приходили на внутренний номер 0000002.
c24fc9e74dd94e3cb4db57bd2f3b0a83.png
А в личном кабинете Манго Офис настраиваем переадресацию всех звонков на нашего пользователя Askozia.
92e2fb35056b255adfdea68876098875.png
В качестве входящего 000002 используем маршрут вызова в виде голосового меню (Вы позвонили в компанию МИКО, для связи с отделом продаж нажмите 1… и т.д.) Как делать голосовые меню, я описал в прошлом посте.Запись разговоровВ Askozia по умолчанию есть только запись разговоров по требованию, во время звонка нажимаем *1 и запись начинается, а по окончании разговора она отправляется на email. Но не зря же мы достали из шкафа большой внешний винт и подключили его к Askozia.Решим задачу по тотальной записи всех внешних разговоров. Добавим в настройки провайдера команды диалплана.

Код для вставки Входящий разговор

Set(RecFile=${STRFTIME(${EPOCH},,%Y-%m/%d)}/in_${CDR(src)}_${STRFTIME(${EPOCH},,%Y-%m-%d-%H-%M-%S)}) 
Set(CDR(userfield)=${RecFile}.gsm)  
Monitor(gsm,${RecFile},bm)
 

Код для вставки Исходящий разговор


Set(RecFile=${STRFTIME(${EPOCH},,%Y-%m/%d)}/out_${CDR(dst)}_${STRFTIME(${EPOCH},,%Y-%m-%d-%H-%M-%S)})  
Set(CDR(userfield)=${RecFile}.gsm)  
Monitor(gsm,${RecFile},bm)
 
Открываем настройки провайдера Манго Офис, и прописываем параметры в соответствующие поля на закладке Дополнительно:
50323d9ca7e409e82580538b0826db0e.png
В итоге мы получим структурированную по папочкам запись всех внешних разговоров, где в имени файла будет дата время, направление и вызываемый(щий) номер абонента.

Настройка мобильных
Для построения маршрутов вызовов, голосовых меню и отделов необходимо внутри АТС иметь номера мобильных телефонов сотрудников. Для этого создаем их в секции внешние учетки, прописываем номер и выбираем провайдера, через которого пойдет звонок.
25093670c85d2b3f192e8c53021a4954.png
Также можно сделать внешний номер используя SIP URI, например, для объединения нескольких офисов и присвоить коллегам из других офисов короткие номера.

b5c760405a13507db1f2a534d65d0487.png
Факсы
Настроим ящик для приема факсимильных сообщений.
bddc903f66ede8bdd85a4c49fbe5b16e.png
Все входящие факсы будут поступать на общий ящик электронной почты.

Итоги
Раньше мы пользовались облачной IP АТC от Манго Офис, это удобно и надежно, но жестко привязывает к тарифу и траффику через одного провайдера, резко сокращает возможности по расширению функционала.
  • Платформа Intel NUC DCCP847DYE — 6500 руб.
  • Плашка памяти 2 gb — 850 руб.
  • Флешка на 2 gb для системы — 300 руб.
  • Внешний USB винт для записей разговоров валялся в шкафу.
  • 15 шт IP телефонов (Lynksys, Cisco, Yealink) — 34 500 рублей.
  • 6 шт Plantronics MX500i — 3500 рублей.
  • Askozia PBX с редактором маршрутов вызовов — 9190 рублей.
  • Прямой московский номер в Манго — 2500 рублей подключение и 250 руб. абонентка.
Затраты на IP телефонизацию офиса из 15 человек «по-взрослому» составили 57'340 руб.
Сэкономить значительную сумму можно на IP телефонах, что мы и пытались сделать изначально используя софтфоны, неудобно!Сейчас в компании единый многоканальный номер, у каждого сотрудника на столе удобный IP телефон и гарнитура. Мы добавили функцию интеграции с 1С:CRM, подключили звонок с сайта, двусторонний Skype транк. Расходы на связь оптимизируются выбором исходящего провайдера, согласно шаблону номера. Для удаленных работников через VPN организуем полноценные рабочие места.

Полезные ссылки: