In this post I like to highlight a small PowerShell-based tool which I wrote to enable users for Teams Direct Routing. The first release V 0.2 is from June 2021. Now V0.3 primarily adds support for Teams PowerShell Module (TPM) 4.2.0. Previous TPM versions are deprecated and new cmdlets were introduced to manage phone numbers for Teams Direct Routing.
In fact since January 2022 you can assign phone numbers using the Teams Admin Center (TAC) but I’d say that it works faster with PowerShell. As soon as you have to assign/change several numbers and you don’t want to use the PowerShell cmdlets you could use the Teams Direct Routing User Number Assigner (TDRUNA).
Requirements and prerequisites
- Recent PowerShell version
- PowerShell Script Execution must be enabled (Get-/Set-ExecutionPolicy …)
- Microsoft Teams Module V4.2.0
- Microsoft 365 Global Admin or Skype for Business Administrator
Features V 0.3
- GUI for Teams Direct Routing user enablement
- Connect to Microsoft Teams (only with device authentication, see PowerShell info after click on connect)
- Disconnect Microsoft Teams
- List all users
- Select a user
- Set a user’s Teams Upgrade mode to TeamsOnly (deprected and removed V0.2 feature)
- Enable a user for Enterprise Voice (deprected and removed V0.2 feature)
- Enable a user for Hosted Voicemail (deprected and removed V0.2 feature)
- Assign a Teams Direct Routing Phone number
- Assign a online voice routing policy
- Assign a calling policy
- Delete user phone numbers (new)
- More output/details in the PowerShell window (new)
Bugs, issues and limitations V 0.3
- Not checking for assigned license sku or Assigned Plan for a listed or selected user
- No refresh of users after a change to a user was applied (disconnect, close, open, connect required)
- Even resource accounts are listed
- Changing resource account numbers is not implemented/supported (!)
- Deleting resource account‘s phone number is not implemented
- No code-signed script
For more, check out my project’s GitHub repo where you can download it.
Please note I’m no professional developer. The use of TDRUNA is on your own risk.
I wrote the the script in my leisure time and did it just for fun. Nevertheless feedback is welcome.