Поиск






Воскресенье, 24.11.2024, 21:51

| RSS

ОТДЕЛ
ИНФОРМАЦИОННЫХ
ТЕХНОЛОГИЙ
 
Каталог статей


Главная » Статьи » Интересные статьи

ОПЫТ ВНЕДРЕНИЯ ASTERISK
ИСТОРИЯ: ОДНА ИЗ МНОГИХ...

ВНЕДРЕНИЕ ПРОГРАММНОЙ АТС 
НА БАЗЕ СВОБОДНОГО ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ ASTERISK 


   На сегодня с необходимостью наличия АТС в крупной организации согласны все, и продавцы АТС и покупатели. Но вот как найти «золотую середину» между  функциональными возможностями АТС, необходимыми для бизнеса, и затратами на приобретение, настройку и внедрение? Какие новые услуги и сервисы предложить бизнесу, от которых он получит отдачу уже сегодня? 

  Есть классический вариант покупки базовой АТС и наращивание возможностей АТС по мере ее «взросления». Этим вариантом прошли многие компании, и он хорошо известен и просчитан. Но кроме этого варианта,  сегодняшняя действительность предлагает множество технологий, способных закрыть многие потребности современного бизнеса в телефонии.  Один из вариантов доступных на сегодняшний день — использование программ из фонда свободного программного обеспечения, в частности Asterisk и множество дополнений к нему.
 
  Компания «N» как раз пошла не по классическому пути создания новой АТС, а выбрали сложный, но интересный путь внедрения программной АТС. На момент мая 2010 года в компании «N» уже было закуплено и смонтировано VoIP-оборудование, смонтирована СКС (см. Таблица №1). Настроен сервер с ОС Linux, и на сервере в каком-то виде была установлена и  работала программная АТС Asterisk: более ста внутренних телефонов и 18 городских линий.

НаименованиеКоличество
1  AddPac 1100  3 (+1 запас) шт
2
  LinkSys SPA2102  50 (+1 запас) шт
3
  Сервер
  1 шт

Таблица 1: Список оборудования

  Но качество ее настройки, и как следствие качество ее работы не устраивало специалистов компании «N», в числе недоработок можно перечислить:
 - невозможность дозвониться на некоторые номера, а также другие проблемы с установкой соединений;  
 - отсутствие какого-то ни было интерфейса, не говоря уже о понятном и удобном интерфейсе, по управлению и настройке, что привело к невозможности подключения дополнительных внутренних телефонов и настройке АТС;
 - отсутствие возможности просмотра статистики соединений, использования ресурсов, мониторинга нагрузки системы во времени;
 - отсутствие возможности ведения записи разговоров с телефонных аппаратов на рабочих местах операторов Call-центра по реализации товара, с возможностью дальнейшего использования этой информации в спорных случаях;  
 - отсутствие возможности использования функции «автосекретарь»;
 - низкая надежность системы по причине функционирования системы на одном жестком диске, т.е. без применения технологии RAID.

  Все это, вместе с отсутствием исполнителя по устранению этих недоработок, казалось бы привели проект внедрения программной АТС к печальному финалу. Но чем и хорош свободный soft, тем что он доступен всем. И то, что не удалось сделать одним, может быть с успехом реализовано другими.  

Одним из направлений деятельности ООО «Отдел ИТ» является внедрение решений на базе свободного программного обеспечения. И поступление предложения заняться модернизацией существующей структуры телефонии, было принято с активным энтузиазмом, не смотря на то, что данными технологиями  никто из сотрудников ранее не занимался. Опираясь на уже имеющийся опыт, а также после предварительного знакомства с «предметной областью» - ООО «Отдел ИТ» взяло на себя обязательство о качественном выполнении работ в установленные договором сроки (см. Таблица №2 о календарном плане работ).



 НаименованиеСроки
 1
 Изучение вопроса и принятие решение о плане выполнения дальнейших работ 19.05.10
 2
 Установка AsteriskNow и предварительная настройка ОС  24.05.10
 3  Предварительная настройка Asterisk.
 Установка модулей расширений функционала FreePBX, их настройка.
28.05.10
 4 Перенос диал-плана (задача о расширении функционала по маршрутизации
появилась в процессе выполнения данного этапа). Донастройка Asterisk и ОС
 28.06.10
 5 Настройка «автосекретаря» и запись соответствующих файлов. 02.07.10
 6 Настройка записи разговоров 09.07.10
 7 Миграция на новую систему 19.07.10
 8 Доработка функционала интерфейса по прослушиванию истории звонков. 30.07.10

Таблица 2: Календарный план работ


  При принятии решения о подходе к реализации требовалось выполнить ряд условий:
1. Система должна работать круглосуточно, т.е. добавление  функционала не должно было привести к понижению  стабильности работы системы или прервать ее работу на продолжительный период времени (допустимыми считались перерывы в связи на 10-20 минут).
2. Всегда должна быть возможность «отката» к предыдущему работоспособному состоянию.
3. Дополнительный сервер для программной АТС не выделялся, все необходимо было выполнить на рабочем сервере.
  
  Условия были поставлены достаточно жесткие, но выполнимые. В результате анализа ситуации, специалисты ООО «Отдел Информационных Технологий» разработали следующий план реализации проекта:
 1. Вся система (ОС Linux и программная АТС) предварительно устанавливается и настраивается на виртуальной машине с подключением к ней необходимого оборудования для тестирования, причем диал-план (план работы АТС) полностью переписывается с сохранением функций существующих линий.
 2. К системе подключается русскоязычный графический интерфейс по управлению настройками АТС.
 3. Полученный настроенный образ системы переносится на отдельный жесткий диск и устанавливается в рабочие сервер с обеспечением мультизагрузки для возможности отката к старо системе. 
 4. Для «переезда»  на новую систему рабочий сервер выключат  из работы максимум на 15 минут, не более, и все должно работать.
 
  При выполнении первого пункта было решено использовать на тот момент последнюю версию AsteriskNow 1.4 на базе CentOS. Т. е. вся система устанавливалась и настраивалась «с нуля»,  как сама ОС, так и Asterisk. Стоит отметить, что простой перенос конфигурационных файлов из работающей на тот момент системы был не возможен, т. к. их структура коренным образом отличается от подхода AsteriskNow (используется графический интерфейс FreePBX). Т.е. использовать существующие конфигурационные файлы от старой установки не представлялось возможным.  

  Данный подход обеспечил «безболезненную» миграцию на новую систему с новым расширенным функционалом.

  В качестве графического интерфейса управления был выбран FreePBX (как  наиболее полный и удобный). 

  В ходе выполнения проекта возникла дополнительная задача маршрутизации звонков, которая не была предусмотрена в системе AsteriskNow+FreePBX. Итак - имеется набор городских линий (18 шт.). Требуется распределить нагрузку между линиями так, чтобы она была оптимальна и при исходящем соединении «в город» производился поиск свободной линии по определенному алгоритму. Специалисты заказчика предоставили алгоритм в виде таблицы, в которой описывалось, как происходит дозвон «из вне» на внутренние телефоны, и в какой последовательности происходит поиск свободной линии для каждого внутреннего номера при исходящих соединениях «в город».  В системе Asterisk предусмотрена данная возможность (если редактировать непосредственно его конфигурационные файлы), но в классической системе графического управления FreePBX возможность редактировать непосредственно конфигурационные файлы  отсутствует. Либо то, либо другое. Нас это не устраивало, необходимо все и сейчас. После изучения функционала Asterisk и FreePBX были внесены изменения в код, с целью расширения функционала.  Теперь при попытке соединения с «городским номером» анализируется ни только набираемый номер телефона, но и звонящий номер, и уже основываясь на этих данных определяется цепочка поиска свободных линий. Ранее данный функционал был доступен только   для специалистов умеющих конфигурировать Asterisk на  уровне конфигурационных файлов. Теперь же имеется возможность достичь того же используя графический интерфейс.  Т.е. специалисты заказчика это могут выполнять самостоятельно из графического интерфейса.

  Немаловажным требованием заказчика было возможность записи разговоров с возможностью прослушивания переговоров. В Asterisk имеются возможности записи, но для поиска и прослушивания необходима отдельная специализированная программа. Мы остановились на ARI (Asterisk Recording Interface), которая часто идет в комплекте с FreePBX. Но заказчику требовался интерфейс по прослушиванию аудио записей без возможности удаления (т. к. к данному инструменту необходимо было дать доступ операторам) и с расширенными возможностями поиска. При решении данной задачи нам вновь пригодилась концепция свободного ПО. Изучив код, решили внести ряд изменений:
 - сократили количество пунктов меню (оставили только необходимое)
 - убрали возможности по удалению аудио-записей
 - перевели на русский язык
 - добавили возможности поиска по диапазону даты и времени и по направлениям произведенных звонков (ранее была возможность только поиск подстрок используя регулярные выражения).

  Для более стабильной работы были изучены тонкости настроек VoIP-шлюзов: AddPac 1100 и LinkSys SPA2102. Особое внимание было уделено специфики настроек AddPac для указание конкретной линии при установке соединения. 

Также не маловажным этапом было запись и настройка голосового меню. Благодаря этому пришлось изучить особенности записи аудио файлов «в домашних условиях» и их редактирования.

  Самым ответственным этапом можно назвать миграцию на рабочий сервер. Его разбили на подпункты:
 1. Изучение аппаратного обеспечения сервера и конфигурирование  драйверов в ОС на виртуальной машине под потребности сервера заказчика;
 2. Опытная миграции на физическую машину:
     - выгрузка образа виртуального жесткого диска в IMG-файл;
     - загрузка IMG-файла на жесткий диск;
     - изменение размеров логических дисков на LVM;
     - изменение конфигурации сетевых интерфейсов в соответствии с новыми MAC-адресами;
 3. Миграция по отлаженному плану на сервер заказчика.
 
  Миграция прошла успешно, без существенных сложностей и четко по плану. Во время обеда на 15 минут выключили сервер. Подключили новый жесткий диск. Сказали волшебные слова, постучали по дереву. И включили. Нервничали конечно. Но это первые дни. Система запустилась и успешно функционирует. В процессе работы делались некоторые несущественные настройки, но концептуально ничего менять не пришлось, что порадовало нас как профессионалов.  
  Особенности функционирующей системы:
 - использование существующей ЛВС
 - большая площадь территории заказчика (несколько зданий, в том числе торговый центр)
 - использование только свободного программного обеспечения с некоторыми изменениями в коде
 - возможность удаленного управления системой   
 - не используется PCI-платы от Digium (и их аналоги). В место них применяются VoIP-шлюзы подключенные через TCP/IP, что позволяет без лишних проблем масштабировать систему не прерывая ее работы.
 - русскоязычный кроссплатформенный Web-интерфейс по администрированию системы и обновлению ПО
 - расширенная система управления маршрутизацией соединений с использованием графического интерфейса
 - русскоязычные аудио-сообщения для абонентов (частично самостоятельно записаные в рамках договора)
 - запись разговоров на определенном списке номеров (допустимая общая емкостью аудио файлов до 800 Gb)

  К дальнейшим перспективам развития можно отнести подключение к системе GSM-шлюзов для экономии средств при исходящих соединениях на мобильные телефоны. Планируется в шлюзах установить SIM-карты различных операторов и в зависимости от набранного номера производить соединение через соответствующего оператора, чтобы пользоваться бонусами предоставляемыми внутри сети. У многих операторов существуют тарифные планы, на которых звонки внутри сети бесплатны.

Если проводить оценку стоимости этого проекта, то он приблизительно равен аналогичному решению на оборудовании Panasonic. Но возможностей у данной системы гораздо больше:
 - ограничения объема записей разговоров зависит только от объема дискового пространства
 - гибкость настроек у Asterisk гораздо больше, за счет своего собственного «языка» конфигурационных файлов
 - возможность взаимодействия с СУБД
 - гибкость предоставляемая открытым кодом СПО
 - русскоязычный кроссплатформенный Web-интерфейс управления системой
 - ограничения на количество подключенных абонентов и внешних линий зависят только от процессорной мощи (на текущий момент Core 2 Quad максимально загружался только на 10%)
 - интерактивное голосовое меню не имеет ограничений на количество уровней вложенности, на продолжительность и количество записей
 - возможность прослушивания записей с любого рабочего места без ограничений накладываемых лицензиями
 - возможности интеграции с Jabber/GTalk, Skype и прочими
 - а так же множество других возмодностей и перспектив по доработке и интеграции...
В общем, мы считаем данный проект очень интересным не только для нас как исполнителей, но и для заказчика, как потребителя конечного функционального и надежного решения, которое открывает перед ним очень широкие возможности. Среди возможных вариантов развития проекта рассматриваются в том числе и такие специфические задачи, как SMS-рассылки клиентам и интерактивные заказы посредством голосового меню и кнопочных команд.     

Автор vdv.  E-mail: support@oit-company.ru
При перепечатке указание ссылки на www.oit-company.ru обязательно.

Категория: Интересные статьи | Добавил: vdv (18.09.2010)
Просмотров: 12023 | Комментарии: 1 | Рейтинг: 5.0/1 |
Всего комментариев: 0
Имя *:
Email *:
Код *:

Copyright ООО "Отдел Информационных Технологий" © 2024