Asterisk для руководителя
Об использовании бесплатной программной телефонной станции «Asterisk» написано множество заметок, статей и книг. Не раз этот вопрос поднимался и на Хабре — и об устройстве, и об установке, и о тонкостях конфигурирования. Я же сегодня хочу посмотреть на Asterisk глазами руководителя IT, который «что-то слышал» и которому предстоит принять решение — внедрять у себя этот продукт, или остановить свой выбор на «классической» аппаратной АТС.
Итак, Asterisk — это программная АТС с открытым кодом. Создателем её является вполне себе коммерческая компания Digium, сделавшая десяток лет назад грамотный маркетинговый ход: в чистом «софтовом» виде Asterisk применим в очень ограниченном количестве ситуаций, а как только возникает задача сопряжения с «классической» телефонией — то здесь уже одним софтом не обойдёшься, нужны вполне материальные железки, за которые придётся выложить вполне материальные деньги. Поэтому Digium начала и спонсировала разработку Asterisk, а сама занялась созданием и продажей аппаратного обеспечения для него.
Честности ради стоит отметить, что разработкой аппаратных решений под Asterisk занимается ещё несколько компаний; их решения более бюджетны, но в то же время специалисты сходятся на том, что железки «от разработчика» — наиболее надёжны. Ну а дальше каждый решает для себя сам — готов он переплатить несколько сотен баксов за плату, которая гарантированно «заведётся», или предпочитает, рискнув, сэкономить.
Как любая УАТС, Asterisk является посредником и коммутатором между внешними линиями связи (это могут быть медные линии от городской АТС, поток E1 от провайдера телефонной связи или каналы IP-телефонии) и набором оконечных абонентских устройств — проще говоря, телефонных аппаратов на столах у пользователей. Сам Asterisk к «железу» не очень требователен, в большинстве случаев хватит и старенького P-4. Кстати, низкопрофильные стоечные сервера здесь могут сыграть злую шутку: большинство плат расширения достаточно габаритны и в корпус 1-2U могут просто не влезть — это надо учитывать.
Внешние линии связи
Оконечные устройства
Ну и — гарнитуры, плюс программный SIP-телефон. Самый дешёвый вариант, но и самый неудобный для сотрудников. Эффективно он будет работать, пожалуй, только для колл-центров и им подобных мест.
Сопровождение
Классическую офисную АТС обычно сопровождает сторонняя организация, а системный администратор на месте чаще всего умеет решать только задачи уровня «переключить номер с одного аппарата на другой».
В то же время установить, настроить и сопровождать Asterisk вполне способен unix-администратор среднего уровня. Если предполагается сложная конфигурация — можно один раз воспользоваться услугами аутсорсеров, которые всё насетапят и настроят, покажут «где ковырять» и дальше уж обычный администратор точно справится.
Если такого администратора под рукой нет, а попробовать уж очень хочется — существует некоторое количество уже готовых дистрибутивов на базе Asterisk — достаточно загрузиться с компакт-диска, нажать несколько раз «далее» — и вуаля: мини-АТС готова и даже есть оболочка (обычно — веб-интерфейс) для администрирования. Правда, гибкость таких «коробочных» решений значительно ниже: что в интерфейс администрирования заложили — тем и пользуйся. Для небольшого офиса хватит, а вот выйти за рамки — уже трудновато.
Функционал
Надёжность
Часто встречается мнение: Asterisk ненадёжен. В ответ могу сказать только одно: я имею опыт его более чем трёхлетней эксплуатации в банке, с сотней IP-телефонных внутренних абонентов, двумя потоками E1 от разных провайдеров, десятком аналоговых медных линий и тремя каналами IP-телефонии с подразделениями в других странах. Ни одного сколько-нибудь ощутимого сбоя не было; uptime сервера на данный момент составляет 269 дней.
Резюме
Итак, написано много, подведём итоги.
Asterisk — вполне работающее и достаточно надёжное решение. При этом, как и для любого инструмента, существуют ситуации, как когда его внедрение имеет смысл, так и когда оно невыгодно.
Невыгодно использовать Asterisk в конфигурациях с большим количеством аналоговых линий. Если у Вас небольшой завод с 1000 абонентов и уже проложенной проводкой — Asterisk имеет смысл ставить разве что в связке с обычной аппаратной АТС предприятия, связав их потоком E1 или IP-телефонией.
Выгодно использовать Asterisk в условиях небольшого офиса (до 100 абонентов) с высокими требованиями по уровню телефонных сервисов и при наличии в штате администратора unix. Здесь Asterisk может себя показать в лучшем виде.
Также существует вариант использования Asterisk в качестве платформы для разработки телефонных решений — колл-центры, интегрированные телефонные системы. Но это уже совсем другая история.
Источник
Подключение шлюза GXW4104(8) к asterisk. Маршрутизация вызовов.
В данной статье рассмотрим подключение аналогового шлюза GXW4104 к Asterisk, а так же маршрутизацию входящих/исходящих вызовов. Настройки со стороны шлюза. Первый пункт. Настраиваем аккаунт подключения к Asterisk, если шлюз подключаем только к одному серверу телефонии, то можно использовать один аккаунт для всех каналов. Соответственно для подключения к другим АТС используем другие аккаунты (на шлюзе их […]
В данной статье рассмотрим подключение аналогового шлюза GXW4104 к Asterisk, а так же маршрутизацию входящих/исходящих вызовов.
Настройки со стороны шлюза.
Первый пункт. Настраиваем аккаунт подключения к Asterisk, если шлюз подключаем только к одному серверу телефонии, то можно использовать один аккаунт для всех каналов. Соответственно для подключения к другим АТС используем другие аккаунты (на шлюзе их три, то есть максимум три АТС). Указываем имя аккаунта, адрес подключения и прокси-сервер, по необходимости.
Глобальные настройки подключения к АТС.
Следующим пунктом решаем использовать подключение с регистрацией или же без.
При подключении с регистрацией в подменю SIPSettingsменюAccount 1 (2,3) выставляемпараметрSIPRegistration “Yes”, а так же далее необходимо будет указать пароли и имена пользователей в настройках каналов, это будет рассмотрено далее.
При подключении без регистрации в том же подменю параметр SIP Registration устанавливается в “No”, а в настройках каналов имя пользователя и пароль не указываются.
Для обоих случаев в подменю SIP Settings настраиваем подключение для вашего случая.
Register Expiration – параметр отвечает за периодичность регистрации на сервере, по умолчанию один час, выставляется в минутах, для настройки желательно выставить меньшую величину, например 2 минуты.
SIP Reg Failure Retry Wait – параметр отвечает за периодичность регистрации при неудачной регистрации.
SIP Transport – UDP/TCPв зависимости от ваших потребностей.
Далее выставляем необходимые кодеки в подменю AudioSettings, здесь все так же зависит от частного случая, потому настройки индивидуальны.
Далее настраиваем подключение каналов к Asterisk.
Для начала необходимо создать подключения (транки), со стороны самой АТС, ниже рассмотрим 2 варианта подключения:
Пример настройки подключения без регистрации.
Пример настройки подключения с регистрацией:
Соответственно при подключении без регистрации маршрутизация происходит по портам на шлюз. Есть так же вариант маршрутизации через один транк, его мы рассмотрим ниже.
После создания транков приступаем к дальнейшей настройке со стороны шлюза.
Переходим в меню UserAccount. Указываем регистрационные данные.
Переходим к настройке вызовов.
Для начала: меню Settings-Channels Settings и настраиваем параметры:
DTMF Methods – указание метода обработчика нажатий, варианты указаны прямо под строкой ввода, узнать конкретный способ можно у провайдера, в данном примере указываем метод 2 – RFC2833. (Соответственно он указывается и в параметрах подключения asterisk).
Local SIP Listen Port – указание SIP портов для каналов, можно оставить стандартные, либо переназначить по желанию, так же, не забыть указать порты в параметрах подключения asterisk.
UserID – указание номера, отправляемого по подключению на АТС, при звонке на определенный канал.
SIP Server – указание АТС для каждого канала (при использовании подключения к нескольким АТС).
T.38– настройки подключения факсов, при необходимости.
Настройка FXOлиний.
Настраиваем тона, подробнее по настройке BusyToneможно рассмотреть в статье: https://voxlink.ru/kb/asterisk-configuration/analog-busytone/
f1/2 – частота первого/второго пика
@-XX – уровень сигнала на пике в db
c= — время в десятых секунды, на тон и тишину попеременно.
При двух пиках частоты, строка тонов будет выглядеть следующим образом:
Также в этом разделе можно увеличить/уменьшить громкость на линии, как на входящие направления, так и на исходящие.
Tx to PSTN Audio Gain(dB) – Усиление/уменьшение звука на соответствующих портах, для исходящих соединений.
Rx from PSTN Audio Gain(dB) – Усиление/уменьшение звука на соответствующих портах, для входящих соединений.
Silence Suppression(Y/N) – подавление тишины во время разговора, может возникать эффект «разрыва звонка», то есть абсолютной тишины, что может интерпретироваться операторами как обрыв звонка. Желательно выключать.
Echo Cancellation(Y/N) – эхоподавление на соответствующих каналах, может мешать некоторым провайдерам, особенно при передаче CID.
Enable Current Disconnect(Y/N) – завершение вызова, при падении напряжения, включить/выключить. Используется малым числом операторов, понять это можно проверив запись звонка на busy tone.
Current Threshold – соответственно настраивается для предыдущего параметра, отвечает за время после падения напряжения на линии, после которого последует сброс вызова.
Enable Tone Disconnect(Y/N) – сброс вызова при определении тона “Busy”. Настраиваются выше. Включение опции предполагает исключение Current Disconnect. Пример настройки тонов:
Настройки можно узнать у провайдера, либо проверить запись звонка
Enable Polarity Reversal – включить/выключить определение поднятия трубки с другой стороны.
Enable Call Supervision – включить/выключить контроль звонков (отвечен/не отвечен).
Silence Timeout(X1s) – контроль тишины, при определенном времени тишины на линии, завершается вызов.
Incoming Ring Timeout(X1s) – передача сигнала со шлюза на сервер с задержкой.
AC Termination Impedance – входное сопротивление, для предупреждения эхо на плохихлиниях. Для России по умолчанию 600, но желательно уточнять у провайдера.
Number of Rings Before Pickup – количество ring до ответа шлюза.
Caller ID Scheme – схема получения CallerID (номера клиента), возможно данная функция вовсе не предоставляется на вашей линии.
Caller ID Transport Type — тип отправки CallerID на сервер, по умолчанию 1 – отправлять через SIP From.
Следующая важная вкладка: Dialing
Тут настраивается второй вариант маршрутизации исходящих вызовов, и чередование каналов, если не указано через какой именно канал звонить.
Wait for Dial-Tone(Y/N) – включить/выключить определение dial tone, если включено, необходимо настраивать пункт Dial Tone в тонах, то есть набор осуществляется как на старых телефонах, после гудка в линию.
Stage Method(1/2) – способ набора номера, 2 – набор номера посимвольно, 1 набор номера полностью.
Min Delay Before Dialing Out – параметр отвечающий за минимальную задержку перед набором номера.
Round-robin and/or Flexible – чередование линий для исходящих вызовов, порядок занятия линий FXO.
Prefix to Specify Port – указание префикса для вызова через определенный порт, то есть в настройках подключения, либо при наборе номера можно будет набрать данный префикс + номер канала, через который необходимо совершить вызов. Например 99500010 – вызов на номер 00010 отправится через 5 канал.
Hookflash Duration (X10ms) – время в миллисекундах, отведенное на определение DTMF сигнала (указывается множитель).
Use DTMF via RFC2833/SIP Info – использование RFC2833/SIP Info.
Digit Length(X10ms) – длина введенного символа DTMF в миллисекундах (указывается множитель).
Digit Volume(dB) – уровень сигнала для символа.
Dial Pause Between Digit – пауза набора, перед набором символа.
Outgoing Call Dial Plan – план набора шлюза, по умолчанию x+.
x – любая цифра 0-9
xx+ — две и более цифры 0-9
^ — исключение символа
T – время до автоматического набора
3 – любая цифра от 3 до 5
[147] – любая цифра из набора 1, 4, 7
— заменить цифру 2 в номере перед набором на 011
То есть по умолчанию план набора разрешает набор номера состоящего из любых цифр любой длины, без изменения.
Чтобы ограничить набор, можно использовать следующую схему:
<8xxxxxxxxxx|xxxxxxT3> – набор номера начинающегося с 8ки и длиной 11 цифр, после инициации вызова со стороны звонящего, либо набор номера длины 6 спустя 3 секунды после набора номера.
Outgoing Call DialPlan – указание плана набора для исходящих вызовов, можно оставить стандартный.
Параметры обработки вызовов.
Дальнейшие настройки со стороны сервера Asterisk:
Настройка входящей маршрутизации.
Во входящих маршрутах указываем номера, которые прописали выше в параметр UserID и настраиваем маршрутизацию так, как вам нужно.
Настройка исходящей маршрутизации:
Возможно разделение вызовов по каналам (аналоговым номерам) двумя способами
Первый: Создание маршрутов для определенных абонентов через определенный транк, так же возможно указать чередование при недоступности, для этого в параметрах подключения выставляем параметр Checktoalwaystrynexttrunk и в исходящих маршрутах добавляем эти транки.
Второй: Создание маршрутов через один транк, но используя префиксы. Так же можно набирать префиксы самим абонентам.
Первый способ. Создан маршрут, абонентам назначен CustomContext на данный маршрут.
Проверяем в меню Line Analysis-Audio Capture.
Можно проверить вызовы. В моем случае, провайдер не поддерживает передачу номера звонящего.
Так же возможны и иные ошибки, однако зачастую они индивидуальны и связаны с конкретными настройками либо АТС, либо шлюза для конкретных подключений.
Настройка шлюза GXW4104(8) завершена, можно начинать использование.
Источник