From c178df0b390a56f97b3c86f3e1a41edef4a83f39 Mon Sep 17 00:00:00 2001 From: surajshivakumar Date: Fri, 16 Aug 2024 21:54:56 -0400 Subject: [PATCH] recent-calls single call record pull --- lib/routes/api/recent-calls.js | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) diff --git a/lib/routes/api/recent-calls.js b/lib/routes/api/recent-calls.js index edb5315..feda0ad 100644 --- a/lib/routes/api/recent-calls.js +++ b/lib/routes/api/recent-calls.js @@ -165,6 +165,31 @@ router.get('/:call_sid/record/:year/:month/:day/:format', async(req, res) => { } }); +router.get('/call/:call_sid', async(req, res) => { + const { account_sid, call_sid } = req.params; + const { logger, queryCdrs } = req.app.locals; + + try { + logger.debug('GET /call/:call_sid'); + const account_sid = parseAccountSid(req.originalUrl); + const data = await queryCdrs({ + account_sid, + filter: call_sid, + page: 1, + page_size: 1 + }); + + if (!data || data.data.length === 0) { + return res.status(404).json({ message: 'Call not found' }); + } + + res.status(200).json(data.data[0]); + } catch (err) { + logger.error({ err }, `Error retrieving call information for account_sid: ${account_sid}, call_sid: ${call_sid}`); + res.sendStatus(500); + } +}); + router.delete('/:call_sid/record/:year/:month/:day/:format', async(req, res) => { const {logger} = req.app.locals; const {call_sid, year, month, day, format} = req.params;