diff --git a/lib/call-session.js b/lib/call-session.js index 355e174..2bcaecb 100644 --- a/lib/call-session.js +++ b/lib/call-session.js @@ -505,17 +505,21 @@ class CallSession extends Emitter { } else { const uri = parseUri(this.req.uri); + /* RFC 3261 8.1.1.8: a sips Request-URI requires a sips Contact */ + const scheme = uri.scheme === 'sips' ? 'sips' : 'sip'; hdrs = { ...hdrs, 'From': createBLegFromHeader({ logger: this.logger, req: this.req, + scheme, transport: uri.params.transport, ...(private_network && {host: this.privateSipAddress}) }), 'Contact': createBLegFromHeader({ logger: this.logger, req: this.req, + scheme, transport: uri.params.transport, ...(private_network && {host: this.privateSipAddress}) })