transport.js
1 KB
const fs = require('fs');
const config = require('komodo-sdk/config');
const logger = require('komodo-sdk/logger');
const uniqid = require('uniqid');
async function send(partner, msg) {
if (typeof partner !== 'string' || typeof msg !== 'string') return;
if (!partner.trim() || !msg.trim()) return;
const destination = partner.trim().replace(/^0/, '').replace(/^\+/);
const msgFileContent = `
To: ${destination}
${msg.trim()}
`.trim();
const dir = config.outbox_dir || '/var/spool/sms/outgoing';
const filename = `${dir}/komodo.${uniqid()}`;
fs.exists(dir, (isExists) => {
if (!isExists) {
logger.warn('Outbox dir is not exists', { dir });
return;
}
logger.info('Writing outbox', { filename });
try {
fs.promises.writeFile(filename, msgFileContent, { mode: 0o660 });
} catch (e) {
logger.warn('Exception on writing outbox', { filename, err: e.toString() });
}
});
}
exports.send = send;