diff --git a/lib/modem-chooser.js b/lib/modem-chooser.js index aa5aa27..3a3cc94 100644 --- a/lib/modem-chooser.js +++ b/lib/modem-chooser.js @@ -32,38 +32,37 @@ exports.chooser = async function chooser(destination, config) { if (logger) logger.verbose('MODEM-CHOOSER: Choosing suitable senders', { destination, prefixName }); - let imsiSenders = []; + let sendersImsi = []; if (config.senders_imsi && prefixName && config.senders_imsi.prefix_names && config.senders_imsi.prefix_names[prefixName]) { - imsiSenders = filterOutCandidates(config.senders_imsi.prefix_names[prefixName]); - if (logger) logger.verbose('MODEM-CHOOSER: Try to use imsi senders by prefix name', { destination, prefixName, imsiSenders }); + sendersImsi = filterOutCandidates(config.senders_imsi.prefix_names[prefixName]); + if (logger) logger.verbose('MODEM-CHOOSER: Try to use imsi senders by prefix name', { destination, prefixName, sendersImsi, candidates: config.senders_imsi.prefix_names[prefixName] }); } - if (!imsiSenders.length && config.senders_imsi && config.senders_imsi.unknown_prefix) { - imsiSenders = filterOutCandidates(config.senders_imsi.unknown_prefix); - if (logger) logger.verbose('MODEM-CHOOSER: Try to use senders for unknown prefix', { destination, prefixName, imsiSenders }); + if (!sendersImsi.length && config.senders_imsi && config.senders_imsi.unknown_prefix) { + sendersImsi = filterOutCandidates(config.senders_imsi.unknown_prefix); + if (logger) logger.verbose('MODEM-CHOOSER: Try to use senders for unknown prefix', { destination, prefixName, sendersImsi, candidates: config.senders_imsi.unknown_prefix }); } - if (!imsiSenders.length) { - imsiSenders = filterOutCandidates([ await partnerLastSeen.get(destination) ]); - if (logger) logger.verbose('MODEM-CHOOSER: Try to use sender by last seen', { destination, prefixName, imsiSenders }); + if (!sendersImsi.length) { + sendersImsi = filterOutCandidates([ await partnerLastSeen.get(destination) ]); + if (logger) logger.verbose('MODEM-CHOOSER: Try to use sender by last seen', { destination, prefixName, sendersImsi }); } - if (!imsiSenders.length && config.senders_imsi && config.senders_imsi.default) { - imsiSenders = filterOutCandidates(config.senders_imsi.default); - if (logger) logger.verbose('MODEM-CHOOSER: Try to use default senders', { destination, prefixName, imsiSenders }); + if (!sendersImsi.length && config.senders_imsi && config.senders_imsi.default) { + sendersImsi = filterOutCandidates(config.senders_imsi.default); + if (logger) logger.verbose('MODEM-CHOOSER: Try to use default senders', { destination, prefixName, sendersImsi, candidates: config.senders_imsi.default }); } - - if (!imsiSenders.length) { + if (!sendersImsi.length) { if (logger) logger.warn('MODEM-CHOOSER: No suitable sender found', { destination, prefixName }); return; } - const count = imsiSenders.length; + const count = sendersImsi.length; const idx = Math.round(Math.random() * (count - 1)); - const imsiChoosed = imsiSenders[idx]; + const imsiChoosed = sendersImsi[idx]; - if (logger) logger.verbose(`MODEM-CHOOSER: gonna use modem with IMSI ${imsiChoosed}`, { destination, prefixName, imsiSenders }); + if (logger) logger.verbose(`MODEM-CHOOSER: gonna use modem with IMSI ${imsiChoosed}`, { destination, prefixName, imsiSenders: sendersImsi }); return imsiChoosed; } \ No newline at end of file