Asterisk и TDE — берем от жизни лучшее

АТС Панасоник не зря пользуется бешенной популярностью в мире традиционной телефонии. Что же касается SIP и прочего VOIP, Asterisk давно уже стал, фактически, стандартом.
Для стыковки этих двух замечательных платформ используются:
• Сомнительного происхождения аналоговые шлюзы;
• Качественные шлюзы с цифровым интерфейсом

И, наконец, встроенные возможности серии TDE/NCP/NS, которые мы и рассмотрим ниже.

Итак, имеем настроенный сервер Астериск с GUI FreePbx. У вас должно быть как минимум два внутренних SIP абонента, имеющих возможность звонить друг другу. На TDE должна быть установлена плата DSP процессора: DSP16 или DSP64. Для внутренних номеров Астериск используем диапазон 2ХХ. На ТDE, напротив, нумерация 1XX. (Желающие, конечно, могут сделать и наоборот).
Начнем с настройки TDE.
Настраиваем TDE
Начнем с настройки TDE. Для начала, нужно убедится, что IP-адрес для VOIP-DSP и адрес нашего сервера с Астериск находятся в одной подсети (или видят друг друга через шлюзы). В нашем примере сеть одна, адрес VOIP на TDE 192.168.1.242, Астериск — 192.168.1.204.
Теперь нужно настроить каналы SIP и маршрутизацию.
Настраиваем V-SIPGW16
Идем в 1.1 (Конфигурация — слот), выбираем Виртуальный слот IPCMPR. Перетаскиваем в первый виртуальный слот плату V-SIPGW16.
KX-TDE Maintenance Console [1. Конфигурация - 1. Слот]
Далее идем в Свойство порта виртуального шлюза SIP. Настраиваем только первый канал.
Вкладка основное
Атрибут канала: основной канал
Адрес SIP сервера — IP адрес: 192.168.1.204 (адрес нашего сервера Астериск)
Вкладка номер счета
Имя пользователя: utde
ID аутентификации: utde
Пароль аутентификации: tde
Вкладка Регистрация
Сервер регистратора — IP адрес: 192.168.1.204 (адрес нашего сервера Астериск)
Вкладка Вызывающая сторона
Из заголовка — Пользовательская часть: PBX-CLIP
С первым каналом все, теперь настраиваем следующие три. Для этого на вкладке "Основное" в поле "Атрибут канала" выбираем "Дополнительный канал Сh1. Теперь первые четыре канала ставим в INS, остальные в OUS. Таким образом, у нас получилось 4 канала между ТDE и Астериск. Если нужно больше, придется докупать лицензии.
Настраиваем маршрутизацию
Собственно, дальнейшая настройка сводится к созданию Частной сети. Мануалов на эту тему не так, что бы очень много, но они есть. Так что, постараюсь дальше без лишних подробностей.
Первым делом нужно загнать все наши sip-транки в одну группу. Делается это в 10.1, Настройки CO. Находим 4 включенных транка, и в колонке "Номер группы СО" выставляем незадействованый для других линий номер. У меня это 6.
KX-TDE Maintenance Console [10. CO линии и вход - 1. Слот]
В 3.1.1 советую присвоить 6-й группе понятное имя. Так же, обратите внимание на COS. По умолчанию там стоит 7. Если вам нужно, что бы абоненты Астериск могли звонить на внешние линии TDE, его придется изменить. Подойдет любой COS, у которого TRS Level меньше 7-ми. По умолчанию это с 8-го по 64-й.
Теперь нам нужно посетить 2.6.1 и убрать двойку из собственного плана нумерации. Если помните, на 2 у нас начинаются номера абонентов Астериска. Выглядить должно так:
KX-TDE Maintenance Console [2. Система - 6. План нумерации -1. Основное]
Покидать гостеприимный п. 2.6.1 не спешим, переходим к вкладке "Внутренняя линия другой УАТС" и вбиваем двойку там:
Нумерация внутр. абонентов дргой УАТС (TIE)
Подготовительная работа закончилась, можно включать собственно, частную сеть. Делается это не просто, а очень просто: идем в п. 9.1 (Таблица соединительных линий) и во второй строке выбираем нашу sip-группу (кто забыл, номер 6):
KX-TDE Maintenance Console [9. Частная сеть - 1. Таблица соединительных линий]
Собственно, уже можно звонить, но что бы убрать раздражающую задержку при наборе, нужно еще немного поколдовать. В настройках 6-й группы CO в самом краю таблички притаилась колонка "Таблица плана набора номера". По умолчанию там 1, меняем, к примеру на "2". Идем в 3.1.4, выбираем 2 в Таблице плана набора, и прописываем 2ХХ в первой колонке первой строки.
KX-TDE Maintenance Console [3. Группа - 1. Группа CO - 4. План набора номера]
Скорость соединения резко возрастет.

Теперь пару слов о транзите. Предположим, к вашему серверу Asterisk уже подключен какой-нибудь провайдер IP телефонии. Вы хотите часть звонков с TDE направить этому провайдеру транзитом через Астериск. Делается это с помощью ARS. Подробно о такой настройке в следующей статье цикла. Сейчас остановлюсь лишь на нескольких интересных моментах.
При звонках на короткие номера Астериска в качестве CID Панасоник передает внутренний номер. Но при звонках через "девятку" (при настроенном ARSе) улетает номер, прописанный в настройках внутренней линии (4.1.1, вкладка ISDN CLIP, колонка CLIP ID). Если этот клип не устраивает поставщика IP телефонии его, конечно, легко подменить на уровне Астериска. Но, оказывается, и для Панасоника существует хак!
Стоит в 8.5 дополнить имя поставщика иксами по самое никуда,
KX-TDE Maintenance Console [8. Автоматический выбор маршрута (ARS) - 5. Поставщик услуг связи]
как в качестве клипа станция начнет использовать номер, забитый в колонку "Код внутр. линий для ARS (10 цифр)", что на вкладке "Вариант 1" настроек внутренних линий. Сам не мог поверить в такое, пока не испытал лично.
C TDE все. Переходим к Астериску.
Настраиваем Астериск
По условиям задачи у нас есть вэб-интерфейс (FreePbx), идем туда, жмем "Транки", "Добавить транк" и заполняем поля:
Максимально каналов: 4
Название транка: utde
Опции для транка:
context=from-internal
host=dynamic
qualify=yes
secret=tde
type=friend
username=utde
disallow=all
allow=alaw&ulaw&g729
dtmfmode=rfc2833
canreinvite=no
nat=no
FreePbx - Транки
Осталось добавить маршрут. Жмем Исходящая маршрутизация, Добавить маршрут.
Придумываем название (к примеру ToTde), ставим галку "Внутренний маршрут в компании", Шаблон номера пишем 1XX и последовательность выбора транка: SIP/utde.

Что бы через TDE абоненты Астериск могли звонить наружу можно добавить шаблон 9Х.
Если выход в город через аналоговые линии, это работает. В случае, если исходящиее линии ІSDN, могут возникнуть трудности, связанные с передачей неправильного CLIP в телефонную сеть. В этом случае создаем новый маршрут, но чекбокс "Внутренний маршрут в компании" не ставим!
FreePbx - Редактировать маршрут
Шаблон номера указываем 9X. В поле Route CID можно прописать пилотный номер вашего ISDN провайдера. Но лучше, конечно, заполнить поле "Исходящий номер ИД" для каждого внутреннего номера. Разумеется, номера необходимо писать в формате, который требует телефонная компания. Это может быть и 7 знаков, и четыре последние цифры, и, даже, номер с кодом города.
Заключение
Обсудить статью, задать вопросы автору можно на форуме. Ответы на часто задаваемые вопросы - здесь.
Рекомендую также ознакомится со следующей статьей цикла, посвященной транзиту.
Замечание по версиям
Описанный в статье способ проверен на АТС KX-TDE версий 3- 4.2. С марта 2012 года Panasonic выпускает пятую версию прошивки, где часть необходимых настроек заблокирована.
Если вы только собираетесь приобрести АТС - оговаривайте с поставщиком версию, она должна быть не выше, чем 4.2. Или вы должны быть уверены в возможности даунгрейда.
Если АТС уже стоит и работает - обновление до 5-й версии может привести к потере управления. Кроме того, включить возможность транзитных вызовов через TDE невозможно даже с учетной записью "INSTALLER".
Хорошо подумайте, нужно ли оно вам.
Любое использование материалов данной статьи возможно, лишь при обязательном указании ссылки на первоисточник.
Впервые статья была опубикована по адресу: http://pbx.gal.cv.ua/asterisk-tde
После переезда на esmdr.com ее новый адрес -
Вопросы и ответы
Все вопросы технического характера задавайте, пожалуйста, на форуме. Мнение автора сайта не является истиной в последней инстанции, и, возможно, ответы других участников окажутся много полезнее.
Используйте форму обратной связи, если у вас есть веские причины, делающие невозможным публичное обсуждение проблемы.
Самые интересные вопросы я, по мере сил и возможностей, буду переносить сюда.
Q: Почему для объединения станций используется SIP?
A: К сожалению, IAX2 Панасоник пока не поддерживает.
Q: Подскажите, пожалуйста, как выглядит в настройках транк на TDE200 в астериске? у меня не поднимается FreePBX, да и как-то хочется видеть сами настройки dialplan...
A: В чистом Астериске нет четкого разделения на транки и экстеншены, это уже FreePBX подстраивается под ортодоксальную телефонную терминологию. В простейшем же случае, для звонков в сторону нашей TDE достаточно будет написать что-то вроде:
[utde]
[from-internal]
exten => _1XX,1,Dial(SIP/utde/${EXTEN},90)
Описание самого транка utde:
[utde]
disallow=all
context=from-internal
host=dynamic
qualify=yes
secret=tde
type=friend
username=utde
allow=alaw
allow=ulaw
allow=g729
dtmfmode=rfc2833
canreinvite=no
nat=no
Q: ДА сто раз уже проверил, ибо 2 месяца как настраиваю!!! Народ во всю работает, а с софтовых телефонов вызов в Город не идет!! И на мобилки через софтовые не позвонить…
Город подключен по E1. A: В разных вариациях вопрос появляется постоянно. Ключевая фраза тут: "Город подключен по E1". И, в большинстве случаев, выясняется, что в город идет вызов с неправильным CLIP'ом. А провайдер ISDN его не пропускает. Решение очевидно: во FreePbx прописать CLIP для софтфонов либо пилотник для маршрута. Строчку для чистого Астериска (без GUI) любезно подсказал сам автор вопроса.
Q: Нужно ли для соединения станций докупать расширенную версию ПО Panasonic KX-NCS4910?
A: Нет, в статье описывается подключение самой обычной TDE со стандартным ПО 3-й версии.
Q: Все проделал по ману, разве что в TDE плату ставил во второй слот т.к. первый занят платой V-IPGW16. На ТДЕ в свойствах v-sipgw16 все 4ре линии в статусе OUS при попытке их перевести в INS ругается на “помеха платы”
A: V-IPGW16 и V-SIPGW16 используют одни и те же лицензии. Нужно зайти в п.1.1 и нажать кнопку “Активац. ключ (А)”. В самом первом незадизабленном поле видно сколько лицензий выделено для V-IPGW16 и, через слэш, сколько их всего. Если цифры совпадают, то увы, на SIP просто ничего не остается. Нужно или докупить лицензии, или отказаться от использования H323. Можно еще "поделить" лицензии - часть пустить на SIP, часть на H323.