I recently had the chance to work with and configure Tenant Level Dial Plans for Microsoft Skype Online with Cloud PBX. In this blog, I will show you how I configured tenant level dial plans as well as warn against an issue that I ran into.
In this case, I had a hybrid deployment with groups of users moving from Skype for Business on-premises to Microsoft Cloud PBX. The Cloud PBX migration users were homed on pools throughout the United States and Europe, and were used to dialing others by extension number (4-digit) globally. To provide this same type of functionality after moving the users to Cloud PBX, I had to create Tenant Level Dial Plans and then grant the users access to the new dial plans.
The first step was to collect all the “Site Level” dial plan normalization rules in the Skype for Business on-premises environment that were assigned to this group of users, and copy them into notepad. This included the name, description (if any), match criteria, and translation of the 4-digit dialing rules.
Next, I planned the rules in notepad including the order (top->down), converting each rule into the required “PowerShell” command (displaying a subset of the rules below, as there were 18 total).
It is best to get this right the first time around, otherwise it can be difficult to remove, add, and re-order rules. In fact, if you make a mistake, it may even be best to completely remove all rules and add them all back in.
One issue I ran into was after submitting and reviewing, I noticed that the translation portion of the rules were all missing the “$1 or $1$2”. The problem was I used “double-quotes” to wrap the name, pattern, and translation portions of the rule.
I ended up removing all rules and adding them back in wrapping name, match, and translation in ‘single-quotes’. After reviewing the rules this time around, they were added to the tenant dial plan as expected with the translation portion containing the entire rule ($1, $2, etc). An additional constraint was that you can only submit 25 normalization rules to each tenant level dial plan.
If you need to remove all normalization rules from an already created tenant dial plan, you can execute as shown below. Keep in mind that when removing the rule(s), you should execute the “remove” using the rules as they are currently stored. Highlighted below shows the rules being removed since they don’t have the “$1, etc” as part of the translation.
Below, the normalization rules are added back using ‘single quotes’ to wrap the contents of name, match, and translation.
For users to take advantage of the new translation rules, you must grant them access to the tenant dial plan policy. You can also remove them from the tenant dial plan policy as shown below: