[Home]

Summary:ASTERISK-14772: [patch] music on hold digit=X not persistent across periodic announcements
Reporter:Matthew Beckwell (mbeckwell)Labels:
Date Opened:2009-09-04 11:24:51Date Closed:2009-09-10 14:57:46
Priority:MinorRegression?No
Status:Closed/CompleteComponents:Applications/app_queue
Versions:Frequency of
Occurrence
Related
Issues:
Environment:Attachments:( 0) patch.txt
Description:When a caller enters a queue, the music on hold class begins playing as specified in the queues.conf file.

If the feature "digit=X" in the musiconhold.conf configuration is enabled, the caller has the ability to change the music on hold class. (this was broken in 1.6.0.6, but was addressed in issue 0015279).

However, once a periodic announcement is played (estimated hold time, for example) the music on hold class reverts back to the first class.

Since the digit=x feature is relatively new, I suspect there is merely no mechanism to retain the state of the current class before the music on hold is stopped and re-started while in the queue application.

****** STEPS TO REPRODUCE ******

1. Setup a queue specifying a music on hold class.
[testqueue]
weight=1
ringinuse=no
autopause=no
music=default
strategy=ringall
joinempty = yes
leavewhenempty = no
announce-frequency = 90
min-announce-frequency = 15
periodic-announce-frequency=60
announce-holdtime = yes
announce-position = yes
announce-position-limit = 5
announce-round-seconds = 30

2. Point an extension at the queue.
exten => 5000,1,Answer
exten => 5000,n,Queue(testqueue,,,,1800,,,,)

3. Setup 2 or more music on hold classes
[default]
digit=1
mode=files
directory=/var/lib/asterisk/moh

[classical]
digit=2
mode=files
directory=/var/lib/asterisk/moh/classical

[rock]
digit=3
mode=files
directory=/var/lib/asterisk/moh/rock

4a. Call the extension you setup to be placed into the queue.
4b. Notice you will hear the music on hold class you setup in step 1.

Console Information:
   -- Started music on hold, class 'default', on channel 'SIP/bwas1-084ba270'

5a. Press "2" to change music on hold classes.
5b. Notice the music on hold class changes

Console Information:
   -- Stopped music on hold on SIP/bwas1-084ba270
   -- Started music on hold, class 'classical', on channel 'SIP/bwas1-084ba270'

6a. Wait for the first periodic announcement. It will stop the music on hold play normally.

Console Information:
   -- Stopped music on hold on SIP/bwas1-084ba1f0
   -- Playing periodic announcement
   -- <SIP/bwas1-084ba1f0> Playing 'queue-periodic-announce.slin' (language 'en')

6b. After the announcement has played, it will return to the original music on hold class.
Console Information:
   -- Started music on hold, class 'default', on channel 'SIP/bwas1-084ba1f0'
Comments:By: Matthew Beckwell (mbeckwell) 2009-09-04 11:25:55

This appears to be an issue that has been present since the digit=X feature was introduced, and is consistent across the 1.6.X releases.

I believe the ideal behavior would be to allow the caller to switch (or disable) the music on hold class, and remain consistent for the duration of the call leg.  This would also mean making the caller's music on hold class selection persistent if the call fell through to another queue (but the unique id remained the same).

By: Matthias Nick (mnick) 2009-09-10 11:33:54

Posted a patch, ready for testing

By: Digium Subversion (svnbot) 2009-09-10 14:40:57

Repository: asterisk
Revision: 217730

U   trunk/res/res_musiconhold.c

------------------------------------------------------------------------
r217730 | mnick | 2009-09-10 14:40:56 -0500 (Thu, 10 Sep 2009) | 17 lines


Sets the correct musicclass after an announcement

(closes issue ASTERISK-14273)
Reported by: mbeckwell
Patches:
     patch.txt uploaded by mnick (license )
Tested by: mnick

(closes issue ASTERISK-14772)
Reported by: mbeckwell
Patches:
     patch.txt uploaded by mnick (license 874)
Tested by: mnick



------------------------------------------------------------------------

http://svn.digium.com/view/asterisk?view=rev&revision=217730

By: Digium Subversion (svnbot) 2009-09-10 14:54:57

Repository: asterisk
Revision: 217736

_U  branches/1.6.0/
U   branches/1.6.0/res/res_musiconhold.c

------------------------------------------------------------------------
r217736 | mnick | 2009-09-10 14:54:56 -0500 (Thu, 10 Sep 2009) | 22 lines

Merged revisions 217730 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

........
 r217730 | mnick | 2009-09-10 14:39:41 -0500 (Thu, 10 Sep 2009) | 17 lines
 
 
 Sets the correct musicclass after an announcement
 
 (closes issue ASTERISK-14273)
 Reported by: mbeckwell
 Patches:
       patch.txt uploaded by mnick (license )
 Tested by: mnick
 
 (closes issue ASTERISK-14772)
 Reported by: mbeckwell
 Patches:
       patch.txt uploaded by mnick (license 874)
 Tested by: mnick
........

------------------------------------------------------------------------

http://svn.digium.com/view/asterisk?view=rev&revision=217736

By: Digium Subversion (svnbot) 2009-09-10 14:57:09

Repository: asterisk
Revision: 217738

_U  branches/1.6.1/
U   branches/1.6.1/res/res_musiconhold.c

------------------------------------------------------------------------
r217738 | mnick | 2009-09-10 14:57:08 -0500 (Thu, 10 Sep 2009) | 22 lines

Merged revisions 217730 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

........
 r217730 | mnick | 2009-09-10 14:39:41 -0500 (Thu, 10 Sep 2009) | 17 lines
 
 
 Sets the correct musicclass after an announcement
 
 (closes issue ASTERISK-14273)
 Reported by: mbeckwell
 Patches:
       patch.txt uploaded by mnick (license )
 Tested by: mnick
 
 (closes issue ASTERISK-14772)
 Reported by: mbeckwell
 Patches:
       patch.txt uploaded by mnick (license 874)
 Tested by: mnick
........

------------------------------------------------------------------------

http://svn.digium.com/view/asterisk?view=rev&revision=217738

By: Digium Subversion (svnbot) 2009-09-10 14:57:45

Repository: asterisk
Revision: 217739

_U  branches/1.6.2/
U   branches/1.6.2/res/res_musiconhold.c

------------------------------------------------------------------------
r217739 | mnick | 2009-09-10 14:57:44 -0500 (Thu, 10 Sep 2009) | 22 lines

Merged revisions 217730 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk

........
 r217730 | mnick | 2009-09-10 14:39:41 -0500 (Thu, 10 Sep 2009) | 17 lines
 
 
 Sets the correct musicclass after an announcement
 
 (closes issue ASTERISK-14273)
 Reported by: mbeckwell
 Patches:
       patch.txt uploaded by mnick (license )
 Tested by: mnick
 
 (closes issue ASTERISK-14772)
 Reported by: mbeckwell
 Patches:
       patch.txt uploaded by mnick (license 874)
 Tested by: mnick
........

------------------------------------------------------------------------

http://svn.digium.com/view/asterisk?view=rev&revision=217739