Browse Source

fix ds_group assignment & reorder

drop_requests
lazedo 8 years ago
committed by GitHub
parent
commit
4f91d228f1
No known key found for this signature in database GPG Key ID: 4AEE18F83AFDEB23
1 changed files with 9 additions and 11 deletions
  1. +9
    -11
      kamailio/dispatcher-role.cfg

+ 9
- 11
kamailio/dispatcher-role.cfg View File

@ -85,18 +85,16 @@ route[DISPATCHER_FIND_ROUTES]
#!import_file "dispatcher-network-find.cfg"
$var(ds_group) = $var(ds_primary_group);
if (!ds_select_dst("$var(ds_primary_group)", "0") || $(avp(ds_dst)[0]) == $null) {
# if we selected from primary group, try again in backup group
if ($var(ds_primary_group) == 1) {
if (!ds_select_dst("$var(ds_backup_group)", "0")) {
xlog("L_WARN", "$ci|end|no servers available in primary or backup group\n");
sl_send_reply("480", "All servers busy");
exit;
}
# we selected from primary group, try again in backup group
if (!ds_select_dst("$var(ds_backup_group)", "0") || $(avp(ds_dst)[0]) == $null) {
xlog("L_WARN", "$ci|end|no servers available in primary or backup group\n");
sl_send_reply("480", "All servers busy");
exit;
} else {
xlog("L_INFO", "$ci|end|no servers available in group $var(ds_primary_group)\n");
sl_send_reply("480", "All servers busy");
exit;
$var(ds_group) = $var(ds_backup_group);
}
}
@ -132,7 +130,7 @@ route[DISPATCHER_REORDER_ROUTES]
$var(i) = $var(i) + 1;
}
if (!$var(found) && $var(ds_group) == 1 && ds_select_dst("2", "0")) {
if (!$var(found) && $var(ds_group) == $var(ds_primary_group) && ds_select_dst("$var(ds_backup_group)", "0")) {
$var(i) = 0;
while($(avp(ds_dst)[$var(i)]) != $null) {
if($(avp(ds_dst)[$var(i)]) == $var(prefered_route)) {


Loading…
Cancel
Save