Minor refactor

This commit is contained in:
2023-12-04 08:51:46 +01:00
parent 0799dc6a4d
commit f7976d3738
3 changed files with 48 additions and 39 deletions

View File

@@ -3,7 +3,7 @@ const commandLineArgs = require("command-line-args");
const commandLineUsage = require("command-line-usage");
const NanoTimer = require("nanotimer");
const { createBaseLogger, createSessionLogger } = require("./logger");
const { verifyDefaults, verifyExists } = require("./utils");
const { verifyDefaults, verifyExists, sendPdu } = require("./utils");
const { centerOptions } = require("./cliOptions");
const crypto = require("crypto");
const { MetricManager } = require("./metrics/metricManager");
@@ -57,23 +57,22 @@ function startInterval(session, sessionLogger, rxMetrics) {
sendTimer.clearInterval();
} else if (inFlight < options.window) {
sessionLogger.info(`Sending message ${sent + 1}/${options.messagecount}`);
session.deliver_sm(
{
const pdu = new smpp.PDU("deliver_sm", {
source_addr: options.source,
destination_addr: options.destination,
short_message: options.message,
},
function (pdu) {
});
sendPdu(session, pdu).then(resp => {
inFlight--;
if (pdu.command_status === 0) {
sessionLogger.info(`Received response with id ${pdu.message_id}`);
sessionLogger.info(`Received response with id ${resp.message_id}`);
success++;
} else {
sessionLogger.warn(`Message failed with id ${pdu.message_id}`);
}).catch(resp => {
inFlight--;
sessionLogger.warn(`Message failed with id ${resp.message_id}`);
failed++;
}
}
);
});
rxMetrics.AddEvent();
sent++;
inFlight++;

View File

@@ -3,7 +3,7 @@ const commandLineArgs = require("command-line-args");
const commandLineUsage = require("command-line-usage");
const NanoTimer = require("nanotimer");
const { createBaseLogger, createSessionLogger } = require("./logger");
const { verifyDefaults, verifyExists } = require("./utils");
const { verifyDefaults, verifyExists, sendPdu } = require("./utils");
const { clientOptions } = require("./cliOptions");
const { MetricManager } = require("./metrics/metricManager");
@@ -58,26 +58,24 @@ function startInterval(session, sessionLogger, metrics) {
metrics.progress.bar.increment();
metrics.window.bar.increment();
}
session.submit_sm(
{
const pdu = new smpp.PDU("submit_sm", {
source_addr: options.source,
destination_addr: options.destination,
short_message: options.message,
},
function (pdu) {
if (metrics.window?.bar) {
metrics.window.bar.update(metrics.window.bar.value - 1);
}
});
sendPdu(session, pdu)
.then((resp) => {
inFlight--;
if (pdu.command_status === 0) {
sessionLogger.info(`Received response with id ${pdu.message_id}`);
sessionLogger.info(`Received response with id ${resp.message_id}`);
success++;
} else {
sessionLogger.warn(`Message failed with id ${pdu.message_id}`);
})
.catch((resp) => {
inFlight--;
sessionLogger.warn(`Message failed with id ${resp.message_id}`);
failed++;
}
}
);
});
if (metrics.txMetrics) {
metrics.txMetrics.AddEvent();
}

View File

@@ -14,4 +14,16 @@ function verifyDefaults(options, definitions) {
}
}
module.exports = { verifyDefaults, verifyExists };
async function sendPdu(session, pdu) {
return new Promise((resolve, reject) => {
session.send(pdu, (respPdu) => {
if (respPdu.command_status === 0) {
resolve(respPdu);
} else {
reject(respPdu);
}
});
});
}
module.exports = { verifyDefaults, verifyExists, sendPdu };