AF
Asterisk Forum
обсуждения телефонии, VoIP и IP-PBX
12разделов
5 423тем
34 385сообщений
← К списку тем

Не сбрасывается вызов

Asterisk IP PBX 7 сообщений -
#1

Не сбрасывается вызов


Подскажите, может кто-то сталкивался с таким:
Есть астериск 11.9, в котором настроен транк chan_ooh323 на АТС OfficeServ 500.


Код:

[general]
port=1720
bindaddr=192.168.0.103
gateway=no
h323id=ObjSysAsterisk
e164=100
callerid=asterisk
gatekeeper = DISABLE
logfile=/var/log/asterisk/h323_log
context=default
disallow=all ;Note order of disallow/allow is important.
allow=gsm
allow=ulaw
dtmfmode=rfc2833

[OS500]
faststart=yes
type=friend
ip=192.168.1.171
security=0
rtptimeout=60
dtmfmode=h245signal
h245Tunneling=no
disallow=all
allow=g729
allow=alaw
allow=ulaw



Звонки ходят нормально в обе стороны, но при звонке с астериска на АТС, соедиение со стороны АТС не сбрасывается.
Например, звоним с астера на АТС, не подымая трубку на АТС, отбиваем звонок на астериске. АТС продолжает звонить.
Или, если при разговоре положить трубку на астериске, но не вешать на АТС, линия на АТС продолжает удерживаться, в трубке тишина.

на эту же АТС есть h323 линки с других АТС, с ними такой проблемы нет.
#2

раз с другими АТС все нормально может дело не в asterisk ?
#3

awsswa @ Пт Июл 25, 2014 05:16 писал(а):
раз с другими АТС все нормально может дело не в asterisk ?


Извиняюсь, если не понятно написал,

Все нормально при звонках с этой АТС OS500 на другие железные АТС подключенные по h323 и обратно.
Проблемы только если одна из сторон - астериск.
#4

Тогда смотреть дебаг h323 (уровень гуру) и понять что не так
#5

Если запишете трафик проблемного вызова, помогу расшифровать.
_________________
Обновленный chan_h323 с поддержкой T.38 для Asterisk 1.8, 10, 11 и 12 - http://code.google.com/p/ast-h323/
#6

amateur @ Пт Июл 25, 2014 07:00 писал(а):
Если запишете трафик проблемного вызова, помогу расшифровать.


Спасибо за предложение помощи,
Но вроде проблема все-таки на стороне OfficeServ 500. Так как я настоил ooh323 транк на еще одну АТС, IDCS500 - с тей все нормально. Ззависаний звонка не наблюдается.
#7

amateur @ Пт Июл 25, 2014 07:00 писал(а):
Если запишете трафик проблемного вызова, помогу расшифровать.


Замучался ковырять АТС. Может Вы хоть подскажете, проблема точно в АТС а не в астериске, перед тем как я начну играться прошивками АТС.

Сценарий звонка - на SIP телефоне (06244) подымаем трубку, набираем 1109 (номер на АТС). Ждем два гудка. Ложим трубку.
телефон 1109 продолжает звонить.

собственно вывод в консоли при ooh323 set debug
== Using SIP RTP TOS bits
== Using SIP RTP CoS mark 5
-- Executing [1109@to_branches_local_mobile_longdistance_international:1] Macro("SIP/06244-00000c32", "user-callerid,LIMIT,EXTERNAL,") in new stack
-- Executing [s@macro-user-callerid:1] Set("SIP/06244-00000c32", "TOUCH_MONITOR=1406900078.4372") in new stack
-- Executing [s@macro-user-callerid:2] Set("SIP/06244-00000c32", "AMPUSER=06244") in new stack
-- Executing [s@macro-user-callerid:3] GotoIf("SIP/06244-00000c32", "0?report") in new stack
-- Executing [s@macro-user-callerid:4] ExecIf("SIP/06244-00000c32", "1?Set(REALCALLERIDNUM=06244)") in new stack
-- Executing [s@macro-user-callerid:5] Set("SIP/06244-00000c32", "AMPUSER=06244") in new stack
-- Executing [s@macro-user-callerid:6] GotoIf("SIP/06244-00000c32", "0?limit") in new stack
-- Executing [s@macro-user-callerid:7] Set("SIP/06244-00000c32", "AMPUSERCIDNAME=Vasya Pupkin") in new stack
-- Executing [s@macro-user-callerid:8] GotoIf("SIP/06244-00000c32", "0?report") in new stack
-- Executing [s@macro-user-callerid:9] Set("SIP/06244-00000c32", "AMPUSERCID=06244") in new stack
-- Executing [s@macro-user-callerid:10] Set("SIP/06244-00000c32", "__DIAL_OPTIONS=Ttr") in new stack
-- Executing [s@macro-user-callerid:11] Set("SIP/06244-00000c32", "CALLERID(all)="Vasya Pupkin" ") in new stack
-- Executing [s@macro-user-callerid:12] GotoIf("SIP/06244-00000c32", "0?limit") in new stack
-- Executing [s@macro-user-callerid:13] ExecIf("SIP/06244-00000c32", "1?Set(GROUP(concurrency_limit)=06244)") in new stack
-- Executing [s@macro-user-callerid:14] GotoIf("SIP/06244-00000c32", "1?continue") in new stack
-- Goto (macro-user-callerid,s,27)
-- Executing [s@macro-user-callerid:27] Set("SIP/06244-00000c32", "CALLERID(number)=06244") in new stack
-- Executing [s@macro-user-callerid:28] Set("SIP/06244-00000c32", "CALLERID(name)=Vasya Pupkin") in new stack
-- Executing [s@macro-user-callerid:29] Set("SIP/06244-00000c32", "CDR(cnum)=06244") in new stack
-- Executing [s@macro-user-callerid:30] Set("SIP/06244-00000c32", "CDR(cnam)=Vasya Pupkin") in new stack
-- Executing [s@macro-user-callerid:31] Set("SIP/06244-00000c32", "CHANNEL(language)=ru") in new stack
-- Executing [1109@to_branches_local_mobile_longdistance_international:2] Set("SIP/06244-00000c32", "MOHCLASS=default") in new stack
-- Executing [1109@to_branches_local_mobile_longdistance_international:3] Set("SIP/06244-00000c32", "_NODEST=") in new stack
-- Executing [1109@to_branches_local_mobile_longdistance_international:4] Gosub("SIP/06244-00000c32", "sub-record-check,s,1(out,1109,)") in new stack
-- Executing [s@sub-record-check:1] Set("SIP/06244-00000c32", "REC_POLICY_MODE_SAVE=") in new stack
-- Executing [s@sub-record-check:2] GotoIf("SIP/06244-00000c32", "1?check") in new stack
-- Goto (sub-record-check,s,7)
-- Executing [s@sub-record-check:7] Set("SIP/06244-00000c32", "__MON_FMT=wav") in new stack
-- Executing [s@sub-record-check:8] GotoIf("SIP/06244-00000c32", "1?next") in new stack
-- Goto (sub-record-check,s,11)
-- Executing [s@sub-record-check:11] ExecIf("SIP/06244-00000c32", "0?Return()") in new stack
-- Executing [s@sub-record-check:12] ExecIf("SIP/06244-00000c32", "0?Set(__REC_POLICY_MODE=)") in new stack
-- Executing [s@sub-record-check:13] GotoIf("SIP/06244-00000c32", "0?out,1") in new stack
-- Executing [s@sub-record-check:14] Set("SIP/06244-00000c32", "__REC_STATUS=INITIALIZED") in new stack
-- Executing [s@sub-record-check:15] Set("SIP/06244-00000c32", "NOW=1406900078") in new stack
-- Executing [s@sub-record-check:16] Set("SIP/06244-00000c32", "__DAY=01") in new stack
-- Executing [s@sub-record-check:17] Set("SIP/06244-00000c32", "__MONTH=08") in new stack
-- Executing [s@sub-record-check:18] Set("SIP/06244-00000c32", "__YEAR=2014") in new stack
-- Executing [s@sub-record-check:19] Set("SIP/06244-00000c32", "__TIMESTR=20140801-163438") in new stack
-- Executing [s@sub-record-check:20] Set("SIP/06244-00000c32", "__FROMEXTEN=06244") in new stack
-- Executing [s@sub-record-check:21] Set("SIP/06244-00000c32", "__CALLFILENAME=out-1109-06244-20140801-163438-1406900078.4372") in new stack
-- Executing [s@sub-record-check:22] Goto("SIP/06244-00000c32", "out,1") in new stack
-- Goto (sub-record-check,out,1)
-- Executing [out@sub-record-check:1] ExecIf("SIP/06244-00000c32", "1?Set(__REC_POLICY_MODE=dontcare)") in new stack
-- Executing [out@sub-record-check:2] GosubIf("SIP/06244-00000c32", "0?record,1(exten,1109,06244)") in new stack
-- Executing [out@sub-record-check:3] Return("SIP/06244-00000c32", "") in new stack
-- Executing [1109@to_branches_local_mobile_longdistance_international:5] Macro("SIP/06244-00000c32", "dialout-trunk,1,1109,,off") in new stack
-- Executing [s@macro-dialout-trunk:1] Set("SIP/06244-00000c32", "DIAL_TRUNK=1") in new stack
-- Executing [s@macro-dialout-trunk:2] GosubIf("SIP/06244-00000c32", "0?sub-pincheck,s,1()") in new stack
-- Executing [s@macro-dialout-trunk:3] GotoIf("SIP/06244-00000c32", "0?disabletrunk,1") in new stack
-- Executing [s@macro-dialout-trunk:4] Set("SIP/06244-00000c32", "DIAL_NUMBER=1109") in new stack
-- Executing [s@macro-dialout-trunk:5] Set("SIP/06244-00000c32", "DIAL_TRUNK_OPTIONS=Ttr") in new stack
-- Executing [s@macro-dialout-trunk:6] Set("SIP/06244-00000c32", "OUTBOUND_GROUP=OUT_1") in new stack
-- Executing [s@macro-dialout-trunk:7] GotoIf("SIP/06244-00000c32", "1?nomax") in new stack
-- Goto (macro-dialout-trunk,s,9)
-- Executing [s@macro-dialout-trunk:9] GotoIf("SIP/06244-00000c32", "0?skipoutcid") in new stack
-- Executing [s@macro-dialout-trunk:10] Set("SIP/06244-00000c32", "DIAL_TRUNK_OPTIONS=Tt") in new stack
-- Executing [s@macro-dialout-trunk:11] Macro("SIP/06244-00000c32", "outbound-callerid,1") in new stack
-- Executing [s@macro-outbound-callerid:1] ExecIf("SIP/06244-00000c32", "0?Set(CALLERPRES()=)") in new stack
-- Executing [s@macro-outbound-callerid:2] ExecIf("SIP/06244-00000c32", "0?Set(REALCALLERIDNUM=06244)") in new stack
-- Executing [s@macro-outbound-callerid:3] GotoIf("SIP/06244-00000c32", "1?normcid") in new stack
-- Goto (macro-outbound-callerid,s,6)
-- Executing [s@macro-outbound-callerid:6] Set("SIP/06244-00000c32", "USEROUTCID=") in new stack
-- Executing [s@macro-outbound-callerid:7] Set("SIP/06244-00000c32", "EMERGENCYCID=") in new stack
-- Executing [s@macro-outbound-callerid:8] Set("SIP/06244-00000c32", "TRUNKOUTCID=06000") in new stack
-- Executing [s@macro-outbound-callerid:9] GotoIf("SIP/06244-00000c32", "1?trunkcid") in new stack
-- Goto (macro-outbound-callerid,s,14)
-- Executing [s@macro-outbound-callerid:14] ExecIf("SIP/06244-00000c32", "1?Set(CALLERID(all)=06000)") in new stack
-- Executing [s@macro-outbound-callerid:15] ExecIf("SIP/06244-00000c32", "0?Set(CALLERID(all)=)") in new stack
-- Executing [s@macro-outbound-callerid:16] ExecIf("SIP/06244-00000c32", "0?Set(CALLERID(all)=)") in new stack
-- Executing [s@macro-outbound-callerid:17] ExecIf("SIP/06244-00000c32", "0?Set(CALLERPRES()=prohib_passed_screen)") in new stack
-- Executing [s@macro-outbound-callerid:18] Set("SIP/06244-00000c32", "CDR(outbound_cnum)=06000") in new stack
-- Executing [s@macro-outbound-callerid:19] Set("SIP/06244-00000c32", "CDR(outbound_cnam)=") in new stack
-- Executing [s@macro-dialout-trunk:12] GosubIf("SIP/06244-00000c32", "0?sub-flp-1,s,1()") in new stack
-- Executing [s@macro-dialout-trunk:13] Set("SIP/06244-00000c32", "OUTNUM=1109") in new stack
-- Executing [s@macro-dialout-trunk:14] Set("SIP/06244-00000c32", "custom=AMP") in new stack
-- Executing [s@macro-dialout-trunk:15] ExecIf("SIP/06244-00000c32", "0?Set(DIAL_TRUNK_OPTIONS=M(setmusic^default)Tt)") in new stack
-- Executing [s@macro-dialout-trunk:16] ExecIf("SIP/06244-00000c32", "0?Set(DIAL_TRUNK_OPTIONS=TtM(confirm))") in new stack
-- Executing [s@macro-dialout-trunk:17] Macro("SIP/06244-00000c32", "dialout-trunk-predial-hook,") in new stack
-- Executing [s@macro-dialout-trunk-predial-hook:1] MacroExit("SIP/06244-00000c32", "") in new stack
-- Executing [s@macro-dialout-trunk:18] GotoIf("SIP/06244-00000c32", "0?bypass,1") in new stack
-- Executing [s@macro-dialout-trunk:19] ExecIf("SIP/06244-00000c32", "1?Set(CONNECTEDLINE(num,i)=1109)") in new stack
-- Executing [s@macro-dialout-trunk:20] ExecIf("SIP/06244-00000c32", "1?Set(CONNECTEDLINE(name,i)=CID:06000)") in new stack
-- Executing [s@macro-dialout-trunk:21] GotoIf("SIP/06244-00000c32", "1?customtrunk") in new stack
-- Goto (macro-dialout-trunk,s,25)
-- Executing [s@macro-dialout-trunk:25] Set("SIP/06244-00000c32", "pre_num=AMP:OOH323/OS500/") in new stack
-- Executing [s@macro-dialout-trunk:26] Set("SIP/06244-00000c32", "the_num=OUTNUM") in new stack
-- Executing [s@macro-dialout-trunk:27] Set("SIP/06244-00000c32", "post_num=") in new stack
-- Executing [s@macro-dialout-trunk:28] GotoIf("SIP/06244-00000c32", "1?outnum:skipoutnum") in new stack
-- Goto (macro-dialout-trunk,s,29)
-- Executing [s@macro-dialout-trunk:29] Set("SIP/06244-00000c32", "the_num=1109") in new stack
-- Executing [s@macro-dialout-trunk:30] Dial("SIP/06244-00000c32", "OOH323/OS500/1109,300,Tt") in new stack
--- ooh323_request - data OS500/1109 format (alaw)
--- ooh323_alloc
+++ ooh323_alloc
--- find_peer "OS500"
comparing with "192.168.33.90"
comparing with "192.168.17.231"
comparing with "192.168.3.10"
comparing with "192.168.23.225"
comparing with "192.168.1.171"
found matching peer
+++ find_peer "OS500"
--- ooh323_new - OS500
+++ h323_new
--- onNewCallCreated 7ffca4000c08: ooh323c_o_775
--- find_call
+++ find_call
Outgoing call OS500(ooh323c_o_775) - Codec prefs - (g729|alaw|ulaw)
Adding capabilities to call(outgoing, ooh323c_o_775)
Adding g729A capability to call(outgoing, ooh323c_o_775)
Adding g729 capability to call(outgoing, ooh323c_o_775)
Adding g729B capability to call(outgoing, ooh323c_o_775)
Adding g711 alaw capability to call(outgoing, ooh323c_o_775)
Adding g711 ulaw capability to call(outgoing, ooh323c_o_775)
--- configure_local_rtp
+++ configure_local_rtp
+++ onNewCallCreated ooh323c_o_775
+++ ooh323_request
----- ooh323_queryoption 16 on channel OOH323/OS500-1250
+++++ ooh323_queryoption 16 on channel OOH323/OS500-1250
+++ ooh323 get_rtp_peer
ooh323_get_rtp_peer OOH323/OS500-1250 -> (null):0, 2
--- ooh323 get_rtp_peer, res = 2
--- ooh323_call- OS500/1109
+++ ooh323_call
-- Called OOH323/OS500/1109
--- onOutgoingCall 7ffca4000c08: ooh323c_o_775
--- find_call
+++ find_call
setting callid number 06000
+++ onOutgoingCall ooh323c_o_775
--- ooh323_update_writeformat g729/20
--- find_call
+++ find_call
Writeformat before update alaw/(alaw)
+++ ooh323_update_writeformat
--- setup_rtp_connection 192.168.1.36:30000
--- find_call
+++ find_call
+++ setup_rtp_connection
--- onAlerting ooh323c_o_775
--- find_call
+++ find_call
+++ onAlerting ooh323c_o_775
-- OOH323/OS500-1250 is ringing
+++ ooh323 get_rtp_peer
ooh323_get_rtp_peer OOH323/OS500-1250 -> 192.168.1.36:30000, 2
--- ooh323 get_rtp_peer, res = 2
[2014-08-01 16:34:47] WARNING[43458][C-000008c6]: app_dial.c:1546 wait_for_answer: Unable to write frametype: 2
--- ooh323_hangup
hanging OS500 with cause: 16
+++ ooh323_hangup
--- close_rtp_connection
--- find_call
+++ find_call
+++ close_rtp_connection
--- onCallCleared ooh323c_o_775
--- find_call
+++ find_call
+++ onCallCleared
== Spawn extension (macro-dialout-trunk, s, 30) exited non-zero on 'SIP/06244-00000c32' in macro 'dialout-trunk'
== Spawn extension (to_branches_local_mobile_longdistance_international, 1109, 5) exited non-zero on 'SIP/06244-00000c32'
-- Executing [h@to_branches_local_mobile_longdistance_international:1] Macro("SIP/06244-00000c32", "hangupcall,") in new stack
-- Executing [s@macro-hangupcall:1] GotoIf("SIP/06244-00000c32", "1?theend") in new stack
-- Goto (macro-hangupcall,s,3)
-- Executing [s@macro-hangupcall:3] ExecIf("SIP/06244-00000c32", "0?Set(CDR(recordingfile)=)") in new stack
-- Executing [s@macro-hangupcall:4] Hangup("SIP/06244-00000c32", "") in new stack
== Spawn extension (macro-hangupcall, s, 4) exited non-zero on 'SIP/06244-00000c32' in macro 'hangupcall'
== Spawn extension (to_branches_local_mobile_longdistance_international, h, 1) exited non-zero on 'SIP/06244-00000c32'
--- ooh323_destroy
Destroying OS500
Destroying ooh323c_o_775
+++ ooh323_destroy


и запись трафика tcpdump'ом во вложении