Yealink T48s call forward issue

Have a strange issue with Yealink T48s phone. When setting the forwarding on the phone to forward the calls to an external number, the call always “all-circuits-busy-now&please-try-call-later” error. However, if I set the same external number with followme, it works fine. The first thought is the user didn’t enter the leading digit “9” in the forwarding number. Checked the setting and it has the leading digit. The second thought is the phone sending the original caller’s caller ID to the trunk and rejected by the SIP trunk provider. However, even I set the office caller ID and set it to force in the SIP trunk, it still not able to get through. Am I missing something here? Is this the problem in the FreePBX code or the problem in the Yealink phone firmware? Anybody has idea?

https://wiki.freepbx.org/display/SUP/Providing+Great+Debug
Paste the Asterisk log for a failed call at pastebin.freepbx.org and post the link here.

Here is the log.
https://pastebin.freepbx.org/view/c58c7cae

This is caused by your rewriting the caller ID of the original caller to something that the provider won’t accept on the outbound leg. I had warned you in your previous thread that using prefixes like this is not a good idea. If you want to keep going down this rocky road, you’ll need to remove the prefix when used as caller ID for outgoing calls. This can be done with a ‘hook’ before dialing the trunk. See

IMO a better solution is to stop rewriting the caller ID (which begins with +) and edit your Outbound Routes so a number in E.164 format is accepted.

I just don’t understand why the call is still dropping even I set the trunk to force CID. If I understand correctly, when the trunk is set to force CID, it won’t send the originated CID to the provider. I should just send the trunk CID instead, no matter who is originating the call. If the call is being forward, the receiving party should see the CID from the office instead of the original caller ID. Something is not right here.

Possibly this:
[2020-10-21 12:56:04] WARNING[878][C-000003d1]: chan_sip.c:24442 handle_response_invite: Re-invite to non-existing call leg on other UA. SIP dialog '[email protected]'. Giving up.
is related. Confirm that you have canreinvite=no for the trunks.

If that’s not it, at the Asterisk command prompt, type
sip set debug on
and paste another log of a failing call, which will now include SIP traces.

BTW, when you paste logs, be sure that expiration is set to never, so future readers can follow the thread.

Here is the debug log.

https://pastebin.freepbx.org/view/15b1dfda

Here is the debug log with a SIP Trunk by Nextiva.
https://pastebin.freepbx.org/view/a4cf93aa

Line 463: INVITE sip:[email protected] SIP/2.0
If the initial 1 is required, it likely would also be required in caller IDs passed to Nextiva, so
Line 475: Diversion: <tel:8163306441>;reason=no-answer;screen=no;privacy=off
would be problematic.

But in any case, Line 476:
P-Asserted-Identity: "SAN MARTIN CA" <sip:[email protected]>
is wrong. Nextiva presumably prioritizes this over the From header and it’s an invalid caller ID.

I set the “Generate Diversion Headers” to Yes in Advanced Settings. That seems to solved the call forwarding issue on the Spectrum trunk. However, the forwarded call only shows the Trunk CID instead of the Calling party’s CID. Is this something I can adjust in FreePBX or Spectrum needs to change setting on their end in order to show the callers CID on a forwarded call?

Sorry, I know nothing about Spectrum. As a test, change Outbound CID for your extension to a number that’s not yours and call your mobile.

If it shows up, the problem is with your forwarding logic. If not, ask Spectrum whether they allow this. If so, check the outbound INVITE for proper format.

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