PJSIP versus Channel SIP Differences


#1

I’m trying to migrate all of our endpoints over to PJSIP. We have been employing Device and User mode (aka Hot-desking) for over a decade. This post is not about Device and User mode. Our Company’s position is that we absolutely need this functionality and any phone system that does not have hot-desking is not a viable solution for us.

This post is about the differences between CHAN SIP and PJSIP. When devices are configured with CHAN SIP and an endpoint “Rejects” a call, the caller is immediately routed to voicemail, AND all other devices that the User is logged into stop ringing. This is the way it has functioned since day one.

In my case, my User is logged into a softphone on my cell, a softphone on my desktop, a desk phone on my desk, and potentially another desk phone where I may be working temporarily.

When a single Device is configured with PJSIP, and that device rejects a call, all other Devices that a User is logged into continue to ring. This is quite annoying when you’re already on a call because even though you rejected the second call, you cannot continue your conversation with the original caller because you cannot hear over all of your devices that are still ringing.

“Rejecting” a call should do just that. The current PJSIP behavior is to IGNORE the call. Ignore is a separate and distinct function. Ignore should prevent the endpoint that is ignoring the call from ringing, but the call should continue to ring on all other Devices/endpoints.


(Joshua C. Colp) #2

This isn’t actually PJSIP behavior itself, it’s Dial behavior - the same as if Asterisk had been told to dial two chan_sip devices. That’s what having multiple registered devices does when dialing - the Dial application dials each of them. If one rejects, the other continues to ring. There’s no option or functionality in Asterisk to change this behavior, it’s been brought up once or twice over the past 6 years to make an option that I can recall but not something anyone has implemented.