A common request that we get is to mask or change the caller ID of an outbound call. This might be because the caller is a VIP and doesn’t want to be harassed, or they might be a support rep and any returned calls should go to a queue or main number. You might also be calling from a number that doesn’t belong to the carrier you’re sending the call over. There are a handful of ways to handle this scenario in SfB.
Using a number that doesn’t belong to the carrier you’re sending the call over can have some odd results. They may allow it, they may block it, or they may override it with another number, usually your billing telephone number (the “BTN”) for the trunk. The BTN is usually not taken from a customer’s block of DIDs, may not have a caller ID string or 911 address associated with it, and typically is not assigned to any endpoints, so sending the BTN as the caller ID won’t help anyone that you’re calling.
You can use the “Suppress caller ID” and “Alternate Caller ID” on a route to set a number of your choosing. This would apply to all calls using this route. If you want to override some users’ numbers and not others, you’ll need a of duplicate your voice policy, usage, and route, and then set the override on one route. Repeat this exercise if you have different users that need to send a different number. If you need more flexibility than this, check the other options. On the plus side, this solution doesn’t care which trunk/gateway the call is routed to.
A Trunk Translation rule gives you more flexibility than the alternate Caller ID solution. You can set a series of translation rules using regular expressions on the Trunk Configuration (you could cheat and do so globally if you’re in a small organization, but you’ll just wind up undoing and redoing all of your work if you expand).
The use of regular expressions means that you can easily handle multiple translations per trunk without needing all those extra voice policies, usages, and routes. You also get the flexibility of regular expressions to match and change only certain parts of a number and leaving the rest, like 236-551-xxxx to 236-555-xxxx.
If you have multiple trunks/gateways, you’ll need to configure appropriate rules on all of the gateways.
Trunk Translation is generally seen when performing Least Cost Routing (aka Toll Bypass), such as when a user from the UK calls a number in New York. The New York telco may not like the UK number, so you can configure translation rules so that the call appears to be from the New York office. You lose the personal DID of the caller, but the call will go through. I’ve also used this when a different carrier is providing a backup trunk, and they won’t allow the numbers from the first carrier.
The two above options are configured by administrators, are generally deployed because of telco requirements, and aren’t very flexible. It’s possible to use some other calling features to allow your users to be in control.
Delegation, also known as Boss/Admin, allows an assistant to answer calls and place calls on behalf of their boss. This functionality can be used to allow a user to selectively mask their number with another, when they choose. I’ve typically seen this setup for VIPs, when they want the recipient to see some alternate number – maybe there assistant, or an auto attendant.
To implement this, you’ll need to setup a dummy “boss”. Delegate the dummy boss account to the real boss. Now the real boss can place calls as the dummy boss. Next, if you don’t want returned calls to simply get a busy signal or dummy boss’s voicemail, setup the dummy boss to forward all calls to the assistant, or the auto-attendant.
Don’t setup delegation between a boss and their assistant to be two-way. Weird things can happen!
The gotchas with this solution are mainly around client support. Not all clients support calling on behalf of someone else, especially mobile.
You can also use a Response Group that’s configured to have Agent Anonymity. This gives users who are agents in that Response Group to place calls on behalf of the Response Group. See my Main Number Handling posts on Response Groups for details on how to do this. This solution has even more limitations that the Boss/Admin option above. Client support is limited to the Windows client, and your users will need to be homed on the same pool that the Response Group is homed on. This is a good solution is good if the users are already agents in the Response Group (such as on a helpdesk), but otherwise I wouldn’t bother with this one.
And lastly, Ken Lasko outlines how to implement *67 in Skype for Business here.
If you’ve got any other solutions for number privacy, hit me up in the comments!