[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:53:02 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:53 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
======================================================================
----------------------------------------------------------------------
(0118773) vmikhelson (reporter) - 2010-03-02 13:53
https://issues.asterisk.org/view.php?id=16664#c118773
----------------------------------------------------------------------
Here is another CLI output with "ooh323 set debug" DTMF sequence "*7" was
dialing after the connection was established.
Asterisk upgraded to 1.6.0.25. Asterisk-addons upgraded to 1.6.0.4.
-- Executing [1**352 at from-internal:1] Macro("SIP/462-0000000c",
"user-callerid,SKIPTTL,") in new stack
-- Executing [s at macro-user-callerid:1] Set("SIP/462-0000000c",
"AMPUSER=462") in new stack
-- Executing [s at macro-user-callerid:2] GotoIf("SIP/462-0000000c",
"0?report") in new stack
-- Executing [s at macro-user-callerid:3] ExecIf("SIP/462-0000000c",
"1?Set(REALCALLERIDNUM=462)") in new stack
-- Executing [s at macro-user-callerid:4] Set("SIP/462-0000000c",
"AMPUSER=462") in new stack
-- Executing [s at macro-user-callerid:5] Set("SIP/462-0000000c",
"AMPUSERCIDNAME=Vladimir -- HCI Office") in new stack
-- Executing [s at macro-user-callerid:6] GotoIf("SIP/462-0000000c",
"0?report") in new stack
-- Executing [s at macro-user-callerid:7] Set("SIP/462-0000000c",
"AMPUSERCID=462") in new stack
-- Executing [s at macro-user-callerid:8] Set("SIP/462-0000000c",
"CALLERID(all)="Vladimir -- HCI Office" <462>") in new stack
-- Executing [s at macro-user-callerid:9] ExecIf("SIP/462-0000000c",
"0?Set(CHANNEL(language)=)") in new stack
-- Executing [s at macro-user-callerid:10] GotoIf("SIP/462-0000000c",
"1?continue") in new stack
-- Goto (macro-user-callerid,s,19)
-- Executing [s at macro-user-callerid:19] NoOp("SIP/462-0000000c",
"Using CallerID "Vladimir -- HCI Office" <462>") in new stack
-- Executing [1**352 at from-internal:2] Set("SIP/462-0000000c",
"INTRACOMPANYROUTE=YES") in new stack
-- Executing [1**352 at from-internal:3] Set("SIP/462-0000000c",
"_NODEST=") in new stack
-- Executing [1**352 at from-internal:4] Macro("SIP/462-0000000c",
"record-enable,462,OUT,") in new stack
-- Executing [s at macro-record-enable:1] GotoIf("SIP/462-0000000c",
"1?check") in new stack
-- Goto (macro-record-enable,s,4)
-- Executing [s at macro-record-enable:4] ExecIf("SIP/462-0000000c",
"0?MacroExit()") in new stack
-- Executing [s at macro-record-enable:5] GotoIf("SIP/462-0000000c",
"0?Group:OUT") in new stack
-- Goto (macro-record-enable,s,16)
-- Executing [s at macro-record-enable:16] GotoIf("SIP/462-0000000c",
"0?IN") in new stack
-- Executing [s at macro-record-enable:17] ExecIf("SIP/462-0000000c",
"1?MacroExit()") in new stack
-- Executing [1**352 at from-internal:5] Macro("SIP/462-0000000c",
"dialout-trunk,13,*352,,") in new stack
-- Executing [s at macro-dialout-trunk:1] Set("SIP/462-0000000c",
"DIAL_TRUNK=13") in new stack
-- Executing [s at macro-dialout-trunk:2] GosubIf("SIP/462-0000000c",
"0?sub-pincheck,s,1") in new stack
-- Executing [s at macro-dialout-trunk:3] GotoIf("SIP/462-0000000c",
"0?disabletrunk,1") in new stack
-- Executing [s at macro-dialout-trunk:4] Set("SIP/462-0000000c",
"DIAL_NUMBER=*352") in new stack
-- Executing [s at macro-dialout-trunk:5] Set("SIP/462-0000000c",
"DIAL_TRUNK_OPTIONS=tr") in new stack
-- Executing [s at macro-dialout-trunk:6] Set("SIP/462-0000000c",
"OUTBOUND_GROUP=OUT_13") in new stack
-- Executing [s at macro-dialout-trunk:7] GotoIf("SIP/462-0000000c",
"0?nomax") in new stack
-- Executing [s at macro-dialout-trunk:8] GotoIf("SIP/462-0000000c",
"0?chanfull") in new stack
-- Executing [s at macro-dialout-trunk:9] GotoIf("SIP/462-0000000c",
"1?skipoutcid") in new stack
-- Goto (macro-dialout-trunk,s,12)
-- Executing [s at macro-dialout-trunk:12] ExecIf("SIP/462-0000000c",
"1?AGI(fixlocalprefix)") in new stack
-- Launched AGI Script /var/lib/asterisk/agi-bin/fixlocalprefix
-- <SIP/462-0000000c>AGI Script fixlocalprefix completed, returning 0
-- Executing [s at macro-dialout-trunk:13] Set("SIP/462-0000000c",
"OUTNUM=*352") in new stack
-- Executing [s at macro-dialout-trunk:14] Set("SIP/462-0000000c",
"custom=AMP") in new stack
-- Executing [s at macro-dialout-trunk:15] ExecIf("SIP/462-0000000c",
"0?Set(DIAL_TRUNK_OPTIONS=M(setmusic^)tr)") in new stack
-- Executing [s at macro-dialout-trunk:16] Macro("SIP/462-0000000c",
"dialout-trunk-predial-hook,") in new stack
-- Executing [s at macro-dialout-trunk-predial-hook:1]
MacroExit("SIP/462-0000000c", "") in new stack
-- Executing [s at macro-dialout-trunk:17] GotoIf("SIP/462-0000000c",
"0?bypass,1") in new stack
-- Executing [s at macro-dialout-trunk:18] GotoIf("SIP/462-0000000c",
"1?customtrunk") in new stack
-- Goto (macro-dialout-trunk,s,22)
-- Executing [s at macro-dialout-trunk:22] Set("SIP/462-0000000c",
"pre_num=AMP:OOH323/") in new stack
-- Executing [s at macro-dialout-trunk:23] Set("SIP/462-0000000c",
"the_num=OUTNUM") in new stack
-- Executing [s at macro-dialout-trunk:24] Set("SIP/462-0000000c",
"post_num=/avaya") in new stack
-- Executing [s at macro-dialout-trunk:25] GotoIf("SIP/462-0000000c",
"1?outnum:skipoutnum") in new stack
-- Goto (macro-dialout-trunk,s,26)
-- Executing [s at macro-dialout-trunk:26] Set("SIP/462-0000000c",
"the_num=*352") in new stack
-- Executing [s at macro-dialout-trunk:27] Dial("SIP/462-0000000c",
"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
--- onNewCallCreated ooh323c_o_10
--- find_call
+++ find_call
+++ ooh323_call
-- Called *352/avaya
setting callid number 462
Outgoing call avaya(ooh323c_o_10) - Codec prefs - (ulaw)
Adding capabilities to call(outgoing, ooh323c_o_10)
Adding g711 ulaw capability to call(outgoing, ooh323c_o_10)
--- configure_local_rtp
+++ configure_local_rtp
+++ onNewCallCreated ooh323c_o_10
--- setup_rtp_connection
--- find_call
+++ find_call
+++ setup_rtp_connection
--- onAlerting ooh323c_o_10
--- find_call
+++ find_call
+++ onAlerting ooh323c_o_10
-- OOH323/avaya-127b is ringing
--- onCallEstablished ooh323c_o_10
--- find_call
+++ find_call
-- OOH323/avaya-127b answered SIP/462-0000000c
----- ooh323_indicate 20 on call ooh323c_o_10
[Mar 2 13:46:59] WARNING[10429]: chan_ooh323.c:1054 ooh323_indicate:
Don't know how to indicate condition 20 on ooh323c_o_10
++++ ooh323_indicate 20 on ooh323c_o_10
+++ onCallEstablished ooh323c_o_10
[Mar 2 13:47:04] DTMF[10429]: channel.c:2856 __ast_read: DTMF begin '*'
received on SIP/462-0000000c
[Mar 2 13:47:04] DTMF[10429]: channel.c:2866 __ast_read: DTMF begin
passthrough '*' on SIP/462-0000000c
--- ooh323_digit_begin
+++ ooh323_digit_begin
--- find_call
+++ find_call
[Mar 2 13:47:04] DTMF[10429]: channel.c:2784 __ast_read: DTMF end '*'
received on OOH323/avaya-127b, duration 0 ms
[Mar 2 13:47:04] DTMF[10429]: channel.c:2810 __ast_read: DTMF begin
emulation of '*' with duration 100 queued on OOH323/avaya-127b
----- ooh323_indicate 20 on call ooh323c_o_10
[Mar 2 13:47:04] WARNING[10429]: chan_ooh323.c:1054 ooh323_indicate:
Don't know how to indicate condition 20 on ooh323c_o_10
++++ ooh323_indicate 20 on ooh323c_o_10
----- ooh323_indicate 20 on call ooh323c_o_10
[Mar 2 13:47:04] WARNING[10429]: chan_ooh323.c:1054 ooh323_indicate:
Don't know how to indicate condition 20 on ooh323c_o_10
++++ ooh323_indicate 20 on ooh323c_o_10
[Mar 2 13:47:04] DTMF[10429]: channel.c:2933 __ast_read: DTMF end
emulation of '*' queued on OOH323/avaya-127b
----- ooh323_indicate 20 on call ooh323c_o_10
[Mar 2 13:47:04] WARNING[10429]: chan_ooh323.c:1054 ooh323_indicate:
Don't know how to indicate condition 20 on ooh323c_o_10
++++ ooh323_indicate 20 on ooh323c_o_10
----- ooh323_indicate 20 on call ooh323c_o_10
[Mar 2 13:47:04] WARNING[10429]: chan_ooh323.c:1054 ooh323_indicate:
Don't know how to indicate condition 20 on ooh323c_o_10
++++ ooh323_indicate 20 on ooh323c_o_10
[Mar 2 13:47:04] DTMF[10429]: channel.c:2784 __ast_read: DTMF end '*'
received on SIP/462-0000000c, duration 300 ms
[Mar 2 13:47:04] DTMF[10429]: channel.c:2824 __ast_read: DTMF end
accepted with begin '*' on SIP/462-0000000c
[Mar 2 13:47:04] DTMF[10429]: channel.c:2840 __ast_read: DTMF end
passthrough '*' on SIP/462-0000000c
--- ooh323_digit_end
+++ ooh323_digit_end
----- ooh323_indicate 20 on call ooh323c_o_10
[Mar 2 13:47:05] WARNING[10429]: chan_ooh323.c:1054 ooh323_indicate:
Don't know how to indicate condition 20 on ooh323c_o_10
++++ ooh323_indicate 20 on ooh323c_o_10
----- ooh323_indicate 20 on call ooh323c_o_10
[Mar 2 13:47:05] WARNING[10429]: chan_ooh323.c:1054 ooh323_indicate:
Don't know how to indicate condition 20 on ooh323c_o_10
++++ ooh323_indicate 20 on ooh323c_o_10
[Mar 2 13:47:10] DTMF[10429]: channel.c:2856 __ast_read: DTMF begin '7'
received on SIP/462-0000000c
[Mar 2 13:47:10] DTMF[10429]: channel.c:2866 __ast_read: DTMF begin
passthrough '7' on SIP/462-0000000c
--- ooh323_digit_begin
+++ ooh323_digit_begin
--- find_call
+++ find_call
[Mar 2 13:47:10] DTMF[10429]: channel.c:2784 __ast_read: DTMF end '7'
received on OOH323/avaya-127b, duration 0 ms
[Mar 2 13:47:10] DTMF[10429]: channel.c:2810 __ast_read: DTMF begin
emulation of '7' with duration 100 queued on OOH323/avaya-127b
----- ooh323_indicate 20 on call ooh323c_o_10
[Mar 2 13:47:10] WARNING[10429]: chan_ooh323.c:1054 ooh323_indicate:
Don't know how to indicate condition 20 on ooh323c_o_10
++++ ooh323_indicate 20 on ooh323c_o_10
----- ooh323_indicate 20 on call ooh323c_o_10
[Mar 2 13:47:10] WARNING[10429]: chan_ooh323.c:1054 ooh323_indicate:
Don't know how to indicate condition 20 on ooh323c_o_10
++++ ooh323_indicate 20 on ooh323c_o_10
[Mar 2 13:47:10] DTMF[10429]: channel.c:2933 __ast_read: DTMF end
emulation of '7' queued on OOH323/avaya-127b
----- ooh323_indicate 20 on call ooh323c_o_10
[Mar 2 13:47:10] WARNING[10429]: chan_ooh323.c:1054 ooh323_indicate:
Don't know how to indicate condition 20 on ooh323c_o_10
++++ ooh323_indicate 20 on ooh323c_o_10
[Mar 2 13:47:10] DTMF[10429]: channel.c:2784 __ast_read: DTMF end '7'
received on SIP/462-0000000c, duration 300 ms
[Mar 2 13:47:10] DTMF[10429]: channel.c:2824 __ast_read: DTMF end
accepted with begin '7' on SIP/462-0000000c
[Mar 2 13:47:10] DTMF[10429]: channel.c:2840 __ast_read: DTMF end
passthrough '7' on SIP/462-0000000c
----- ooh323_indicate 20 on call ooh323c_o_10
[Mar 2 13:47:10] WARNING[10429]: chan_ooh323.c:1054 ooh323_indicate:
Don't know how to indicate condition 20 on ooh323c_o_10
++++ ooh323_indicate 20 on ooh323c_o_10
----- ooh323_indicate 20 on call ooh323c_o_10
[Mar 2 13:47:34] WARNING[10429]: chan_ooh323.c:1054 ooh323_indicate:
Don't know how to indicate condition 20 on ooh323c_o_10
++++ ooh323_indicate 20 on ooh323c_o_10
-- Executing [h at macro-dialout-trunk:1] Macro("SIP/462-0000000c",
"hangupcall,") in new stack
-- Executing [s at macro-hangupcall:1] GotoIf("SIP/462-0000000c",
"1?skiprg") in new stack
-- Goto (macro-hangupcall,s,4)
-- Executing [s at macro-hangupcall:4] GotoIf("SIP/462-0000000c",
"1?skipblkvm") in new stack
-- Goto (macro-hangupcall,s,7)
-- Executing [s at macro-hangupcall:7] GotoIf("SIP/462-0000000c",
"1?theend") in new stack
-- Goto (macro-hangupcall,s,9)
-- Executing [s at macro-hangupcall:9] Hangup("SIP/462-0000000c", "") in
new stack
== Spawn extension (macro-hangupcall, s, 9) exited non-zero on
'SIP/462-0000000c' in macro 'hangupcall'
--- ooh323_hangup
hanging avaya
+++ ooh323_hangup
== Spawn extension (macro-dialout-trunk, s, 27) exited non-zero on
'SIP/462-0000000c' in macro 'dialout-trunk'
== Spawn extension (from-internal, 1**352, 5) exited non-zero on
'SIP/462-0000000c'
--- close_rtp_connection
--- find_call
+++ find_call
+++ close_rtp_connection
--- onCallCleared ooh323c_o_10
--- find_call
+++ find_call
+++ onCallCleared
--- ooh323_destroy
Destroying avaya
+++ ooh323_destroy
Issue History
Date Modified Username Field Change
======================================================================
2010-03-02 13:53 vmikhelson Note Added: 0118773
======================================================================
More information about the asterisk-bugs
mailing list