Extra information on inbound calls from PJSIP trunks

I recently moved a client from one provider to another. Specifically from VoIP.ms to Twilio.

With VoIP.ms, even if I use PJSIP as my trunk, their signalling does not do anything different than if I use a SIP trunk as it relates to Caller ID.

But with Twilio, when I set up the PJSIP trunk, the caller ID as shown on the desk phones is totally different. This confused users.

PJSIP or SIP trunk with VoIP.ms


PJSIP on Twilio


What can I do about the ringing version from Twilio? Personally, I like the extra information (From Num: and Via:). The users though, do not. They want the Caller ID resolved name (I use Superfecta) on a line by itself and the number on the next line while ringing. With the extra data, that is all shoved up on one line and has to scroll.

Well considering that SIP is SIP and carriers don’t care or consider if you have Chan_SIP or Chan_PJSIP running on your PBX. If a call coming from one carrier has different headers or more headers than the other carrier it has nothing to do with your SIP driver outside if your SIP driver can support said headers.

The other thing to consider here is that the Twilio trunk has nothing to do with the call that is being sent to the phone. It’s still Asterisk -> Phone. So again, Twilio could be sending more information in their SIP messages that Asterisk is processing and passing along to the phone.

What you need to look at is what information is coming in on the Twilio call, as in what headers and values are present. Then you need to look at what is then passed from that channel to the channel calling your phone.

You can also look at the phone settings as what is displayed on the screen for CallerID can be controlled by the phone itself. It may be set to display headers that weren’t being presented before.

If the only change was a new provider, then it is obvious that said provider is sending more information.
That was not even a question.

Obviously it is coming from the provider, and Asterisk is forwarding it on through to the endpoint.

Yealink phones have a setting to control what is displayed, but this extra data messes with that information. The Via: line is always there. The From: is always prepended. No matter what the phone settings are.

Thus, I want to clean this up within Asterisk prior to shoving the call out to the phone.

Like I said you need to look at the SIP messages on the two channels. What is being passed/set on the called channel (to the phone) from the calling channel (trunk)?

I take it extension to extension calls don’t display this information?

I am guessing that Twilio is using a Diversion header in an unusual way. You can confirm this by issuing
pjsip set logger on
at the Asterisk console and making a test call.

If so, and you don’t need the ‘normal’ use of Diversion on incoming calls, you may be able to remove it by pointing the trunk context to two lines of custom dialplan that removes the header and then proceeds normally.

This topic was automatically closed 7 days after the last reply. New replies are no longer allowed.