Forum Discussion
How much should Teams presence influence call routing
Hi Mefteh_W,
Great topic! This is something many Teams Phone administrators wrestle with. Here is what I have seen in real deployments:
In practice, presence-based routing in Teams Phone is partially supported but with important caveats:
- Call Queues with Presence-Based Routing: Teams does support presence-based routing in Call Queues. When you enable the option Presence-based routing in the Call Queue settings in the Teams Admin Center, agents who are set to Busy, In a meeting, or Do Not Disturb will be skipped, and the call will ring only agents whose presence is Available. This is the most reliable native implementation.
2. Auto Attendants: Auto Attendants do not natively check presence when transferring to a user. If you transfer to an individual user in Busy state, it will still ring them (and they can decline or let it time out). The workaround here is to transfer to a Call Queue instead of a direct user, then use presence-based routing in the queue.
3. Direct Routing and Power Automate: Some organizations use Power Automate with the Microsoft Graph Presence API to build more sophisticated routing logic, reading presence states dynamically and adjusting routing behavior accordingly.
For your model (Available = transfer immediately, Busy = alternative path, In a meeting = capture context, Offline = route elsewhere), this is achievable with a combination of Call Queues with presence routing and a well-designed Auto Attendant hierarchy.
Traditional queues still work well for most scenarios, but presence routing adds meaningful value for high-availability teams.