mirror of
https://github.com/jambonz/sbc-sip-sidecar.git
synced 2026-05-06 08:47:09 +00:00
initial delay regbot (#80)
* initial delay regbot * fix review comment * fix review comment
This commit is contained in:
+3
-1
@@ -30,6 +30,7 @@ const JAMBONES_CLUSTER_ID = process.env.JAMBONES_CLUSTER_ID ;
|
|||||||
const JAMBONES_REGBOT_CONTACT_USE_IP = process.env.JAMBONES_REGBOT_CONTACT_USE_IP;
|
const JAMBONES_REGBOT_CONTACT_USE_IP = process.env.JAMBONES_REGBOT_CONTACT_USE_IP;
|
||||||
const JAMBONES_REGBOT_MIN_EXPIRES_INTERVAL = process.env.JAMBONES_REGBOT_MIN_EXPIRES_INTERVAL;
|
const JAMBONES_REGBOT_MIN_EXPIRES_INTERVAL = process.env.JAMBONES_REGBOT_MIN_EXPIRES_INTERVAL;
|
||||||
const JAMBONES_REGBOT_DEFAULT_EXPIRES_INTERVAL = process.env.JAMBONES_REGBOT_DEFAULT_EXPIRES_INTERVAL;
|
const JAMBONES_REGBOT_DEFAULT_EXPIRES_INTERVAL = process.env.JAMBONES_REGBOT_DEFAULT_EXPIRES_INTERVAL;
|
||||||
|
const JAMBONES_REGBOT_INITIAL_DELAY_MS = process.env.JAMBONES_REGBOT_INITIAL_DELAY_MS || 250;
|
||||||
|
|
||||||
module.exports = {
|
module.exports = {
|
||||||
JAMBONES_MYSQL_HOST,
|
JAMBONES_MYSQL_HOST,
|
||||||
@@ -55,5 +56,6 @@ module.exports = {
|
|||||||
JAMBONES_CLUSTER_ID,
|
JAMBONES_CLUSTER_ID,
|
||||||
JAMBONES_REGBOT_CONTACT_USE_IP,
|
JAMBONES_REGBOT_CONTACT_USE_IP,
|
||||||
JAMBONES_REGBOT_MIN_EXPIRES_INTERVAL,
|
JAMBONES_REGBOT_MIN_EXPIRES_INTERVAL,
|
||||||
JAMBONES_REGBOT_DEFAULT_EXPIRES_INTERVAL
|
JAMBONES_REGBOT_DEFAULT_EXPIRES_INTERVAL,
|
||||||
|
JAMBONES_REGBOT_INITIAL_DELAY_MS
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -1,9 +1,11 @@
|
|||||||
const debug = require('debug')('jambonz:sbc-registrar');
|
const debug = require('debug')('jambonz:sbc-registrar');
|
||||||
const {
|
const {
|
||||||
JAMBONES_CLUSTER_ID,
|
JAMBONES_CLUSTER_ID,
|
||||||
|
JAMBONES_REGBOT_INITIAL_DELAY_MS,
|
||||||
} = require('./config');
|
} = require('./config');
|
||||||
const short = require('short-uuid');
|
const short = require('short-uuid');
|
||||||
const Regbot = require('./regbot');
|
const Regbot = require('./regbot');
|
||||||
|
const { sleepFor } = require('./utils');
|
||||||
|
|
||||||
const MAX_INITIAL_DELAY = 15;
|
const MAX_INITIAL_DELAY = 15;
|
||||||
const REGBOT_STATUS_CHECK_INTERVAL = 60;
|
const REGBOT_STATUS_CHECK_INTERVAL = 60;
|
||||||
@@ -185,6 +187,8 @@ const updateCarrierRegbots = async(logger, srf) => {
|
|||||||
use_public_ip_in_contact: gw.carrier.register_public_ip_in_contact
|
use_public_ip_in_contact: gw.carrier.register_public_ip_in_contact
|
||||||
});
|
});
|
||||||
regbots.push(rb);
|
regbots.push(rb);
|
||||||
|
// stagger the start of the regbots
|
||||||
|
await sleepFor(JAMBONES_REGBOT_INITIAL_DELAY_MS);
|
||||||
rb.start(srf);
|
rb.start(srf);
|
||||||
} catch (err) {
|
} catch (err) {
|
||||||
const { updateVoipCarriersRegisterStatus } = srf.locals.dbHelpers;
|
const { updateVoipCarriersRegisterStatus } = srf.locals.dbHelpers;
|
||||||
|
|||||||
+4
-1
@@ -52,11 +52,14 @@ function isValidDomainOrIP(input) {
|
|||||||
return false; // Invalid input
|
return false; // Invalid input
|
||||||
}
|
}
|
||||||
|
|
||||||
|
const sleepFor = async(ms) => new Promise((resolve) => setTimeout(resolve, ms));
|
||||||
|
|
||||||
module.exports = {
|
module.exports = {
|
||||||
isUacBehindNat,
|
isUacBehindNat,
|
||||||
getSipProtocol,
|
getSipProtocol,
|
||||||
addSipGatewayToBlacklist,
|
addSipGatewayToBlacklist,
|
||||||
NAT_EXPIRES: 30,
|
NAT_EXPIRES: 30,
|
||||||
isValidIPv4,
|
isValidIPv4,
|
||||||
isValidDomainOrIP
|
isValidDomainOrIP,
|
||||||
|
sleepFor
|
||||||
};
|
};
|
||||||
|
|||||||
Reference in New Issue
Block a user