The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

Терминация звонков с AS5300 по H323 протоколу в Asterisk (asterisk voip h323)


<< Предыдущая ИНДЕКС Исправить src / Печать Следующая >>
Ключевые слова: asterisk, voip, h323,  (найти похожие документы)
From: litnimax <asterisk-support.ru> Date: Mon, 9 Dec 2007 14:31:37 +0000 (UTC) Subject: Терминация звонков с AS5300 по H323 протоколу в Asterisk Оригинал: http://www.asterisk-support.ru/documentation/bulk/As5300Asterisk Задача терминация звонков с AS5300 по H323 протоколу на * Существует две реализации H323 стека для asterisk: * Первым появился CHAN_OH323, который реализован в виде драйвера псевдо звуковой карты. * h323_chan модуль (By Jeremy McNamara из NuFone Network), который реализован с использованием Asterisk's RTP stack, в отличие от chan_oh323. Две версии продолжают развиваться, так как их девелоперы не хотят объеденить проект и вообще поругались :-) Один знакомый программист на С сказал что chan_h323 сырой совсем и кода там мало, что лучше использовать oh_323.. Тестирование chan_h323 Сначала была сделана попытка работы наchan_h323, так как: * Он идет в поставке с * * Идеологически правильный - API канала, а не звуковой карты. После долгих мучений так и не получилось его запустить. Звонки с ohphone проходили только при: * --fast-disable * --disable-h245-in-setup * --h425tunneldisable На циске прописывали и voice class h323 fast disable, и: voice service voip h323 h245 tunnel disable ! Но проблема не была решена. А проблема была в том, что не отрабатывалась до конца сигнализация. Звонок шел с циски, астериск давал progress indicator, но как только я поднимал трубку на SIP/IAX/ZAP канале астериска, в циску приходил answer и тишина, а канал продолжал звонить. После пару дней мучений решили попробовать oh323. Тестирование Chan_oh323 С данным модулем запустились довольно быстро со следующими настройками:: fastStart=yes h245Tunnelling=no h245inSetup=no ... остальное по умолчанию Единственное что расстроило - это отсутствие передачи progress indicator. Вот пример лога - chan_oh323.c:1159 oh323_indicate: Ignoring PROGRESS indication. Быстрый поиск по исходнякам выдал функцию oh323_indicate: break; case AST_CONTROL_PROGRESS: /* FIXME ... */ ast_log(LOG_NOTICE, "Ignoring PROGRESS indication.\n"); res = 0; break; Т.е. данная функция просто не была реализована. Выходном стало обеспечение ложного КПВ при помощи диалплана: exten => s,1,Ringing exten => s,2,Dial(IAX2/provider/${OH323_DSTE164},60) exten => s,103,Busy Конфигурация Файлы конигурации Файл oh323.conf: [ast@new ast]$ cat etc/asterisk/oh323.conf | grep -v '^;' [general] listenAddress=x.x.x.x listenPort=1720 connectPort=1720 tcpStart=10000 tcpEnd=20000 udpStart=10000 udpEnd=20000 fastStart=yes h245Tunnelling=no h245inSetup=no inBandDTMF=no silenceSuppression=no jitterMin=20 jitterMax=100 outboundMax=10 inboundMax=10 simultaneousMax=10 wrapLibTraceLevel=0 libTraceLevel=0 libTraceFile=/home/ast/h323.log gatekeeper=DISABLE gatekeeperTTL=600 userInputMode=TONE amaFlags=billing accountCode=H323 context=nocalls [register] context=oper1-in gwprefix=0170 [codecs] codec=GSM0610 frames=2 Файл extensions.conf: [ast@new ast]$ cat etc/asterisk/extensions.conf | grep -v '^;' [default] include => nocalls [nocalls] exten => s,1,Hangup exten => i,1,Hangup exten => t,1,Hangup exten => h,1,Hangup [oper1-in] include => nocalls exten => _X.,1,GotoIf($[${OH323_RADDR} = z.z.z.z]?:6) ; Недокументированная переменная OH323_RADDR, видна по oh323 show vars exten => _X.,2,SetAccount(oper1) exten => _X.,3,SetCIDNum(1633) exten => _X.,4,Ringing exten => _X.,5,Dial(IAX2/me@partner/011${OH323_DSTE164:4}) exten => _X.,6,HangUP exten => _X.,106,Busy Настройки CISCO: dial-peer voice 430011 voip description asterisk destination-pattern 500T session target ipv4:x.x.x.x tech-prefix 0170 codec gsmfr ip qos dscp cs5 media Возможные проблемы * Если не изменить amaFlags, то не пришутся CDR записи * Звонки приходили в s конекст, потом это пропало. Обошли проблему так: exten => s,1,SetCIDNum(0001) exten => s,2,goto(${OH323_DSTE164},1) Рекомендации 1. Не испольхуйте библиотеки pwlib и h323 из вашего дистрибутива. Лучше их вообще удалить, так как при смешении libs/includes возникают мистические __unknown_symbols__ и так далее.

<< Предыдущая ИНДЕКС Исправить src / Печать Следующая >>

 Добавить комментарий
Имя:
E-Mail:
Заголовок:
Текст:




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру