From d220733deaa53d64d5b555c15b5a1ac733c9c51f Mon Sep 17 00:00:00 2001 From: Hoan Luu Huu <110280845+xquanluu@users.noreply.github.com> Date: Sat, 9 Sep 2023 07:02:20 +0700 Subject: [PATCH] add JAMBONZ_DISABLE_DIAL_PAI_HEADER env var (#460) --- lib/config.js | 4 +++- lib/tasks/dial.js | 5 +++-- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/lib/config.js b/lib/config.js index 428e5466..51808374 100644 --- a/lib/config.js +++ b/lib/config.js @@ -147,6 +147,7 @@ const JAMBONES_REDIS_SENTINELS = process.env.JAMBONES_REDIS_SENTINELS ? { const JAMBONZ_RECORD_WS_BASE_URL = process.env.JAMBONZ_RECORD_WS_BASE_URL; const JAMBONZ_RECORD_WS_USERNAME = process.env.JAMBONZ_RECORD_WS_USERNAME; const JAMBONZ_RECORD_WS_PASSWORD = process.env.JAMBONZ_RECORD_WS_PASSWORD; +const JAMBONZ_DISABLE_DIAL_PAI_HEADER = process.env.JAMBONZ_DISABLE_DIAL_PAI_HEADER || false; module.exports = { JAMBONES_MYSQL_HOST, @@ -225,5 +226,6 @@ module.exports = { DEEPGRAM_API_KEY, JAMBONZ_RECORD_WS_BASE_URL, JAMBONZ_RECORD_WS_USERNAME, - JAMBONZ_RECORD_WS_PASSWORD + JAMBONZ_RECORD_WS_PASSWORD, + JAMBONZ_DISABLE_DIAL_PAI_HEADER }; diff --git a/lib/tasks/dial.js b/lib/tasks/dial.js index 5e0c6f77..869ba47a 100644 --- a/lib/tasks/dial.js +++ b/lib/tasks/dial.js @@ -16,7 +16,7 @@ const ConfirmCallSession = require('../session/confirm-call-session'); const dbUtils = require('../utils/db-utils'); const debug = require('debug')('jambonz:feature-server'); const {parseUri} = require('drachtio-srf'); -const {ANCHOR_MEDIA_ALWAYS} = require('../config'); +const {ANCHOR_MEDIA_ALWAYS, JAMBONZ_DISABLE_DIAL_PAI_HEADER} = require('../config'); const { isOnhold } = require('../utils/sdp-utils'); const { normalizeJambones } = require('@jambonz/verb-specifications'); @@ -433,7 +433,8 @@ class TaskDial extends Task { this.headers = { 'X-Account-Sid': cs.accountSid, ...(req && req.has('X-CID') && {'X-CID': req.get('X-CID')}), - ...(req && req.has('P-Asserted-Identity') && {'P-Asserted-Identity': req.get('P-Asserted-Identity')}), + ...(req && req.has('P-Asserted-Identity') && !JAMBONZ_DISABLE_DIAL_PAI_HEADER && + {'P-Asserted-Identity': req.get('P-Asserted-Identity')}), ...(req && req.has('X-Voip-Carrier-Sid') && {'X-Voip-Carrier-Sid': req.get('X-Voip-Carrier-Sid')}), // Put headers at the end to make sure opt.headers override all default behavior. ...this.headers