VIDEOCHAT  ::   FAQ  ::   Поиск  ::   Регистрация  ::   Вход

Asterisk H323

Проблемы Asterisk без вэб-оболочек и их решения

Модераторы: april22, Zavr2008

amateur
Сообщения: 453
Зарегистрирован: 30 сен 2011, 09:58

Re: Asterisk H323

Сообщение amateur »

Во-первых, мне думается, что Вы приняли неверное решение. Поддержка H.323 есть в Avaya Communication Manager. Вы можете купить себе лицензий на IP SoftPhone и использовать Avaya one-X Communicator в качестве "софт-фона".

Во-вторых, если Вы все-равно приняли решение использовать Asterisk, и Вам нужно быстро запустить Asterisk с H.323, предлагаю использовать модифицированный chan_h323. Он также включает в себя изменения, адаптирующие его для работы с Avaya Communication Manager:
- использование RTP NTE (RFC-2833 для передачи DTMF);
- обход race condition с открытием канала H.245 на плате C-LAN.

Предполагается загрузить все необходимые пакеты с официальных сайтов, собрать их из исходного кода, и установить в домашнюю директорию отдельной учетной записи. Сценарии сборки/установки загружают: Asterisk 11.2.1, SpanDSP 0.0.6pre21, PTLib 2.10 (SVN), H323Plus 1.25.1 (SVN). Также, для поддержки старых дистрибутивов, загружаются вспомогательные пакеты (инструменты сборки): make, m4, autoconf, pkg-config. Список формировался для конкретной ситуации, и не факт, что он включает в себя все, что нужно. Детали будут выясняться по результатам установок.

Краткая инструкция по установке (Linux):

1. Создать отдельную учетную запись. Например, asterisk.

Код: Выделить всё

useradd -d /usr/local/asterisk asterisk
su - asterisk
2. Выполнить

Код: Выделить всё

svn checkout http://ast-h323.googlecode.com/svn/branches/11 build
cd build
./auto-build.sh
3. Создать конфигурацию Asterisk в /usr/local/asterisk/etc

Код: Выделить всё

mkdir /usr/local/asterisk/etc
4. Создать необходимые для работы Asterisk директории и файлы. Отредактировать файлы конфигурации.

5. Запустить Asterisk

Код: Выделить всё

asterisk -C /usr/local/asterisk/etc/asterisk.conf
Пример конфигурационного файла h323.conf:

Код: Выделить всё

;
; H.323+ channel driver configuration
;
[general]
;
; Transport parameters
;
port                    = 1720
bindaddr                = 10.10.10.1
tos_audio               = ef
cos_audio               = 6
;
; Various call control parameters
;
gatekeeper              = DISABLE
AllowGKRouted           = yes
AcceptAnonymous         = no
UserByAlias             = no
context                 = incoming
progress_setup          = 0
progress_alert          = 0
progress_audio          = yes
tunneling               = none
hold                    = none
;
; H.245 mode
;
fastStart               = yes
h245Tunneling           = yes
;
; Codecs
;
disallow                = all
allow                   = g729:60,alaw:30
autoframing             = yes
;
; User-Input Mode (DTMF)
;
dtmfmode                = rfc2833:127,h245-alphanumeric,h245-signal
;
; De-jitter buffer configuration
;
jbenable                = no
jbforce                 = no
jbmaxsize               = 60
jbresyncthreshold       = 1000
jbimpl                  = adaptive
jblog                   = yes
;
; T.38 UDP Transport Layer configuration
;
t38pt_udptl             = yes
t38pt_udptl_ec          = auto
t38pt_udptl_max_datagram= 400

;
; Peers
;

[some_peer]
host                    = 10.10.10.2
port                    = 1720
type                    = friend
context                 = from-some-peer
bridge                  = no
Nasturciya
Сообщения: 54
Зарегистрирован: 28 мар 2013, 12:18

Re: Asterisk H323

Сообщение Nasturciya »

большое спасибо, amateur! Будем пробовать
Angelator
Сообщения: 24
Зарегистрирован: 10 янв 2012, 09:05

Re: Asterisk H323

Сообщение Angelator »

Коллеги, отпишитесь, пожалуйста, по результатам использования ast_h323.
amateur
Сообщения: 453
Зарегистрирован: 30 сен 2011, 09:58

Re: Asterisk H323

Сообщение amateur »

Рекомендую попробовать самостоятельно. Вопросы/отзывы можно писать здесь или по электронному адресу, указанному на web-странице проекта. Мне бы хотелось понять чего проекту не хватает.
under
Сообщения: 2
Зарегистрирован: 12 авг 2014, 21:09

Re: Asterisk H323

Сообщение under »

О, круто, кому-то пригодился мой патч для t38.
К сожалению, сейчас вообще chan_h323 выпилили из астериска 13...

Amateur, попробую вашу реализацию с h323plus когда будем свое решение апдейтить под более новую версию астериска.
Похоже, вся надежда остается на ваш проект...
Насколько стабильно у вас работает? Сколько линий одновременных держит?
http://streamco.org/ - решение Софтсвитч (Softswitch), Карточная платформа (Calling cards), Виртуальная АТС (Virtual PBX)
amateur
Сообщения: 453
Зарегистрирован: 30 сен 2011, 09:58

Re: Asterisk H323

Сообщение amateur »

Приветствую!

Хочу сказать Вам спасибо за проделанную работу! Мне действительно очень пригодилась поддержка T.38.
under писал(а):К сожалению, сейчас вообще chan_h323 выпилили из астериска 13...
Да... Сегодня получил письмо... Поленился в свое время впихнуть подправленный драйвер. Принципиально договорился с Leif Madsen, но посчитал, что интерес к H.323 в Asterisk слишком маленький, и решил, что не стоит возиться. Хотя осталось странное ощущение нелепости ситуации.
under писал(а):Amateur, попробую вашу реализацию с h323plus когда будем свое решение апдейтить под более новую версию астериска.
Похоже, вся надежда остается на ваш проект...
Пробуйте конечно. Может заодно и какие нибудь нелепости исправите :)
under писал(а):Насколько стабильно у вас работает? Сколько линий одновременных держит?
Нагрузка невысокая - максимум 40 вызовов одновременно. Были единичные проблемы - драйвер переставал принимать соединения на TCP:1720. Пока не разобрался. Еще тут в форуме мелькнуло, что inband dtmf не работает, но я этот вопрос не решал.

В общем, обращайтесь. Чем смогу, тем смогу... :)
under
Сообщения: 2
Зарегистрирован: 12 авг 2014, 21:09

Re: Asterisk H323

Сообщение under »

under писал(а): Были единичные проблемы - драйвер переставал принимать соединения на TCP:1720.
Что-то похожее было с openh323.
У нас с таким патчем openh323 работает у клиентов уже лет 7.
Возможно это актуально и для h323 plus.

--- ./src/transports.cxx.orig<->2006-03-02 09:52:51.000000000 +0200
+++ ./src/transports.cxx<------>2008-11-15 19:05:38.000000000 +0200
@@ -1419,11 +1419,6 @@
return NULL;
}
.
- if (socket->GetErrorCode() != PChannel::Interrupted) {
- PTRACE(1, "TCP\tAccept error:" << socket->GetErrorText());
- listener.Close();
- }
-
delete socket;
return NULL;
}
http://streamco.org/ - решение Софтсвитч (Softswitch), Карточная платформа (Calling cards), Виртуальная АТС (Virtual PBX)
Ответить
© 2008 — 2024 Asterisk.ru
Digium, Asterisk and AsteriskNOW are registered trademarks of Digium, Inc.
Design and development by PostMet-Netzwerk GmbH