[asterisk-bugs] [Asterisk 0016664]: [patch] Random DTMF duplicate emulation on bridged OOH323 channel on outgoing calls
Asterisk Bug Tracker
noreply at bugs.digium.com
Tue Mar 2 13:29:50 CST 2010
A NOTE has been added to this issue.
======================================================================
https://issues.asterisk.org/view.php?id=16664
======================================================================
Reported By: vmikhelson
Assigned To: may213
======================================================================
Project: Asterisk
Issue ID: 16664
Category: Addons/chan_ooh323
Reproducibility: random
Severity: major
Priority: normal
Status: assigned
Asterisk Version: 1.6.0.20
JIRA:
Regression: No
Reviewboard Link:
SVN Branch (only for SVN checkouts, not tarball releases): N/A
SVN Revision (number only!):
Request Review:
======================================================================
Date Submitted: 2010-01-21 00:44 CST
Last Modified: 2010-03-02 13:29 CST
======================================================================
Summary: [patch] Random DTMF duplicate emulation on bridged
OOH323 channel on outgoing calls
Description:
In majority of cases DTMF tones are duplicated by Asterisk when bridging a
SIP or DAHDI channel with OOH323 channel on outgoing calls.
In case of a normal DTMF processing the following sequence is observed:
[Jan 20 19:59:56] DTMF[21084]: channel.c:2855 __ast_read: DTMF begin '9'
received on SIP/464-00000012
[Jan 20 19:59:56] DTMF[21084]: channel.c:2865 __ast_read: DTMF begin
passthrough '9' on SIP/464-00000012
[Jan 20 19:59:56] DTMF[21084]: channel.c:2783 __ast_read: DTMF end '9'
received on SIP/464-00000012, duration 120 ms
[Jan 20 19:59:56] DTMF[21084]: channel.c:2823 __ast_read: DTMF end
accepted with begin '9' on SIP/464-00000012
[Jan 20 19:59:56] DTMF[21084]: channel.c:2839 __ast_read: DTMF end
passthrough '9' on SIP/464-00000012
In case of a problematic DTMF processing it looks like that:
[Jan 20 19:18:54] DTMF[20916]: channel.c:2855 __ast_read: DTMF begin '9'
received on SIP/464-00000011
[Jan 20 19:18:54] DTMF[20916]: channel.c:2865 __ast_read: DTMF begin
passthrough '9' on SIP/464-00000011
[Jan 20 19:18:54] DTMF[20916]: channel.c:2783 __ast_read: DTMF end '9'
received on OOH323/172.17.135.2:1720-9915, duration 0 ms
[Jan 20 19:18:54] DTMF[20916]: channel.c:2809 __ast_read: DTMF begin
emulation of '9' with duration 100 queued on OOH323/172.17.135.2:1720-9915
[Jan 20 19:18:54] WARNING[20916]: chan_ooh323.c:1054 ooh323_indicate:
Don't know how to indicate condition 20 on ooh323c_o_21
[Jan 20 19:18:54] WARNING[20916]: chan_ooh323.c:1054 ooh323_indicate:
Don't know how to indicate condition 20 on ooh323c_o_21
[Jan 20 19:18:54] DTMF[20916]: channel.c:2932 __ast_read: DTMF end
emulation of '9' queued on OOH323/172.17.135.2:1720-9915
[Jan 20 19:18:54] WARNING[20916]: chan_ooh323.c:1054 ooh323_indicate:
Don't know how to indicate condition 20 on ooh323c_o_21
[Jan 20 19:18:54] DTMF[20916]: channel.c:2783 __ast_read: DTMF end '9'
received on SIP/464-00000011, duration 120 ms
[Jan 20 19:18:54] DTMF[20916]: channel.c:2823 __ast_read: DTMF end
accepted with begin '9' on SIP/464-00000011
[Jan 20 19:18:54] DTMF[20916]: channel.c:2839 __ast_read: DTMF end
passthrough '9' on SIP/464-00000011
[Jan 20 19:18:55] WARNING[20916]: chan_ooh323.c:1054 ooh323_indicate:
Don't know how to indicate condition 20 on ooh323c_o_21
======================================================================
----------------------------------------------------------------------
(0118765) vmikhelson (reporter) - 2010-03-02 13:29
https://issues.asterisk.org/view.php?id=16664#c118765
----------------------------------------------------------------------
May213,
Here is the CLI output for a dropped OOH323 call with "ooh323 set debug"
Is it "ooh323_indicate 20 on call ooh323c_o_7" causing the trouble?
-- Executing [352 at from-internal:1] Macro("SIP/462-00000009",
"user-callerid, SKIPTTL,") in new stack
-- Executing [s at macro-user-callerid:1] Set("SIP/462-00000009",
"AMPUSER=462" ) in new stack
-- Executing [s at macro-user-callerid:2] GotoIf("SIP/462-00000009",
"0?report" ) in new stack
-- Executing [s at macro-user-callerid:3] ExecIf("SIP/462-00000009",
"1?Set(REA LCALLERIDNUM=462)") in new stack
-- Executing [s at macro-user-callerid:4] Set("SIP/462-00000009",
"AMPUSER=462" ) in new stack
-- Executing [s at macro-user-callerid:5] Set("SIP/462-00000009",
"AMPUSERCIDNA ME=Vladimir -- HCI Office") in
new stack
-- Executing [s at macro-user-callerid:6] GotoIf("SIP/462-00000009",
"0?report" ) in new stack
-- Executing [s at macro-user-callerid:7] Set("SIP/462-00000009",
"AMPUSERCID=4 62") in new stack
-- Executing [s at macro-user-callerid:8] Set("SIP/462-00000009",
"CALLERID(all )="Vladimir -- HCI Office"
<462>") in new stack
-- Executing [s at macro-user-callerid:9] ExecIf("SIP/462-00000009",
"0?Set(CHA NNEL(language)=)") in new stack
-- Executing [s at macro-user-callerid:10] GotoIf("SIP/462-00000009",
"1?contin ue") in new stack
-- Goto (macro-user-callerid,s,19)
-- Executing [s at macro-user-callerid:19] NoOp("SIP/462-00000009",
"Using Call erID "Vladimir -- HCI Office"
<462>") in new stack
-- Executing [352 at from-internal:2] Set("SIP/462-00000009",
"INTRACOMPANYROUT E=YES") in new stack
-- Executing [352 at from-internal:3] Set("SIP/462-00000009", "_NODEST=")
in ne w stack
-- Executing [352 at from-internal:4] Macro("SIP/462-00000009",
"record-enable, 462,OUT,") in new stack
-- Executing [s at macro-record-enable:1] GotoIf("SIP/462-00000009",
"1?check") in new stack
-- Goto (macro-record-enable,s,4)
-- Executing [s at macro-record-enable:4] ExecIf("SIP/462-00000009",
"0?MacroEx it()") in new stack
-- Executing [s at macro-record-enable:5] GotoIf("SIP/462-00000009",
"0?Group:O UT") in new stack
-- Goto (macro-record-enable,s,16)
-- Executing [s at macro-record-enable:16] GotoIf("SIP/462-00000009",
"0?IN") i n new stack
-- Executing [s at macro-record-enable:17] ExecIf("SIP/462-00000009",
"1?MacroE xit()") in new stack
-- Executing [352 at from-internal:5] Macro("SIP/462-00000009",
"dialout-trunk, 13,352,,") in new stack
-- Executing [s at macro-dialout-trunk:1] Set("SIP/462-00000009",
"DIAL_TRUNK=1 3") in new stack
-- Executing [s at macro-dialout-trunk:2] GosubIf("SIP/462-00000009",
"0?sub-pi ncheck,s,1") in new stack
-- Executing [s at macro-dialout-trunk:3] GotoIf("SIP/462-00000009",
"0?disable trunk,1") in new stack
-- Executing [s at macro-dialout-trunk:4] Set("SIP/462-00000009",
"DIAL_NUMBER= 352") in new stack
-- Executing [s at macro-dialout-trunk:5] Set("SIP/462-00000009",
"DIAL_TRUNK_O PTIONS=tr") in new stack
-- Executing [s at macro-dialout-trunk:6] Set("SIP/462-00000009",
"OUTBOUND_GRO UP=OUT_13") in new stack
-- Executing [s at macro-dialout-trunk:7] GotoIf("SIP/462-00000009",
"0?nomax") in new stack
-- Executing [s at macro-dialout-trunk:8] GotoIf("SIP/462-00000009",
"0?chanful l") in new stack
-- Executing [s at macro-dialout-trunk:9] GotoIf("SIP/462-00000009",
"1?skipout cid") in new stack
-- Goto (macro-dialout-trunk,s,12)
-- Executing [s at macro-dialout-trunk:12] ExecIf("SIP/462-00000009",
"1?AGI(fi xlocalprefix)") in new stack
-- Launched AGI Script /var/lib/asterisk/agi-bin/fixlocalprefix
-- <SIP/462-00000009>AGI Script fixlocalprefix completed, returning 0
-- Executing [s at macro-dialout-trunk:13] Set("SIP/462-00000009",
"OUTNUM=352" ) in new stack
-- Executing [s at macro-dialout-trunk:14] Set("SIP/462-00000009",
"custom=AMP" ) in new stack
-- Executing [s at macro-dialout-trunk:15] ExecIf("SIP/462-00000009",
"0?Set(DI AL_TRUNK_OPTIONS=M(setmusic^)tr)")
in new stack
-- Executing [s at macro-dialout-trunk:16] Macro("SIP/462-00000009",
"dialout-t runk-predial-hook,") in new stack
-- Executing [s at macro-dialout-trunk-predial-hook:1]
MacroExit("SIP/462-00000 009", "") in new
stack
-- Executing [s at macro-dialout-trunk:17] GotoIf("SIP/462-00000009",
"0?bypass ,1") in new stack
-- Executing [s at macro-dialout-trunk:18] GotoIf("SIP/462-00000009",
"1?custom trunk") in new stack
-- Goto (macro-dialout-trunk,s,22)
-- Executing [s at macro-dialout-trunk:22] Set("SIP/462-00000009",
"pre_num=AMP :OOH323/") in new stack
-- Executing [s at macro-dialout-trunk:23] Set("SIP/462-00000009",
"the_num=OUT NUM") in new stack
-- Executing [s at macro-dialout-trunk:24] Set("SIP/462-00000009",
"post_num=/a vaya") in new stack
-- Executing [s at macro-dialout-trunk:25] GotoIf("SIP/462-00000009",
"1?outnum :skipoutnum") in new stack
-- Goto (macro-dialout-trunk,s,26)
-- Executing [s at macro-dialout-trunk:26] Set("SIP/462-00000009",
"the_num=352 ") in new stack
-- Executing [s at macro-dialout-trunk:27] Dial("SIP/462-00000009",
"OOH323/352 /avaya,300,tr") in new stack
--- ooh323_request - data 352/avaya format 0x4 (ulaw)
--- ooh323_alloc
+++ ooh323_alloc
--- find_peer "avaya"
comparing with "172.17.135.2"
found matching peer
+++ find_peer "avaya"
--- ooh323_new - avaya
+++ h323_new
+++ ooh323_request
--- ooh323_call- 352/avaya
+++ ooh323_call
-- Called 352/avaya
--- onNewCallCreated ooh323c_o_7
--- find_call
+++ find_call
setting callid number 462
Outgoing call avaya(ooh323c_o_7) - Codec prefs - (ulaw)
pbx*CLI>Adding capabilities to call(outgoing, ooh323c_o_7)
pbx*CLI>Adding g711 ulaw capability to call(outgoing, ooh323c_o_7)
--- configure_local_rtp
+++ configure_local_rtp
+++ onNewCallCreated ooh323c_o_7
--- setup_rtp_connection
--- find_call
+++ find_call
+++ setup_rtp_connection
--- onAlerting ooh323c_o_7
--- find_call
+++ find_call
+++ onAlerting ooh323c_o_7
-- OOH323/avaya-bd1d is ringing
--- onCallEstablished ooh323c_o_7
--- find_call
+++ find_call
-- OOH323/avaya-bd1d answered SIP/462-00000009
----- ooh323_indicate 20 on call ooh323c_o_7
[Mar 2 13:05:48] WARNING[10230]: chan_ooh323.c:1054 ooh323_indicate:
Don't know how to indicate condition 20 on
ooh323c_o_7
++++ ooh323_indicate 20 on ooh323c_o_7
+++ onCallEstablished ooh323c_o_7
--- close_rtp_connection
--- find_call
+++ find_call
+++ close_rtp_connection
--- onCallCleared ooh323c_o_7
--- find_call
+++ find_call
-- Executing [h at macro-dialout-trunk:1] Macro("SIP/462-00000009",
"hangupcall ,") in new stack
-- Executing [s at macro-hangupcall:1] GotoIf("SIP/462-00000009",
"1?skiprg") i n new stack
-- Goto (macro-hangupcall,s,4)
-- Executing [s at macro-hangupcall:4] GotoIf("SIP/462-00000009",
"1?skipblkvm" ) in new stack
-- Goto (macro-hangupcall,s,7)
-- Executing [s at macro-hangupcall:7] GotoIf("SIP/462-00000009",
"1?theend") i n new stack
-- Goto (macro-hangupcall,s,9)
-- Executing [s at macro-hangupcall:9] Hangup("SIP/462-00000009", "") in
new st ack
== Spawn extension (macro-hangupcall, s, 9) exited non-zero on
'SIP/462-000000 09' in macro 'hangupcall'
== Spawn extension (macro-dialout-trunk, h, 1) exited non-zero on
'SIP/462-000 00009'
--- ooh323_hangup
hanging avaya
+++ ooh323_hangup
== Spawn extension (macro-dialout-trunk, s, 27) exited non-zero on
'SIP/462-00 000009' in macro 'dialout-trunk'
== Spawn extension (from-internal, 352, 5) exited non-zero on
'SIP/462-0000000 9'
-- Executing [h at from-internal:1] Macro("SIP/462-00000009",
"hangupcall") in new stack
-- Executing [s at macro-hangupcall:1] GotoIf("SIP/462-00000009",
"1?skiprg") i n new stack
-- Goto (macro-hangupcall,s,4)
-- Executing [s at macro-hangupcall:4] GotoIf("SIP/462-00000009",
"1?skipblkvm" ) in new stack
-- Goto (macro-hangupcall,s,7)
-- Executing [s at macro-hangupcall:7] GotoIf("SIP/462-00000009",
"1?theend") i n new stack
-- Goto (macro-hangupcall,s,9)
-- Executing [s at macro-hangupcall:9] Hangup("SIP/462-00000009", "") in
new st ack
== Spawn extension (macro-hangupcall, s, 9) exited non-zero on
'SIP/462-000000 09' in macro 'hangupcall'
== Spawn extension (from-internal, h, 1) exited non-zero on
'SIP/462-00000009'
--- ooh323_destroy
Destroying avaya
+++ ooh323_destroy
Issue History
Date Modified Username Field Change
======================================================================
2010-03-02 13:29 vmikhelson Note Added: 0118765
======================================================================
More information about the asterisk-bugs
mailing list