diff --git a/lib/call-session.js b/lib/call-session.js index e930ad0..c28041f 100644 --- a/lib/call-session.js +++ b/lib/call-session.js @@ -13,6 +13,7 @@ const createBLegFromHeader = ({ logger, req, host, + fromUser, register_from_domain, transport, teams = false, @@ -22,9 +23,9 @@ const createBLegFromHeader = ({ const uri = parseUri(from.uri); const transportParam = transport ? `;transport=${transport}` : ''; - logger.debug({from, uri, host, scheme, transport, teams}, 'createBLegFromHeader'); + logger.debug({from, fromUser, uri, host, scheme, transport, teams}, 'createBLegFromHeader'); /* user */ - const user = req.get('X-Preferred-From-User') || uri.user || 'anonymous'; + const user = fromUser || req.get('X-Preferred-From-User') || uri.user || 'anonymous'; /* host */ if (!host) { @@ -456,6 +457,7 @@ class CallSession extends Emitter { Contact: createBLegFromHeader({ logger: this.logger, req: this.req, + ...(gw.auth?.username && {fromUser: gw.auth?.username}), scheme, transport, ...(private_network && {host: this.privateSipAddress})