Стыковка Audiocodes и Cisco через asterisk
Проблемы работы аналоговых модемов на FXS портах
Сообщений: 16
|
Стыковка Audiocodes и Cisco через asterisk
Примерно год назад с трудом добился корректной работы модемов и факсов на стороне AudioCodes. Кто не знает, если, это такой аппаратный SIP-шлюз на N fxs-портов. В моем случае - 24 порта. Кодес имеет огромное количество настроек, очень гибок, что и помешало в свое время настроить всё с полтычка. Решилось все двумя строками на входящем диалпире циско (AS5400XM):
modem passthrough nse codec g711alaw
fax protocol pass-through g711alaw
Соответственно настраивается и кодес, после чего в инвайте появляется следующая строка:
a=rtpmap:100 X-NSE/8000 и всё чудесно работает.
И работало ровно год, пока я не поставил между кодесом и циско триксбокс (астериск 1.4.22). Первоначально настройки экстеншенов и транка я установил в canreinvite=no. То есть трикс стал работать SIP и RTP прокси. Модемы работать перестали. Оказалось, что вышеуказанная строка исчезает, когда, получив инвайт от кодеса, астериск кидает его на циску.
Вопросы к гуру:
1. Кто-то сталкивался уже с подобным?
2. Есть ли какой-то вариант настроить астериск/трикс на прозрачную передачу полей инвайта?
3. Сам по себе астериск вносит какие-либо изменения в RTP-поток, который проходит через него, или поток идет прозрачно, насквозь, без изменений пэйлоада и т.п.?
Заранее очень признателен за ответы.
|
Откуда: Москва
Сообщений: 398
|
Re: Стыковка Audiocodes и Cisco через asterisk
1. Не сталкивался
2. Поиграться с опцией canerinvite. Хотя не факт, что поможет
3. Вносит.
Я бы на вашем месте посмотрел в сторону OpenSIPS/Kamailio - они работают только с заголовками SIP, RTP через них идёт прозрачно.
|
Сообщений: 16
|
Re: Стыковка Audiocodes и Cisco через asterisk
С опцией поиграюсь. Настораживает только то, что астериск убирает из SDP a=rtpmap:100 X-NSE/8000, зато в логах пишет, что "Found unknown media description format X-NSE for ID 100". То есть, RTP может придет и напрямую, без изменений, но вот будет ли шлюз/циска готов к этому, не имея описания в SDP, - большой вопрос. Этот вопрос, как показало многочасовое гугление, поднимался не раз. Но dev командой астериска под теми или иными предлогами игнорировался. То ли модемы стали неактуальны, то ли голосовая циска - редкость, не знаю.
Камаилио я посмотрю, но он, похоже, не вполне то, что нужно, поскольку первоначальной задачей стояла не только организация правильной маршрутизации между транками и всякие там префиксы, но и услуги ДВО, вроде переадресации. Ну и сообщения с автоответчиками типа "неверно набран номер". Камаилио, как я понимаю, не из этой оперы. А про SipX ничего не скажете?
|
Сообщений: 1530
|
Re: Стыковка Audiocodes и Cisco через asterisk
Переадресация не присуща asterisk'у или Kamailio, она выполняется через SIP REFER и в Kamailio замечательно работает.
sipX не проксирует медиа, если не использовать встроенный sipXbridge.
Через sipXbridge неподдерживаемый кодек скорее всего не пройдет, к примеру последняя стабильная версия не пропускает T.38, т.к. использует FreeSWITCH, который на момент выпуска стабильной версии не поддерживал T.38.
|
Сообщений: 16
|
Re: Стыковка Audiocodes и Cisco через asterisk
Да мне как раз и не надо проксировать медиа, мне надо его p2p пропускать, причем желательно, чтобы магические строки в sdp передавались как есть.
|
Сообщений: 1530
|
Re: Стыковка Audiocodes и Cisco через asterisk
Kamailio это обеспечит на 100%, он с SDP вообще не умеет работать.
Смотря что Вам нужно от ДВО. ЧАсть можно реализовать при помощи Kamailio (OpenSER) + медиа-сервер (SEMS например). А вот медиа-сервер может и внести изменения в SDP, правда только в тех вызовах, которые пройдут через него.
Проверьте sipX -- он разворачивается в считанные минуты...
Расскажите потом чем все закончилось...
|
Сообщений: 16
|
Re: Стыковка Audiocodes и Cisco через asterisk
SipX, по описанию фич - примерно то, что нужно. Вопрос уже теперь в разных "мелочах" типа возможности создания контекстов (или что там у него взамен их), диалпланов, и транков с настройками dial rules. Ибо к хорошему быстро привыкаешь, в этом плане триксбокс уже разбаловал.
Я уже три дня подряд делаю трейсы с разных сторон. И получается интересная картина. Учитывая, что canreinvite делает то, что нужно - то есть даёт rtp-потоку идти напрямую между кодесом и циской, то проблема остается только в одном: несанкционированная модификация полей SDP. То есть, астериск видит непонятную ему запись, комментирует, что "я ничего не понял, что такое X-NSE", после чего делает инвайт уже без неё! Волюнтаризм, блин, какой-то. Тогда надо или делать настраиваемым список медиа-типов, где можно указать пэйлоад, которого астериск как бы не знает по-умолчанию, или пропускать SDP прозрачно. Пусть даже этим управляла бы какая-то хитрая опция в настройках.
А так, вон, прогуглите инет - сотни сообщений вроде моего вопроса, и без толку.
|
Сообщений: 1530
|
Re: Стыковка Audiocodes и Cisco через asterisk
t800: возможности создания контекстов (или что там у него взамен их), диалпланов, и транков с настройками dial rules.
Все это есть, только dialplan'ы не такие гибкие, как в asterisk'е, хотя можно заюзать скрытые возможности на базе встроенного FreeSWITCH'а.
t800: сотни сообщений вроде моего вопроса, и без толку.
Напишите свой кодек, работающий в режиме passthrough. ;)
Исходные коды для asterisk'а открытые, можно самому править как хочешь.
|
Откуда: Уфа
Сообщений: 5856
|
Re: Стыковка Audiocodes и Cisco через asterisk
Я вот этого в философии sipx вообще не понимаю:
tma: ...хотя можно заюзать скрытые возможности на базе встроенного FreeSWITCH'а.
tma: ...т.к. использует FreeSWITCH, который на момент выпуска стабильной версии не поддерживал T.38.
Какой смысл использовать freeswitch? недопрограммисты недоделали? Почему бы просто не использовать FreeSwitch, а не конгломерат разношерстного софта?
Кстати, написание dummy кодека - вариант, вроде в исходниках есть даже пример-заготовка.
я вот не пойму, что за кодек такой NSE, может проще отказаться от его использования???
|
Сообщений: 1530
|
Re: Стыковка Audiocodes и Cisco через asterisk
switch: Я вот этого в философии sipx вообще не понимаю:
Также можно обвинить OpenSER в том, что недопрогарммисты недоделали в нем работу с медиа.
Стоит просто взять и попробовать. Просто они пошли по пути -- а зачем изобретать колесо?
Вот они и делают велосипед, в котором используют колесо, изобретенное не ими.
|
|