[asterisk-bugs] [Asterisk 0011196]: RealTime MusicOnHold

noreply at bugs.digium.com noreply at bugs.digium.com
Fri Nov 9 01:42:35 CST 2007


A NOTE has been added to this issue. 
====================================================================== 
http://bugs.digium.com/view.php?id=11196 
====================================================================== 
Reported By:                sergee
Assigned To:                
====================================================================== 
Project:                    Asterisk
Issue ID:                   11196
Category:                   Resources/res_musiconhold
Reproducibility:            always
Severity:                   feature
Priority:                   normal
Status:                     new
Asterisk Version:            SVN 
SVN Branch (only for SVN checkouts, not tarball releases):  trunk 
SVN Revision (number only!): 89114 
Disclaimer on File?:        N/A 
Request Review:              
====================================================================== 
Date Submitted:             11-08-2007 12:59 CST
Last Modified:              11-09-2007 01:42 CST
====================================================================== 
Summary:                    RealTime MusicOnHold
Description: 
Some parts of asterisk support RealTime, but others don't. This patch is an
implementation of RT for res_musiconhold. Now you can store MOH classes in
text config and RT engine. Classes from RT engine override classes from
text config. 

To use it, add a line to your extconfig.conf:
musiconhold => mysql,asterisk

Every time MOH starts, search is perfomed first in RT engine, then in
memory (linked list of classes created from musiconhold.conf).

If MOH class is found in RT engine - separate structure is created in
memory. This structure is not added to linked list (mohclasses) and will be
destroyed as soon as MOH will stop.
====================================================================== 

---------------------------------------------------------------------- 
 sergee - 11-09-07 01:42  
---------------------------------------------------------------------- 
putnopvut, i thougt about it before submiting this patch. 

there is a dillema:

if more then one user use the same class, then we create a structure for
it, when the first user request it. For other users we can either create a
separate structure for each next user (1 user = 1 structure = 1 process if
needed) as i did it in this patch,
or we can attach them all to structure/process of the first user, but then
it won't be truly realtime, because other users won't cactch changes made
after 1st user started his MOH. It would be something like cached RT moh
class.

I think i can add a special switch to musiconhold.conf:
rtcacheclasses=yes|no

which would allow users to choose between tru-RT-heavy-cpu &
cached-RT-low-cpu methods. What do you think? 

Issue History 
Date Modified   Username       Field                    Change               
====================================================================== 
11-09-07 01:42  sergee         Note Added: 0073428                          
======================================================================




More information about the asterisk-bugs mailing list