diff --git a/lib/http-routes/api/messaging.js b/lib/http-routes/api/messaging.js index c372c0c0..4448804a 100644 --- a/lib/http-routes/api/messaging.js +++ b/lib/http-routes/api/messaging.js @@ -34,6 +34,7 @@ router.post('/:partner', async(req, res) => { carrier: req.params.partner, messageSid: app.messageSid, accountSid: app.accountSid, + serviceProviderSid: account.service_provider_sid, applicationSid: app.applicationSid, from: req.body.from, to: req.body.to, diff --git a/lib/middleware.js b/lib/middleware.js index 21df271c..18ba04cc 100644 --- a/lib/middleware.js +++ b/lib/middleware.js @@ -118,6 +118,7 @@ module.exports = function(srf, logger) { const {span} = rootSpan.startChildSpan('lookupAccountDetails'); try { req.locals.accountInfo = await lookupAccountDetails(account_sid); + req.locals.service_provider_sid = req.locals.accountInfo?.account?.service_provider_sid; span.end(); if (!req.locals.accountInfo.account.is_active) { logger.info(`Account is inactive or suspended ${account_sid}`); @@ -273,7 +274,9 @@ module.exports = function(srf, logger) { } /* retrieve the application to execute for this inbound call */ const params = Object.assign(['POST', 'WS'].includes(app.call_hook.method) ? {sip: req.msg} : {}, - req.locals.callInfo, { + req.locals.callInfo, + {service_provider_sid: req.locals.service_provider_sid}, + { defaults: { synthesizer: { vendor: app.speech_synthesis_vendor,