mirror of
https://github.com/jambonz/sbc-sip-sidecar.git
synced 2026-10-04 02:04:20 +00:00
Merge pull request #25 from jambonz/#24
feat: update tls and wss port for sbc-addresses
This commit is contained in:
@@ -94,22 +94,43 @@ srf.on('connect', (err, hp) => {
|
|||||||
logger.info(`connected to drachtio listening on ${hp}`);
|
logger.info(`connected to drachtio listening on ${hp}`);
|
||||||
|
|
||||||
// Add SBC Public IP to Database
|
// Add SBC Public IP to Database
|
||||||
|
const map = new Map();
|
||||||
const hostports = hp.split(',');
|
const hostports = hp.split(',');
|
||||||
for (const hp of hostports) {
|
for (const hp of hostports) {
|
||||||
const arr = /^(.*)\/(.*):(\d+)$/.exec(hp);
|
const arr = /^(.*)\/(.*):(\d+)$/.exec(hp);
|
||||||
if (arr && 'udp' === arr[1]) {
|
if (arr) {
|
||||||
logger.info(`adding sbc public address to database: ${arr[2]}`);
|
const ipv4 = arr[2];
|
||||||
srf.locals.sbcPublicIpAddress = `${arr[2]}:${arr[3]}`;
|
const port = arr[3];
|
||||||
addSbcAddress(arr[2]);
|
const addr = map.get(ipv4) || {ipv4};
|
||||||
cleanSbcAddresses();
|
switch (arr[1]) {
|
||||||
// keep alive for this SBC
|
case 'udp':
|
||||||
setTimeout(() => {
|
srf.locals.sbcPublicIpAddress = `${ipv4}:${port}`;
|
||||||
addSbcAddress(arr[2]);
|
map.set(ipv4, {...addr, port: port});
|
||||||
cleanSbcAddresses();
|
break;
|
||||||
}, interval);
|
case 'tls':
|
||||||
|
map.set(ipv4, {...addr, tls_port: port});
|
||||||
|
break;
|
||||||
|
case 'wss':
|
||||||
|
map.set(ipv4, {...addr, wss_port: port});
|
||||||
|
break;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
map.forEach((addr) => {
|
||||||
|
addSbcAddress(addr.ipv4, addr.port, addr.tls_port, addr.wss_port);
|
||||||
|
// keep alive for this SBC
|
||||||
|
setTimeout(() => {
|
||||||
|
addSbcAddress(addr.ipv4, addr.port, addr.tls_port, addr.wss_port);
|
||||||
|
}, interval);
|
||||||
|
});
|
||||||
|
|
||||||
|
// first start up, clean sbc address
|
||||||
|
cleanSbcAddresses();
|
||||||
|
setTimeout(() => {
|
||||||
|
cleanSbcAddresses();
|
||||||
|
}, interval);
|
||||||
|
|
||||||
/* start regbot */
|
/* start regbot */
|
||||||
require('./lib/sip-trunk-register')(logger, srf);
|
require('./lib/sip-trunk-register')(logger, srf);
|
||||||
});
|
});
|
||||||
|
|||||||
Reference in New Issue
Block a user