From: Jonathan Rose Date: Wed, 11 Apr 2012 16:07:50 +0000 (+0000) Subject: Change default value of 'ignorebusy' on Queue members so that behavior is more like 1.8 X-Git-Tag: 10.5.0-rc1~66 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=485130c92ffc2e4b09e8491d17f82459698da402;p=thirdparty%2Fasterisk.git Change default value of 'ignorebusy' on Queue members so that behavior is more like 1.8 Prior to this patch, in order to restore that behavior, a function would have to be used on the QueueMember to make the ringinuse option do anything, which is pretty unreasonable. (closes issue ASTERISK-19536) reported by: Philippe Lindheimer Review: https://reviewboard.asterisk.org/r/1860/ git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/10@361907 65c4cc65-6c06-0410-ace0-fbb531ad65f3 --- diff --git a/CHANGES b/CHANGES index b4df62d0a9..e66e02035f 100644 --- a/CHANGES +++ b/CHANGES @@ -24,6 +24,14 @@ Background DNS Update Manager should help reduce the 'doing dnsmgr_lookup for' message from spamming the CLI. +Queue changes +------------- + * Default value for 'ignorebusy' flag on queue members is now 1 instead of 0 + to get the default behavior in line with 1.8. The only way to change this + flag in 10 is to use the QUEUE_MEMBER function to change ignorebusy unless + using realtime queue members (in which case it can be manipualted on the + database normally). + ------------------------------------------------------------------------------ --- Functionality changes since Asterisk 10.1.0 ------------------------------ ------------------------------------------------------------------------------ diff --git a/apps/app_queue.c b/apps/app_queue.c index 03ca5b35b9..e07be140cb 100644 --- a/apps/app_queue.c +++ b/apps/app_queue.c @@ -1621,6 +1621,7 @@ static struct member *create_queue_member(const char *interface, const char *mem struct member *cur; if ((cur = ao2_alloc(sizeof(*cur), NULL))) { + cur->ignorebusy = 1; cur->penalty = penalty; cur->paused = paused; ast_copy_string(cur->interface, interface, sizeof(cur->interface)); diff --git a/configs/queues.conf.sample b/configs/queues.conf.sample index 4142faaf72..78a5c3d3eb 100644 --- a/configs/queues.conf.sample +++ b/configs/queues.conf.sample @@ -68,7 +68,7 @@ monitor-type = MixMonitor ; app_queue allows calls to members in a "Unknown" state to be treated as available ; setting check_state_unknown = yes will cause app_queue to query the channel driver ; to better determine the state this only applies to queues with ringinuse or ignorebusy -; set appropriately. +; set appropriately. ; ;check_state_unknown = no ; @@ -481,11 +481,10 @@ monitor-type = MixMonitor ; ; If you want the queue to avoid sending calls to members whose devices are ; known to be 'in use' (via the channel driver supporting that device state) -; uncomment this option. (Note: only the SIP channel driver currently is able -; to report 'in use'.) -; -; A member can have the ignorebusy flag set or unset when ringinuse is set to -; allow a per member control. +; uncomment this option. This can be controlled on a per member basis by +; setting 'ignorebusy' in the QUEUE_MEMBER function. (Note: only the SIP +; channel driver currently is able to report 'in use'.) (Note: if this option +; is set to 'no' it will override the per-member 'ignorebusy' setting. ; ; ringinuse = no ;