[Home]

Summary:ASTERISK-16098: No ringtone when going from queue to dial-command
Reporter:Jonas Kellens (jonaskellens)Labels:
Date Opened:2010-05-14 03:09:14Date Closed:2011-07-26 15:14:30
Priority:MinorRegression?No
Status:Closed/CompleteComponents:Channels/chan_sip/General
Versions:Frequency of
Occurrence
Related
Issues:
Environment:Attachments:( 0) myDebugLog.asterisk.jocan.local
( 1) myDebugLog-dial-r
( 2) myDebugLog-ringing
Description:Asterisk 1.4.25.1 on CentOS 5.4

3 steps in my dialplan :

exten => _9,1,Dial(SIP/testcorp1,10)
exten => _9,n,Queue(testcorpq1,,,,10)
exten => _9,n,Dial(SIP/testcorp2,10)

In step 1, while dialing testcorp1, the caller hears a ringtone.
In step 2, while inside the queue, the caller hears music on hold.
In step 3, while dialing testcorp2, the caller hears silence.

Every time again, when going from a queue with musiconhold to a dial-command, the caller hears no dialtone but silence...

The only time when the caller also hears a dialtone in step 3 is when calling the Queue-application with 'r'-option : Queue(testcorpq1,r,,,10)

Don't know how to get the ringtone back...

****** ADDITIONAL INFORMATION ******

The variable ${CHANNEL(state)} is RING in all 3 steps...

Setting the CHANNEL(tonezone) does not make a difference...
Comments:By: Paul Belanger (pabelanger) 2010-05-14 10:01:20

It appears the bug you have submitted is against a version that is old. Please test with a newer 1.4 version of Asterisk.

By: Jonas Kellens (jonaskellens) 2010-05-14 14:16:59

[root@asterisk ~]# /usr/sbin/asterisk -r
Asterisk 1.4.30, Copyright (C) 1999 - 2010 Digium, Inc. and others.
Created by Mark Spencer <markster@digium.com>
Asterisk comes with ABSOLUTELY NO WARRANTY; type 'core show warranty' for details.

So I use version 1.4.30. But I still have the same problem...

exten => _3293456789,1,Dial(SIP/testcorp1,10)
exten => _3293456789,n,Queue(testcorpq1,,,,10)
exten => _3293456789,n,Dial(SIP/testcorp2,10)

[May 14 21:13:59]     -- Executing [3293456789@from-TESTCORP:1] Dial("SIP/testcorp3-00000000", "SIP/testcorp1|10") in new stack
[May 14 21:13:59]     -- Called testcorp1
[May 14 21:14:00]     -- SIP/testcorp1-00000001 is ringing
--> caller hears the ringtone while ringing...
[May 14 21:14:09]     -- Nobody picked up in 10000 ms
[May 14 21:14:09]     -- Executing [3293456789@from-TESTCORP:2] Queue("SIP/testcorp3-00000000", "testcorpq1||||10") in new stack
[May 14 21:14:09]     -- Started music on hold, class 'default', on SIP/testcorp3-00000000
--> caller hears the music on hold while ringing...
[May 14 21:14:10]     -- SIP/testcorp1-00000002 is ringing
[May 14 21:14:20]     -- Nobody picked up in 10000 ms
[May 14 21:14:20]     -- Stopped music on hold on SIP/testcorp3-00000000
[May 14 21:14:20]     -- Executing [3293456789@from-TESTCORP:3] Dial("SIP/testcorp3-00000000", "SIP/testcorp2|10") in new stack
[May 14 21:14:20]     -- Called testcorp2
[May 14 21:14:20]     -- SIP/testcorp2-00000003 is ringing
--> caller hears silence while ringing...
[May 14 21:14:30]     -- Nobody picked up in 10000 ms
[May 14 21:14:30]   == Auto fallthrough, channel 'SIP/testcorp3-00000000' status is 'NOANSWER'

So another version of Asterisk but still the same problem.



By: Paul Belanger (pabelanger) 2010-05-14 15:02:50

We require a complete debug log to help triage the issue.

This document will provide instructions on how to collect debugging logs from an Asterisk machine for the purpose of helping bug marshals troubleshoot an issue:

http://svn.digium.com/svn/asterisk/trun/doc/HOWTO_collect_debug_information.txt

By: Jonas Kellens (jonaskellens) 2010-05-15 03:53:17

The only time when I get a ringtone is when I use the Queue-application with the 'r'-option so there is no musiconhold but a ringing tone.

When after this queue I go back to a dial-command, then the caller hears a ringtone.

But I'm difficult and I want musiconhold when inside the queue :-).

The debug-log is attached...

By: John Todd (jtodd) 2010-05-18 14:33:07

The call is answered by the Queue command, so ringing is stopped at this point.

In order to present ringtone, you will probably need to send it as audio as a part of the second Dial, so try the "r" option on the Dial for testcorp2.

By: Jonas Kellens (jonaskellens) 2010-05-18 14:48:46

Dear jtodd,

I should have mentioned that I already tested using the Dial-command with the 'r'-option, but without any success.

I also tested with the Ringing()-command between the Queue and the Dial, so :

exten => _9,1,Dial(SIP/testcorp1,10)
exten => _9,n,Queue(testcorpq1,,,,10)
exten => _9,n,Ringing()
exten => _9,n,Dial(SIP/testcorp2,10)

but also without success...



By: Jonas Kellens (jonaskellens) 2010-05-19 12:35:35

I have added 2 debug logs :

1. with the 'r'-option to the Dial()-command
2. with the Ringing()-command after the Queue

Both do not change the fact that there is no ringtone when I use the Dial()-command after a Queue()-command...

Can you advise ?

By: Jonas Kellens (jonaskellens) 2010-05-24 08:54:55

An update.

I've got the ringtone back in the second dial()-command by answering the channel first... So :

exten => _9,1,Dial(SIP/testcorp1,10)
exten => _9,n,Queue(testcorpq1,,,,10)
exten => _9,n,Answer()
exten => _9,n,Dial(SIP/testcorp2,10)

I also notice that the ringtone of the first Dial()-command is different from the ringtone in the second Dial()-command.
Could this be the difference between "early media" and an answered channel ?

After the Queue()-command, and without the Answer(), the channel is still not answered. Could that be causing the lack of dialtone in the second Dial()-command ?? "Early Media" no longer 'works' after a Queue()-command ?



By: John Todd (jtodd) 2010-05-24 09:40:19

Well, probably not quite.  The first ringtone you hear is being generated by your telephony device (SIP phone?) on the "180 Ringing" message back from Asterisk.  The second ringing tone you hear (generated by Dial (which should have an "r", right?) is generated by Asterisk itself as audio.  I think.  At least that's how it _should_ work.

So is this still an issue that should remain open?

By: Jonas Kellens (jonaskellens) 2010-05-24 10:49:36

The Dial()-command does not have the 'r'-option. As I said earlier, it makes no difference if the 'r'-option is used or not.

This issue should be kept open as Answer() should not be the solution to this ringtone-problem. It means that even if there's no answer for minutes, the caller will have to pay for these minutes as he is 'connected'.
This can not be how it should be, it's not clean.

jtodd, you say the first ringtone is generated by my SIP-phone (Grandstream GXP2010) and the second by Asterisk. This can be true, but then there's definitely a problem with Asterisk as the second ringtone is not coming correctly from Asterisk.

Are there some parameters that I can tune for the ringtone that is coming from Asterisk via a SIP-channel to my SIP-phone ?



By: Leif Madsen (lmadsen) 2011-07-26 15:14:24.392-0500

Per the Asterisk maintenance timeline page at http://www.asterisk.org/asterisk-versions maintenance (bug) support for the 1.4 and 1.6.x branches has ended. For continued maintenance support please move to the 1.8 branch which is a long term support (LTS) branch. For more information about branch support, please see https://wiki.asterisk.org/wiki/display/AST/Asterisk+Versions

If this is still an issue, please open a new issue so it can be re-triaged appropriately. Thanks!