mirror of
https://github.com/asterisk/asterisk.git
synced 2025-10-03 11:11:05 +00:00
Merge "app_voicemail: Add taskprocessor alert level options." into 13
This commit is contained in:
11
CHANGES
11
CHANGES
@@ -8,6 +8,17 @@
|
||||
===
|
||||
==============================================================================
|
||||
|
||||
------------------------------------------------------------------------------
|
||||
--- Functionality changes from Asterisk 13.11.0 to Asterisk 13.12.0 ----------
|
||||
------------------------------------------------------------------------------
|
||||
|
||||
app_voicemail
|
||||
------------------
|
||||
* Added "tps_queue_high" and "tps_queue_low" options.
|
||||
The options can modify the taskprocessor alert levels for this module.
|
||||
Additional information can be found in the sample configuration file at
|
||||
config/samples/voicemail.conf.sample.
|
||||
|
||||
------------------------------------------------------------------------------
|
||||
--- Functionality changes from Asterisk 13.10.0 to Asterisk 13.11.0 ----------
|
||||
------------------------------------------------------------------------------
|
||||
|
@@ -13453,6 +13453,8 @@ static int actual_load_config(int reload, struct ast_config *cfg, struct ast_con
|
||||
int x;
|
||||
unsigned int tmpadsi[4];
|
||||
char secretfn[PATH_MAX] = "";
|
||||
long tps_queue_low;
|
||||
long tps_queue_high;
|
||||
|
||||
#ifdef IMAP_STORAGE
|
||||
ast_copy_string(imapparentfolder, "\0", sizeof(imapparentfolder));
|
||||
@@ -14028,6 +14030,25 @@ static int actual_load_config(int reload, struct ast_config *cfg, struct ast_con
|
||||
pagerbody = ast_strdup(substitute_escapes(val));
|
||||
}
|
||||
|
||||
tps_queue_high = AST_TASKPROCESSOR_HIGH_WATER_LEVEL;
|
||||
if ((val = ast_variable_retrieve(cfg, "general", "tps_queue_high"))) {
|
||||
if (sscanf(val, "%30ld", &tps_queue_high) != 1 || tps_queue_high <= 0) {
|
||||
ast_log(AST_LOG_WARNING, "Invalid the taskprocessor high water alert trigger level '%s'\n", val);
|
||||
tps_queue_high = AST_TASKPROCESSOR_HIGH_WATER_LEVEL;
|
||||
}
|
||||
}
|
||||
tps_queue_low = -1;
|
||||
if ((val = ast_variable_retrieve(cfg, "general", "tps_queue_low"))) {
|
||||
if (sscanf(val, "%30ld", &tps_queue_low) != 1 ||
|
||||
tps_queue_low < -1 || tps_queue_high < tps_queue_low) {
|
||||
ast_log(AST_LOG_WARNING, "Invalid the taskprocessor low water clear alert level '%s'\n", val);
|
||||
tps_queue_low = -1;
|
||||
}
|
||||
}
|
||||
if (ast_taskprocessor_alert_set_levels(mwi_subscription_tps, tps_queue_low, tps_queue_high)) {
|
||||
ast_log(AST_LOG_WARNING, "Failed to set alert levels for voicemail taskprocessor.\n");
|
||||
}
|
||||
|
||||
/* load mailboxes from users.conf */
|
||||
if (ucfg) {
|
||||
for (cat = ast_category_browse(ucfg, NULL); cat ; cat = ast_category_browse(ucfg, cat)) {
|
||||
|
@@ -376,6 +376,16 @@ sendvoicemail=yes ; Allow the user to compose and send a voicemail while inside
|
||||
; defaults to being off
|
||||
; backupdeleted=100
|
||||
|
||||
; Asterisk Task Processor Queue Size
|
||||
; On heavy loaded system you may need to increase 'app_voicemail' taskprocessor queue.
|
||||
; If the taskprocessor queue size reached high water level, the alert is triggered.
|
||||
; If the alert is set then some modules (for example pjsip) slow down its production
|
||||
; until the alert is cleared.
|
||||
; The alert is cleared when taskprocessor queue size drops to the low water clear level.
|
||||
; The next options set taskprocessor queue levels for this module.
|
||||
; tps_queue_high=500 ; Taskprocessor high water alert trigger level.
|
||||
; tps_queue_low=450 ; Taskprocessor low water clear alert level.
|
||||
; The default is -1 for 90% of high water level.
|
||||
|
||||
[zonemessages]
|
||||
; Users may be located in different timezones, or may have different
|
||||
|
Reference in New Issue
Block a user