From cf0b392c99afd1f42898b45a9602c254e6b6162b Mon Sep 17 00:00:00 2001 From: Anton Voylenko Date: Tue, 17 Mar 2026 13:30:21 +0200 Subject: [PATCH] Append sip realm for rest dial (#1525) * feat: append sip realm for rest dial * fix: check account sip realm --- lib/http-routes/api/create-call.js | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/lib/http-routes/api/create-call.js b/lib/http-routes/api/create-call.js index a46e3c9c..e61c8643 100644 --- a/lib/http-routes/api/create-call.js +++ b/lib/http-routes/api/create-call.js @@ -18,6 +18,7 @@ const { createCallSchema, customSanitizeFunction } = require('../schemas/create- const { selectHostPort } = require('../../utils/network'); const { JAMBONES_DIAL_SBC_FOR_REGISTERED_USER } = require('../../config'); const { createMediaEndpoint } = require('../../utils/media-endpoint'); +const { DbErrorBadRequest } = require('../utils/errors'); const removeNullProperties = (obj) => (Object.keys(obj).forEach((key) => obj[key] === null && delete obj[key]), obj); const removeNulls = (req, res, next) => { @@ -122,8 +123,16 @@ router.post('/', } break; case 'user': - uri = `sip:${target.name}`; - to = target.name; + let targetName = target.name; + if (!targetName.includes('@')) { + if (!account.sip_realm) { + throw new DbErrorBadRequest('no sip realm configured for account'); + } + logger.debug(`appending sip realm ${account.sip_realm} to target name ${targetName}`); + targetName = `${targetName}@${account.sip_realm}`; + } + uri = `sip:${targetName}`; + to = targetName; if (target.overrideTo) { Object.assign(opts.headers, { 'X-Override-To': target.overrideTo