-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviewboard.asterisk.org/r/3607/
-----------------------------------------------------------

Review request for Asterisk Developers.


Bugs: ASTERISK-23823
    https://issues.asterisk.org/jira/browse/ASTERISK-23823


Repository: Asterisk


Description
-------

This patch gives the ability (optional) to keep queuerules in realtime 
(important to notice that rules would be loaded from both realtime and file too)
To use add to queuerules.conf general section with option to turn the relatime 
on (note that after patch there is no option to call rule "general" as it is 
reserved for queuerules settings):

[general]
realtime_rules = yes

and add the realtime setting to extconfig.conf, for example in my case it's 
mysql and it looks like(will attach the .sql with create for table):

queue_rules => mysql,asterisk,queue_rules

in table as you can see you need to specify rule name and as in regular rules 
you can use relative setings for min and max (with "-" and "+", e.g. "+100")
if one of the rule parameters is wrong it would be ignored, basically 
validation is like from file.
here is the the example of table context as an example:

rule_name, time, min_penalty, max_penalty
'default', '10', '20', '30'
'test2', '20', '30', '55'
'test2', '25', '-11', '+1111'
'test2', '400', '112', '333'
'test3', '0', '4564', '46546'
'test_rule', '40', '15', '50'

which would result in :

Rule: default
        After 10 seconds, adjust QUEUE_MAX_PENALTY to 30 and adjust 
QUEUE_MIN_PENALTY to 20
Rule: test2
        After 20 seconds, adjust QUEUE_MAX_PENALTY to 55 and adjust 
QUEUE_MIN_PENALTY to 30
        After 25 seconds, adjust QUEUE_MAX_PENALTY by 1111 and adjust 
QUEUE_MIN_PENALTY by -11
        After 400 seconds, adjust QUEUE_MAX_PENALTY to 333 and adjust 
QUEUE_MIN_PENALTY to 112
Rule: test3
        After 0 seconds, adjust QUEUE_MAX_PENALTY to 46546 and adjust 
QUEUE_MIN_PENALTY to 4564
Rule: test_rule
        After 40 seconds, adjust QUEUE_MAX_PENALTY to 50 and adjust 
QUEUE_MIN_PENALTY to 15


If you use realtime, the rules will be always reloaded (no cache option here), 
in other words it would delete all rules and re-add them from realtime and 
file. It's important to understand that with realtime on it would reload rules 
from file doesn't matter if file was or was not change.
While with the option off it would act exactly like it was before patch (file 
would not be reloaded if it was not changed)


Diffs
-----

  trunk/apps/app_queue.c 415442 

Diff: https://reviewboard.asterisk.org/r/3607/diff/


Testing
-------

Currently the tests were made on development machine.


Thanks,

Michael K.

-- 
_____________________________________________________________________
-- Bandwidth and Colocation Provided by http://www.api-digital.com --

asterisk-dev mailing list
To UNSUBSCRIBE or update options visit:
   http://lists.digium.com/mailman/listinfo/asterisk-dev

Reply via email to