Об использовании бесплатной программной телефонной станции «Asterisk» написано множество заметок, статей и книг. Не раз этот вопрос поднимался и на Хабре — и об устройстве, и об установке, и о тонкостях конфигурирования. Я же сегодня хочу посмотреть на Asterisk глазами руководителя IT, который «что-то слышал» и которому предстоит принять решение — внедрять у себя этот продукт, или остановить свой выбор на «классической» аппаратной АТС.
Итак, Asterisk — это программная АТС с открытым кодом. Создателем её является вполне себе коммерческая компания Digium, сделавшая десяток лет назад грамотный маркетинговый ход: в чистом «софтовом» виде Asterisk применим в очень ограниченном количестве ситуаций, а как только возникает задача сопряжения с «классической» телефонией — то здесь уже одним софтом не обойдёшься, нужны вполне материальные железки, за которые придётся выложить вполне материальные деньги. Поэтому Digium начала и спонсировала разработку Asterisk, а сама занялась созданием и продажей аппаратного обеспечения для него.
Честности ради стоит отметить, что разработкой аппаратных решений под Asterisk занимается ещё несколько компаний; их решения более бюджетны, но в то же время специалисты сходятся на том, что железки «от разработчика» — наиболее надёжны. Ну а дальше каждый решает для себя сам — готов он переплатить несколько сотен баксов за плату, которая гарантированно «заведётся», или предпочитает, рискнув, сэкономить.
Как любая УАТС, Asterisk является посредником и коммутатором между внешними линиями связи (это могут быть медные линии от городской АТС, поток E1 от провайдера телефонной связи или каналы IP-телефонии) и набором оконечных абонентских устройств — проще говоря, телефонных аппаратов на столах у пользователей. Сам Asterisk к «железу» не очень требователен, в большинстве случаев хватит и старенького P-4. Кстати, низкопрофильные стоечные сервера здесь могут сыграть злую шутку: большинство плат расширения достаточно габаритны и в корпус 1-2U могут просто не влезть — это надо учитывать.
Ну, с внешними линиями всё более-менее понятно: покупаются соответствующие платы расширения и подключаются. Плата PCI-E на 1 поток E1 с модулем эхоподавления (без эходава брать не рекомендую) встанет приблизительно в $850, также есть варианты на 2 и на 4 потока (последняя обойдётся уже в $2300).
Дешевле обойдётся плата аналоговых линий — плата с тремя модулями FXO для подключения городских линий (каждый модуль — 4 порта, итого 12 линий) встанет приблизительно в $650. На одну хост-плату при этом можно устанавливать как модули для подключения городских линий, так и модули для абонентских устройств. Вообще выбор плат богатый, можно подобрать оптимальное решение для каждого конкретного случая.
Приведённые цены взяты у известного московского поставщика оборудования IP-телефонии (называть не буду, дабы не сочли за рекламу) и более-менее отражают рынок. В любом случае, по сравнению с обычной средней АТС эти цифры выглядят достаточно скромными — во всяком случае, в шок не повергают.
Вариантов, в общем-то, три:
Здесь картина чуть менее радужна. Плата на 8 модулей FXS позволит подключить 32 аналоговых телефона и обойдётся приблизительно в $1000. Но при этом — сколько таких плат можно запихать в обычный сервер? 3-4 максимум. Итого выходит, что получить больше 120 аналоговых абонентских портов на Asterisk будет уже сложно. Можно, конечно, поставить 2-3 сервера, связав их между собой по IP, но отказоустойчивость такого решения будет гораздо ниже.
С IP-телефонами такой проблемы не встаёт, но встаёт другая: цена оконечного устройства. Самые дешёвые из предлагаемых на рынке телефонов стоят порядка $80, а это значит, что аппараты для сотни абонентов потянут уже на $8000. Немного подсластить пилюлю можно, вспомнив, что большинство современных IP-телефонов включает в себя встроенный свитч на 2 порта, что позволяет использовать на каждом рабочем месте только один порт локальной сети, подключив компьютер через телефон. Это может пригодиться в тех случаях, когда обычных телефонных портов нет и прокладывать их не планируется — так можно немного сэкономить.
Ну и — гарнитуры, плюс программный SIP-телефон. Самый дешёвый вариант, но и самый неудобный для сотрудников. Эффективно он будет работать, пожалуй, только для колл-центров и им подобных мест.
Классическую офисную АТС обычно сопровождает сторонняя организация, а системный администратор на месте чаще всего умеет решать только задачи уровня «переключить номер с одного аппарата на другой».
В то же время установить, настроить и сопровождать Asterisk вполне способен unix-администратор среднего уровня. Если предполагается сложная конфигурация — можно один раз воспользоваться услугами аутсорсеров, которые всё насетапят и настроят, покажут «где ковырять» и дальше уж обычный администратор точно справится.
Если такого администратора под рукой нет, а попробовать уж очень хочется — существует некоторое количество уже готовых дистрибутивов на базе Asterisk — достаточно загрузиться с компакт-диска, нажать несколько раз «далее» — и вуаля: мини-АТС готова и даже есть оболочка (обычно — веб-интерфейс) для администрирования. Правда, гибкость таких «коробочных» решений значительно ниже: что в интерфейс администрирования заложили — тем и пользуйся. Для небольшого офиса хватит, а вот выйти за рамки — уже трудновато.
И вот теперь наступает самое вкусное: пора поговорить о гибкости. То, что в классических АТС с горем пополам обеспечивается платами расширения ценою в несколько килобаксов — в Asterisk уже есть и работает.
Итак, Asterisk — это программная АТС с открытым кодом. Создателем её является вполне себе коммерческая компания Digium, сделавшая десяток лет назад грамотный маркетинговый ход: в чистом «софтовом» виде Asterisk применим в очень ограниченном количестве ситуаций, а как только возникает задача сопряжения с «классической» телефонией — то здесь уже одним софтом не обойдёшься, нужны вполне материальные железки, за которые придётся выложить вполне материальные деньги. Поэтому Digium начала и спонсировала разработку Asterisk, а сама занялась созданием и продажей аппаратного обеспечения для него.
Честности ради стоит отметить, что разработкой аппаратных решений под Asterisk занимается ещё несколько компаний; их решения более бюджетны, но в то же время специалисты сходятся на том, что железки «от разработчика» — наиболее надёжны. Ну а дальше каждый решает для себя сам — готов он переплатить несколько сотен баксов за плату, которая гарантированно «заведётся», или предпочитает, рискнув, сэкономить.
Как любая УАТС, Asterisk является посредником и коммутатором между внешними линиями связи (это могут быть медные линии от городской АТС, поток E1 от провайдера телефонной связи или каналы IP-телефонии) и набором оконечных абонентских устройств — проще говоря, телефонных аппаратов на столах у пользователей. Сам Asterisk к «железу» не очень требователен, в большинстве случаев хватит и старенького P-4. Кстати, низкопрофильные стоечные сервера здесь могут сыграть злую шутку: большинство плат расширения достаточно габаритны и в корпус 1-2U могут просто не влезть — это надо учитывать.
Внешние линии связи
Ну, с внешними линиями всё более-менее понятно: покупаются соответствующие платы расширения и подключаются. Плата PCI-E на 1 поток E1 с модулем эхоподавления (без эходава брать не рекомендую) встанет приблизительно в $850, также есть варианты на 2 и на 4 потока (последняя обойдётся уже в $2300).
Дешевле обойдётся плата аналоговых линий — плата с тремя модулями FXO для подключения городских линий (каждый модуль — 4 порта, итого 12 линий) встанет приблизительно в $650. На одну хост-плату при этом можно устанавливать как модули для подключения городских линий, так и модули для абонентских устройств. Вообще выбор плат богатый, можно подобрать оптимальное решение для каждого конкретного случая.
Приведённые цены взяты у известного московского поставщика оборудования IP-телефонии (называть не буду, дабы не сочли за рекламу) и более-менее отражают рынок. В любом случае, по сравнению с обычной средней АТС эти цифры выглядят достаточно скромными — во всяком случае, в шок не повергают.
Оконечные устройства
Вариантов, в общем-то, три:
- Обычные аналоговые телефоны
- IP-телефоны
- Гарнитуры, подключаемые к компьютеру
Здесь картина чуть менее радужна. Плата на 8 модулей FXS позволит подключить 32 аналоговых телефона и обойдётся приблизительно в $1000. Но при этом — сколько таких плат можно запихать в обычный сервер? 3-4 максимум. Итого выходит, что получить больше 120 аналоговых абонентских портов на Asterisk будет уже сложно. Можно, конечно, поставить 2-3 сервера, связав их между собой по IP, но отказоустойчивость такого решения будет гораздо ниже.
С IP-телефонами такой проблемы не встаёт, но встаёт другая: цена оконечного устройства. Самые дешёвые из предлагаемых на рынке телефонов стоят порядка $80, а это значит, что аппараты для сотни абонентов потянут уже на $8000. Немного подсластить пилюлю можно, вспомнив, что большинство современных IP-телефонов включает в себя встроенный свитч на 2 порта, что позволяет использовать на каждом рабочем месте только один порт локальной сети, подключив компьютер через телефон. Это может пригодиться в тех случаях, когда обычных телефонных портов нет и прокладывать их не планируется — так можно немного сэкономить.
Ну и — гарнитуры, плюс программный SIP-телефон. Самый дешёвый вариант, но и самый неудобный для сотрудников. Эффективно он будет работать, пожалуй, только для колл-центров и им подобных мест.
Сопровождение
Классическую офисную АТС обычно сопровождает сторонняя организация, а системный администратор на месте чаще всего умеет решать только задачи уровня «переключить номер с одного аппарата на другой».
В то же время установить, настроить и сопровождать Asterisk вполне способен unix-администратор среднего уровня. Если предполагается сложная конфигурация — можно один раз воспользоваться услугами аутсорсеров, которые всё насетапят и настроят, покажут «где ковырять» и дальше уж обычный администратор точно справится.
Если такого администратора под рукой нет, а попробовать уж очень хочется — существует некоторое количество уже готовых дистрибутивов на базе Asterisk — достаточно загрузиться с компакт-диска, нажать несколько раз «далее» — и вуаля: мини-АТС готова и даже есть оболочка (обычно — веб-интерфейс) для администрирования. Правда, гибкость таких «коробочных» решений значительно ниже: что в интерфейс администрирования заложили — тем и пользуйся. Для небольшого офиса хватит, а вот выйти за рамки — уже трудновато.
Функционал
И вот теперь наступает самое вкусное: пора поговорить о гибкости. То, что в классических АТС с горем пополам обеспечивается платами расширения ценою в несколько килобаксов — в Asterisk уже есть и работает.
- Гибкие — по-настоящему гибкие номерные планы. Переадресации, любые схемы обзвона — последовательные, параллельные, кольцевые — настраиваются несколькими строчками в конфигурационном файле. Ваш покорный слуга в своё время за пару часов сделал схему работы трёх конкурирующих клиентских подразделений — звонок поступал на секретаря, та одной кнопкой перенаправляла звонок на схему-маршрутизатор и дальше он случайным образом поступал в одно из подразделений (в каждом из которых тоже были свои схемы движения звонка).
Голосовая почта. Уже готовая, есть и работает. Никаких проблем с интеграцией с E-mail: оставленное на автоответчике сообщение может приходить в виде mp3-файла на «мыло». Равно как и наоборот: звонок на телефон технической поддержки может автоматически формировать заявку в системе Service Desk, с определением звонящего.
Конференц-связь. Когда руководство заявило, что желает организовывать телефонные конференции с офисами в других странах — решение задачи заняло полчаса. Причём со всеми удобствами:
— звонок на номер телеконференции.
— приятный женский голос: «пожалуйста, назовитесь».
— Вася.
— приятный женский голос, в конференцию: «К нам присоединяется… Вася!».
Ну и так далее. Модерирование, режим «ведущего» и т.п. Когда это увидел «классический» телефонист, он выпучил глаза: «Да ты… да ты знаешь, сколько стоит плата телеконференции! Пять штук баксов!».
Любые другие возможности на вкус и цвет. Asterisk умеет работать с базами данных, имеет API для работы с внешними приложениями. Я лично участвовал в создании системы «телефон-банк» на его базе — оно работает.
Надёжность
Часто встречается мнение: Asterisk ненадёжен. В ответ могу сказать только одно: я имею опыт его более чем трёхлетней эксплуатации в банке, с сотней IP-телефонных внутренних абонентов, двумя потоками E1 от разных провайдеров, десятком аналоговых медных линий и тремя каналами IP-телефонии с подразделениями в других странах. Ни одного сколько-нибудь ощутимого сбоя не было; uptime сервера на данный момент составляет 269 дней.
Резюме
Итак, написано много, подведём итоги.
Asterisk — вполне работающее и достаточно надёжное решение. При этом, как и для любого инструмента, существуют ситуации, как когда его внедрение имеет смысл, так и когда оно невыгодно.
Невыгодно использовать Asterisk в конфигурациях с большим количеством аналоговых линий. Если у Вас небольшой завод с 1000 абонентов и уже проложенной проводкой — Asterisk имеет смысл ставить разве что в связке с обычной аппаратной АТС предприятия, связав их потоком E1 или IP-телефонией.
Выгодно использовать Asterisk в условиях небольшого офиса (до 100 абонентов) с высокими требованиями по уровню телефонных сервисов и при наличии в штате администратора unix. Здесь Asterisk может себя показать в лучшем виде.
Также существует вариант использования Asterisk в качестве платформы для разработки телефонных решений — колл-центры, интегрированные телефонные системы. Но это уже совсем другая история.