There is a similar post with this issue however there is nothing conclusive with this post. Here are the specific of my issue (i have scrambled the DID, caller id, IP addresses to protect the innocents):
I am using FreePBX 2.11.0.34 with external IP 24.1.1.1 and I have an incoming route from trunk a and DID 2021231111. A user with caller id number 2021233333 and caller name Bozo Clown calls the DID 2021231111.
If the FreePBX inbound route destination is an internal extension the correct caller id and the correct calller name will appear on the internal extension set.
If the FreePBX inbound route destination is an external extension (custom extension with Local/ext@outbound-allroutes) that routes through trunk b (with outbound caller id of 2021232222 and proxy ip 24.1.1.2) to destination number 2021234444 (the number receiving the forwarded call) then the caller ID displayed will always be the outbound caller id of trunk b and never the original caller id of 2021233333. How can one make this work. Here is a link to the appropriate logfile with the debug, verbose, dtmf and SIP debug information. I do not understand since when executing the line s@macro-outbound-callerid:15 of the dial plan the correct caller id seems to be set but I do not understand fully what takes place after this line in the call flow nor can I determine from the SIP debug information if the caller id information is correctly sent by asterisk (and potentially ignored by trunk b).
I did not include the logfile in the post as it is 500 lines long. Thanks for any insight you can provide.
I don’t think that’s what I said. You need to send the call through the SetCallerID destination for this to work.
Did you set the outbound route as an “intracompany” route? If not, the calls will probably get either the trunk of outbound route caller ID.
When I do this, I have to use a specific destination for the outbound call. The destination in the inbound route is set to “SetCallerID” and then the caller ID information is set for the ‘bounce’. I then route the call to a specific “miscellaneous destination” (IIRC) that dials the actual number of the cell phone I am forwarding to.
Also, be warned that many telephone companies do not allow “foreign” caller IDs to be sent through their systems. In these cases, your calls have two possible outcomes - the caller ID is set for you by the phone company (a common outcome when working with PRI or T1 traffic) or the call is rejected with an error like “Nope - sorry” (or something similarly informative).
Sorry Dave, I should have been more explicit. In the inbound route I set the destination to the set callerid. In one case, the set callerid destination was a custom extension (of the form Local/ext@outbound-allroutes) and the second time it was set to a ring group that includes this custom extension.
I will look into the outbound route intracompany setting.
my trunks are all sip. Is there a way to find out if this is the case? Is there a way to find out what caller id was sent in the sip traffic that went out?
Hello Dave,
I have found this thread looking for a solution to a similar problem.
Could you please recommend me any “foreign caller ID” friendly trunk providers?
All the providers I know (not so many, really) will override the CID sent by my PBX with the CID of their trunk…
Any information will be much appreciated!
Thanks!
Fabian