Note
Access to this page requires authorization. You can try signing in or changing directories.
Access to this page requires authorization. You can try changing directories.
Applies to: Dynamics 365 Contact Center—embedded, Dynamics 365 Contact Center—standalone, and Dynamics 365 Customer Service
Note
Case information applies to Customer Service only.
For a more personalized experience, route work items from a specific contact to the customer's preferred customer service representatives (service representatives or representatives) or relationship managers.
You can configure contacts and their preferred representatives in Copilot Service admin center. You can map representatives to contacts only. If you don't configure a contact, you can't assign a preferred representative to the contact.
Prerequisites
You must have one of the following roles to configure preferred representative routing:
- For Customer Service: CSR Manager
- For Dynamics 365 Contact Center: Omnichannel Administrator
You must be able to access the Contact table.
If you have a custom role, you must also have access to the msdyn_preferredagent and msdyn_preferredagentcustomeridentity tables.
Ensure that the representatives you want to assign to a contact are members of the queue to which you route work items.
Configure preferred representative for contacts
In the Copilot Service admin center site map, select Routing.
On the page that appears, select Manage next to Preferred representative routing.
Turn on Enable preferred representative routing.
Select who should get the work item if the preferred representative is unavailable:
Next best representative based on assignment logic: The work item is routed based on the assignment rules. Use this option for live chat conversations and voice channel calls.
No one. Let the work remain unassigned in the queue: The work item remains in the queue until a representative picks it up or you manually assign it to another representative. Use this option for asynchronous channel conversations.
Select contacts and their preferred representatives in the Preferred representatives matrix area by doing the following steps:
Select Add a contact to add a contact.
In Select a contact, enter a contact name, and select a value from the dropdown list.
Select Add user to map representatives to the contact.
You can map up to three preferred representatives to a contact. The representatives receive work items in the order in which they're listed if a representative who is listed higher in the order isn't available. You can sort their order by selecting a representative in the list and using the Move up or Move down option.
Save and close.
How routing to preferred representative works
If a preferred representative exists for a contact, the system tries to automatically assign the conversation to an available preferred representative whose presence matches one of the allowed presences configured in the workstream. The system skips the check for capacity, skills, and assignment rules. If no preferred representatives are available for a contact and Next best representative based on assignment logic is set as the fallback option, the system tries to find a matching representative according to the configured assignment strategy.
For contacts who don't have a preferred representative mapped, irrespective of the fallback option selected, the system always assigns them to the best eligible representative available in the queue based on the assignment method.
Routing to preferred representatives works with conversations that are routed through push-based workstreams only.
Update contacts and preferred representatives
In the Preferred representatives matrix section, use the edit and remove options to modify contacts and their preferred representatives.
For each contact, you can map up to three representatives, but ensure that you map at least one to the contact.
Identify contacts in supported channels
To find the preferred representative for an incoming work item, the contact should be identified. For supported channels, use the information mentioned in the following table to identify customers as contacts.
| Channel | Customer record |
|---|---|
| Record |
|
| Digital messaging: Chat, voice, and other channels |
|
Assign to a previously engaged or preferred expert by using conversation orchestration playbooks (preview)
[This section is prerelease documentation and is subject to change.]
By using historical interaction context, queue membership alignment, and expert availability, you can reconnect customers with experts who already understand their issue. When the previous or preferred expert isn't available, assignments automatically go to the next best qualified expert, so service levels and reliability stay consistent. This capability reduces repeat explanations, speeds up resolution times, and improves customer satisfaction. It helps businesses lower the cost to serve while delivering more consistent, personalized support experiences at scale.
Administrators define assignment logic by using natural language playbooks through conversation orchestration. You can configure the precedence order and the look back period with conditions based on context variables by using playbooks in conversation orchestration. Learn more in Configure conversation orchestration using AI-powered playbooks (preview).
You must configure preferred representatives if you want to configure assignment to a preferred expert by using playbooks through conversation orchestration.
Important
This feature is intended to help customer service managers or supervisors enhance their team’s performance and improve customer satisfaction. This feature isn't intended for use in making—and shouldn't be used to make—decisions that affect the employment of an employee or group of employees, including compensation, rewards, seniority, or other rights or entitlements. Customers are solely responsible for using Dynamics 365, this feature, and any associated feature or service in compliance with all applicable laws, including laws relating to accessing individual employee analytics and monitoring, recording, and storing communications with end users. This responsibility also includes adequately notifying end users that their communications with representatives might be monitored, recorded, or stored and, as required by applicable laws, obtaining consent from end users before using the feature with them. Customers are also encouraged to have a mechanism in place to inform their representatives that their communications with end users might be monitored, recorded, or stored.
How expert assignment works
A decision hierarchy determines expert assignment for returning customers. Admins can change the priority between preferred and previous experts to fit their business needs.
| Default Priority | Expert type | Description |
|---|---|---|
| 1 | Preferred Expert | Relationship manager or service representative mapped to the contact |
| 2 | Previous Expert | Expert who handled prior interaction within recency window |
| 3 | Fallback | Next best available expert using queue's assignment method |
Assignment criteria
Before assignment, the system validates the following criteria.
| Criteria | Description |
|---|---|
| Presence check | Expert must be in an allowed presence status |
| Queue membership | Expert must be a member of the relevant queue |
| Recency window | Previous interaction must be within configured time period such as 7, 10, or 30 days. The system supports up to 30 days cut off period for the recency window. |
Assignment scenarios
Scenario 1: Preferred expert assignment
This scenario assigns conversations to a designated relationship manager mapped to the customer contact.
Trigger event: Conversation is routed to queue
How expert assignment works:
- When a conversation enters the queue, the system checks for a preferred expert mapped to the contact.
- The system verifies the preferred expert's presence, and queue membership.
- If all criteria are met, the system assigns the conversation to the preferred expert.
Example configuration
| Customer segment | Assignment action |
|---|---|
| VIP 1 customers | Assign to preferred expert first |
| VIP 2 customers | Assign to preferred expert if previous expert unavailable |
| All other customers | Assign to preferred expert first |
Scenario 2: Previous expert assignment
This scenario assigns conversations to an expert who previously interacted with the customer within a configured time window.
Trigger event: Conversation is routed to queue
How it works
When a conversation enters the queue, the system does as follows:
- Retrieves the previous experts from the customer's interaction history.
- Filters by recency window, verifies presence, and queue membership.
- Assigns the conversation to the previous expert if all criteria are met.
Example configuration
| Customer segment | Recency window |
|---|---|
| VIP 1 customers | 10 days |
| VIP 2 customers | 20 days |
| All other customers | 7 days |
Scenario 3: Fallback assignment
This scenario assigns conversations to the next best available expert when neither preferred nor previous experts are available.
Trigger event: Preferred and previous experts are unavailable
How it works
The system runs as follows:
Detects that no preferred or previous expert is available or eligible.
Invokes the queue's configured assignment method.
Assigns the conversation to the next best available expert.
Example scenario: Returning customer assignment
Playbook: "For all customers, first assign conversations to a preferred expert mapped to the contact. If a preferred expert isn't available, assign the conversation to a previous expert who interacted with the customer in the last 10 days. If neither a preferred expert nor a previous expert is available, assign the conversation to the next best available expert in the queue."
Scenario timeline:
| Time | Event | Assignment action | Notes |
|---|---|---|---|
| T=0 | Customer A contacts support | Check preferred expert | Customer A is VIP with mapped relationship manager |
| T=1 | Preferred expert found | Verify availability | Relationship manager (Expert X) is online |
| T=2 | Criteria check | Presence: Pass, Queue: Pass | All criteria met |
| T=3 | Assignment | Assign to Expert X | Customer connected to relationship manager |
Scenario timeline (Fallback):
| Time | Event | Assignment action | Notes |
|---|---|---|---|
| T=0 | Customer B contacts support | Check preferred expert | No preferred expert mapped |
| T=1 | Check previous expert | Query interaction history | Customer B spoke to Expert Y 5 days ago |
| T=2 | Previous expert found | Verify availability | Expert Y is offline |
| T=3 | Fallback triggered | Apply queue assignment | Assign to next best available expert |
| T=4 | Assignment | Assign to Expert Z | Customer connected to available expert |
Key outcomes:
- Context continuity: Customers reconnect with familiar experts without repeating their issues.
- VIP treatment: High-value customers consistently reach their designated relationship managers.
- Operational efficiency: Reduced handling time due to preserved context.
- Fair fallback: When contextual experts are unavailable, standard routing ensures timely service.
Keep the same expert for returning asynchronous chats with active conversation limit and presence status checks
Representative affinity reconnects a returning customer with the representative who previously handled their conversation, so the customer keeps the same expert across visits and doesn't have to repeat context. For asynchronous messaging channels, a returning customer can come back after the original conversation moves to a waiting state. The active conversation limit and presence status checks work together so that returning asynchronous chats reconnect to the previous representative reliably. Configure this behavior for queues where representative affinity is enabled by using conversation orchestration playbooks.
How active conversation limit works
The active conversation limit is a configurable attribute defined at the representative level. It acts as a safeguard against overload by limiting the number of returning asynchronous messaging conversations that can be assigned to a representative only when representative affinity is enabled.
How the check works: When a customer reinitiates a waiting asynchronous conversation, the system compares the representative's total capacity-occupying conversations across all channels against their active conversation limit. If the total is below the limit, the system reassigns the conversation to the same representative. Otherwise, the system releases the conversation to the queue for reassignment.
- Capacity profiles: New conversations are governed by capacity profiles, not the active conversation limit. Use capacity profiles for overall capacity management.
- Waiting consumes no capacity: Waiting asynchronous conversations consume no capacity while unassigned and count toward the limit only when a customer reinitiates them. Representative-initiated conversations aren't affected.
- No other representative available: If no other suitable representative is available, the conversation might still return to the original representative.
How active conversation limits are applicable to returning asynchronous chats
When a customer reinitiates an asynchronous chat on a queue with representative affinity enabled, the system evaluates the previously engaged representative before reconnecting the conversation:
- Identify the representative: Identify the previously engaged representative for the returning chat.
- Check presence: If allowed presences are configured in the Keep the same expert for async chats conversation orchestration playbook, the representative must be in one of the configured presence states.
- Check active conversation limit: Compare the representative's total active conversations against their limit. If the total is below the limit, the system reconnects the conversation to the same representative, even when the limit exceeds the configured capacity profile.
- Fallback to the queue: If the representative doesn't meet the presence requirements or reaches the active conversation limit, the system either keeps the conversation unassigned in the queue or assigns it to the next best representative, depending on administrator configuration.
Prerequisites for representative affinity with active conversation limit
At least one queue and workstream are configured for the messaging channel, and representative affinity is enabled for the workstream.
Configure representative affinity with active conversation limit and presence checks through orchestration playbooks
Create the Keep the same expert for async chats playbook.
- In Copilot Service admin center, go to Customer support > Conversation orchestration.
- Select Prompt gallery. In the category dropdown, select Assign to a previous or preferred expert scenario, and then choose the Keep the same expert for async chats template.
- Accept the default playbook name or enter your own.
- Select Queues > Edit. Set Channel to Messaging, and in Apply to choose All queues, List of specific queues, or All queues except (select the queues). Select Save.
- Select the allowed presence statuses in the presence list.
- Select active conversation limit.
- Select one of the following fallback options if the previous expert isn't available:
- assign to next best expert in queue
- keep the chat unassigned in the queue
- Select Save to keep the playbook as a draft. Review any validation warnings, and then select Publish to activate it.
View diagnostics for preferred and previous expert assignment
You can view the diagnostics information by using a custom query. Learn more in Sample queries and dashboards.
Related information
Overview of unified routing
Configure queues
Add multiple preferred representative records
Blog: Use preferred representative routing to create lifelong customer relationships