I can barely believe that this day has come… A day I have been waiting for since Microsoft Teams first got the ability to make calls. That’s right, phone number management for Direct Routing is finally here!
Whilst you’ve been able to assign random phone numbers
directly to users in Teams via PowerShell for ever, and more recently in Teams
Admin Centre, this has never actually included the ability to manage number
ranges and keep track of what numbers are free or in use from your carrier
number ranges. I’ve worked with a lot of enterprise customers that have many
thousands of numbers, and the idea of keeping a separate database of the number
range allocation for users and voice apps has been a real pain.
Let’s have a look at how this is now configured in the Teams
Admin Centre (TAC).
Step 1: The first thing to do is make your way to the Phone Numbers
area in TAC under Voice > Phone Numbers. In here you click on the Add
button:
Step 2: Now you will need to assign a Name and Description for the number range that you’re importing. I find the language on this page to being a little disconcerting, as it makes it look like you’re “ordering” a number range, which you are not actually doing for Direct Routing.
There are three options to choose from in importing your number ranges::
OPTION 1 - Upload CSV:
To upload the numbers you need a CSV file containing a list of E.164-formatted telephone numbers. There is an example CSV file that you can download that
shows the correct heading to use in the CSV file. The single column header is “TelephoneNumber”. You just have to list all the number ranges for your business (E.164 format) and put them into the CSV file under the header.
Excel is the easiest way to do this. Here’s an example of the data for an
import:
TIP: Excel by default will interpret the cells in a CSV file as being “General” format. This leads to E.164-formatted numbers being interpreted as being positive numbers (e.g. numbers that start with a “+” sign). As a result your E.164 formatted numbers get the "+" sign truncated when opening an existing CSV file or when you type or paste them into a "General" format cell. The best thing to do in your CSV file is to convert the cells that are going to contain phone numbers as a Custom format, like this:
Create a Custom type of “+0”. This will make all the numbers in to fields have + in front of them but it will also treat them like a number so you can do fill down and other number functions with them.
Once you’ve filled in your description and selected to upload
your file, the screen should look something like this:
OPTION 2 - Add Phone Number Range:
For the number range you simply enter the start and the end of the range (the range needs to be a contiguous block of numbers):
OPTION 3 - Add one to many phone numbers:
In this option you get to add numbers in a comma separated list:
After adding the numbers using your selected method, click the Next button.
At this point you’ll get another message that’s a bit weird. It will tell you that your “order has been placed!”. Don’t get concerned by this. What it actually means is that it’s now going to upload the numbers from the CSV to the Phone Numbers page.
When you exit this screen you will be taken back to the Orders tab on the Phone Number page and it should tell you that your numbers have been successfully uploaded:
If you head back to the Numbers tab you should see your numbers there, with no User assigned to them yet:
Step 3: The next step is to actually assign your phone numbers to a user. To do this, go to the Users > Manager Users and select the user you would like to assign a number to:
In this case my user does not have “Enterprise Voice”
turned on. You need to turn on the "Enterprise Voice" toggle and then click the “Assign
primary phone number” button. A fly over will now pop out on the right hand
side of the screen and you will now see is that if you click on the
Assigned Phone Number text box, you will get a drop down list showing all the free
numbers from the Phone Numbers section:
Note: This list will show about the first 100 free entries in the Phone Number list. If you want to assign a number that is outside of this range, you can go to the Phone Numbers list and Edit the number and assign it to a User from there.
The email that is sent to the user if you leave the Email toggle on looks like this:
Now when you look at the user
detail in Teams, you’ll see that the user now has the phone number assigned to
them:
This will also carry through to the Voice > Phone Numbers section where you will see the user listed against the phone number:
Some more good news about this configuration is that it doesn't stop you from later using PowerShell to assign numbers in bulk to users. When you assign a number that's already in the Phone Numbers list using PowerShell, the configuration also gets updates in the Phone Numbers list in the same way as shown above.
This is awesome!
The Wrap Up
It’s pretty mind boggling that it’s taken this long for this functionality to make it into the platform. I for one am very excited about it. It’s a massive quality of life uplift for those that have to manage a Direct Routing based Teams setup. I hope you all enjoy the new feature as much as I do!