modems.js 1011 Bytes
"use strict";

function getModemConfig(modemName, modemsConfig) {
    if (!modemsConfig) return;
    if (!modemName) return;
    if (typeof modemName === 'string' && !modemName.trim()) return;

    return modemsConfig[modemName.trim()];    
}

function getModemUrl(modemName, modemsConfig) {
    const modemConfig = getModemConfig(modemName, modemsConfig);
    return modemConfig ? modemConfig.url : null;
}

function getModemApikey(modemName, modemsConfig) {
    const modemConfig = getModemConfig(modemName, modemsConfig);
    return modemConfig ? modemConfig.apikey : null;
}

function removeSuffixFromNumber(number, config) {
    if (!config) {
        config = {};
    }

    const suffix = config && config.number_suffix ? config.number_suffix : '@.*';
    const re = new RegExp(suffix + '$');
    return number.replace(re, '');
}

exports.getModemConfig = getModemConfig;
exports.getModemUrl = getModemUrl;
exports.getModemApikey = getModemApikey;
exports.removeSuffixFromNumber = removeSuffixFromNumber;