Microsoft Teams provides 4 different routing methods
•Attendant routing
•Serial routing
•Round robin
•Longest idle
There is no detailed explanation from Microsoft about the routing logic. The Mirage MS-Teams Connector supports the routing as described below.
When attendant routing is used, the first call in the queue will ring all of the call agents at the same time. The first agent to pick up the call gets the call.
The call agent alert time should be identical to the Maximum wait time in the queue.
When serial routing is used, incoming calls will ring call agents one after the other, starting from the beginning of the call agent list. The user list sequence is taken from the user list in the queue.
Example
•5 agents are logged into the queue
•Call comes in
•User 1 is in presence state busy
•User 2 is in presence state available
•User 3 is in presence state available
•User 4 is in presence state available
•User 2 will get the call
•Next call comes in
•User 1 is still in presence state busy
•User 2 is on a call
•User 3 is in presence state available
•User 4 is in presence state available
•User 3 gets the call but rejects it
•User 4 will get the call
•Next call comes in
•User 1 is in presence state available
•User 3 is in presence state available
•User 5 is in in presence state available
•User 1 gets the call as the call distribution always starts with user 1
Round Robin balances the routing of incoming calls so that each call agent gets the same number of calls from the queue.The distribution does not start with the first agent (as in Serial Routing). The agent who answered the last call is remembered and the next call goes to the following agent.
Example
•5 agents are logged into the queue
•Call comes in
•User 1 is in presence state busy
•User 2 is in presence state available
•User 3 is in presence state available
•User 4 is in presence state available
•User 2 will get the call
•Next call comes in
•User 1 is still in presence state busy
•User 2 is on a call
•User 3 is in presence state available
•User 4 is in presence state available
•User 3 gets the call but rejects it
•User 4 will get the call and is now remembered as having the last call
•Next call comes in
•User 1 is in presence state available
•User 3 is in presence state available
•User 5 is in in presence state available
•User 5 gets the call and not user 1 as the call distribution goes from user 1 to 2 to 3 to 4 to 5 and starts again with user 1
•If a user rejects a call, he will only get a call again once all other agents have answered a call
•If a user changes to a status that is not Available, and then changes back to Available, he will not get another call until the agent in line before him has had a call
•The agent position is calculated when a caller is added to a queue. Only if the agent is busy or no longer available in the moment the caller should be transferred to the agent, a new calculation is done
Longest idle routes each call to the agent who has been idle the longest time. An agent is considered idle if their presence state is Available. Agents whose presence state isn't Available won't be eligible to receive calls until they change their presence to Available.
Example
•5 agents are logged into the queue
•Call comes in
•User 1 is in presence state busy
•User 2 is in presence state available since 10:02AM
•User 3 is in presence state available since 10:01 AM
•User 4 is in presence state available since 9:50 AM
•User 5 is in presence state available since 10:03 AM
•User 4 will get the call
•Next call comes in
•User 1 is still in presence state busy
•User 2 is in presence state available since 10:02 AM
•User 3 is in presence state available since 10:01 AM
•User 4 is on a call
•User 5 is in presence state available since 10:03 AM
•User 3 gets the call but rejects it
•User 2 will get the call as he is longest available
•Next call comes in
•User 1 is now in presence state available since 10:06 AM
•User 3 is in presence state available since 10:01 AM
•User 3 gets the call as he is longest available
•If a user rejects a call, he will get the next call as he is then longest available
•If a user changes to a status that is not Available and then changes back to Available, he will not get another call until all other agents have had their turn
•The agent position is calculated when a caller is added to a queue. Only if the agent is busy or no longer available in the moment the caller should be transferred to the agent, a new calculation is done
Important to know
If an agent is logged into two or more queues at the same time and he gets a call from multiple queues at the same time according to the call distribution logic, multiple calls with the queue name will be signaled in the Microsoft Teams APP. However, only one call can be signaled in the CTI Data Connector SoftPhone>.
Example
• Microsoft Teams APP gets a call from the queue Sales German and Sales English at the same time
•In the CTI Data Connector SoftPhone the caller data from the queue Sales German is shown
•However, in the Microsoft Teams APP, the agent takes the caller from the Sales English queue
•The caller from the Sales German queue continues to ring until the call agent alert time is over
•In the CTI Data Connector SoftPhone, the caller from the Sales English queue is now displayed as an active call
Differences in Queue logic compared with native MS-Teams
There can be differences in the queue logic and supported features compared to native MS-Teams.
One difference is related agent handling in case agent does not answer a call.
Example:
•Round Robin or Serial Routing
•Maximum wait time in the queue is 5 minutes
•Call agent alert time is 30 seconds
•3 agents are in the queue and available
•Call goes to agent 1 - agent does not answer - it rings for 30 seconds
•Call goes to agent 2 - agent rejects the call
•Call goes to agent 3 - agent does not answer - it rings for 30 seconds
•After that, the event of the maximum wait time is instantly triggered to avoid, that the call goes back to agent 1, who will probably still not answer and as agent 2 has rejected the call, it is also unlikely that he will answer. This logic reduces the waiting time for the caller.
The native MS-Teams queue would start again with agent 1 until 5 minutes are reached.