diff --git a/lib/modem.js b/lib/modem.js index 31b4e83..1c32877 100644 --- a/lib/modem.js +++ b/lib/modem.js @@ -14,8 +14,10 @@ const mutex = require('./mutex'); const common = require('./common'); const sms = require('./sms'); -let imsi; -let signalStrength; +const modemInfo = { + imsi: null, + signalStrength: null, +}; const port = new SerialPort(config.modem.device, { baudRate: 115200 }); @@ -82,8 +84,8 @@ parserReadLine.on('data', (data) => { logger.verbose(`* IN: ${data}`); if (data) { if (data.indexOf('+CSQ: ') === 0) { - signalStrength = common.extractValueFromReadLineData(data); - logger.info(`Signal strength: ${signalStrength}`); + modemInfo.signalStrength = common.extractValueFromReadLineData(data); + logger.info(`Signal strength: ${modemInfo.signalStrength}`); } else if (data.indexOf('+CMTI: ') === 0) { onIncomingSMS(data); } @@ -99,8 +101,8 @@ async function readIMSI() { const parserReadIMSI = new ParserDelimiter({ delimiter: DELIMITER_WAIT_FOR_OK }); parserReadIMSI.on('data', (data) => { if (data) { - imsi = data.toString().trim(); - logger.info(`IMSI: ${imsi}`); + modemInfo.imsi = data.toString().trim(); + logger.info(`IMSI: ${modemInfo.imsi}`); } mutex.releaseLockWaitForOK(); @@ -175,4 +177,5 @@ function init() { init(); +exports.modemInfo = modemInfo; exports.sendSMS = sendSMS;