diff --git a/bin/smstools-eventhandler.js b/bin/smstools-eventhandler.js index c4929dc..6b8c1e3 100755 --- a/bin/smstools-eventhandler.js +++ b/bin/smstools-eventhandler.js @@ -10,6 +10,7 @@ const logger = require('komodo-sdk/logger'); const handlerReceived = require('../lib/smstools-handler/received'); const handlerSent = require('../lib/smstools-handler/sent'); +const handlerFailed = require('../lib/smstools-handler/failed'); async function main() { const eventType = (argv._ && argv._[0]) || null; @@ -23,6 +24,10 @@ async function main() { handlerReceived(msgFilename); } else if (eventType === 'SENT') { handlerSent(msgFilename); + } else if (eventType === 'FAILED') { + handlerFailed(msgFilename); + } else { + logger.verbose(`Ignoring event ${eventType}`, { eventType, msgFilename }); } } diff --git a/lib/smstools-handler/failed.js b/lib/smstools-handler/failed.js new file mode 100644 index 0000000..ec2f8d9 --- /dev/null +++ b/lib/smstools-handler/failed.js @@ -0,0 +1,15 @@ +const fs = require('fs'); +const logger = require('komodo-sdk/logger'); + +const eventType = 'FAILED'; + +module.exports = async (msgFilename) => { + const msg = await fs.promises.readFile(msgFilename); + + if (!msg) { + logger.warn('Sent failed detected but we can not read message file', { eventType, msgFile: msgFilename }); + return; + } + + logger.warn('Sent failed detected', { eventType, msg }); +};