[asterisk-dev] PJSIP REFER question

Dan Cropp dan at amtelco.com
Thu Apr 4 13:53:13 CDT 2019

For a PSJIP configurable setting on whether to include the norefersub or not, is it acceptable to use a setting in the pjsip.conf under the global type section?

Ideally this would be a per endpoint setting but we're having trouble with that because it seems the capability is loaded in the res_pjsip_refer load_module function.
Since Cisco doesn't adhere to the standard, we're concerned they may detect norefersub Supported in other packets and decide to process it incorrectly if it's only excluded from the REFER packet.
Would it even be possible to toggle the Supported capabilities for endpoints based on the command being sent?


-----Original Message-----
From: asterisk-dev <asterisk-dev-bounces at lists.digium.com> On Behalf Of Joshua C. Colp
Sent: Thursday, March 28, 2019 4:18 PM
To: asterisk-dev at lists.digium.com
Subject: Re: [asterisk-dev] PJSIP REFER question

On Thu, Mar 28, 2019, at 5:47 PM, Dan Cropp wrote:
> Joshua helped answer some questions on the asterisk-users list.
> With Cisco switch, we’ve encountered a problem where Cisco does not 
> send NOTIFY subscription updates if the Supported header includes 
> norefersub.
> Cisco is not handling this correctly, but getting Cisco (or any of the 
> large switch vendors) to fix their bugs is impossible.
> In Asterisk, chan_sip we are able to perform REFER (transfer) with 
> Cisco. SIP debugging shows chan_sip does not include the norefersub.
> The easy solution is for us to keep using chan_sip and not PJSIP. 
> However, PJSIP is much better overall and chan_sip is basically 
> deprecated.
> We really want to stop using chan_sip for some systems, but we can’t 
> without PJSIP handling all these.
> I’m wondering if any asterisk developers can provide more insight on 
> including the norefersub in the res_pjsip_refer when the load module?
> Is this setting really needed?

According to the RFC[1] it's supposed to exist to indicate support for the functionality in the first place. Removing it would essentially be removing support for suppressing it most likely. It ultimately depends on the remote implementation as to whether they take it into account.
> If setting needs to remain, how difficult would it be to write code to 
> make this setting configurable?

I don't think it would be too difficult to do such a thing, but that's only a guess.
> In our use case, we need to REFER calls to Cisco endpoint. However, 
> Cisco will not REFER calls to us.

[1] https://www.ietf.org/rfc/rfc4488.txt

Joshua C. Colp
Digium - A Sangoma Company | Senior Software Developer
445 Jan Davis Drive NW - Huntsville, AL 35806 - US Check us out at: www.digium.com & www.asterisk.org

-- Bandwidth and Colocation Provided by http://www.api-digital.com --

asterisk-dev mailing list
To UNSUBSCRIBE or update options visit:

More information about the asterisk-dev mailing list