Edit

Share via


Enable consult with representatives and transfer of conversations

By default, customer service representatives (service representatives or representatives) can consult with other representatives and transfer conversations to queues to resolve customer issues efficiently.

For advanced consult and transfer scenarios, you can enable the following settings:

  • Consult to queue: Helps the system to intelligently select the most eligible representative to consult with.
  • Direct transfer: Lets representatives select another representative directly without initiating a consult.

Prerequisite

System administrator or Omnichannel administrator role.

Enable consult and transfer settings

You can enable the settings in Copilot Service admin center under Channels > Consult and transfer.

Enable consult to queue

  1. Turn on the toggle for Consult to queue.

  2. Enter countdown numbers for voice and messaging channels to specify how long the system searches for representatives to consult with.

    Screenshot of consult to queue setting in admin center.

  3. Save and close.

Enable blocking of capacity during consult

By default, representative capacity is blocked for consult to queue sessions. For direct consult sessions, you must explicitly enable capacity blocking.

  • On the Consult and transfer page, select the checkbox to block capacity of the representatives when they engage in a consultation using the consult with representatives option on the communication panel.

Enable direct transfer of conversations

When you enable the transfer to representative setting, representatives can select another representative directly and initiate transfer.

  1. On the Consult and transfer page, in Transfer settings turn on the transfer to representatives toggle.
  2. Select Save.

Enable wrap-up time for transfer

In a transfer scenario, service representatives need time for post-interaction tasks like finalizing notes after transferring their conversation.

In Transfer settings, enable Wrap up after transfer. The system blocks dedicated time for the wrap-up activities as configured in the workstream.

When a service representative transfers a conversation to another representative, queue, AI agent, or external representatives, the system automatically provides wrap-up time after the transfer is completed. The Block capacity for wrap up under work distribution settings of the workstream determines the wrap-up behavior. Learn more about wrap up in Understand conversation states.

Configure custom inbox view for consult sessions

Representatives can configure the inbox to show their consult sessions. The inbox view helps representatives rejoin the consulted sessions and leave the consultation to release their capacity.

  1. Create a view by using the Advanced option in Configure custom views for the inbox.

  2. To configure the view, use the conditions shown in the following screenshot.

    Screenshot of the conditions builder to view consult sessions in inbox.

Configure filters to display representatives selectively in consult and transfer scenarios

In the various consult and transfer scenarios that you enable for your representatives, you can define FetchXML filter rules to display the right set of representatives or queues. At runtime, eligible representatives or queues only appear for the consult or transfer session.

By default, all filtering options are disabled.

  1. In Copilot Service admin center, go to Channels > Consult and transfer.

  2. Enable the toggle for each of the following settings:

    • Consult to queue filtering
    • Transfer to queue filtering
    • Consult with representative filtering
    • Transfer to representative filtering
  3. Enter and validate a FetchXML query for each setting. The FetchXML can be a simple filter or a complex query that uses linked entities with a custom mapping table based on your business rules.

  4. Save the changes.

    A screenshot of the FetchXMLs to restrict representatives during consult and transfer scenarios.

Use sample FetchXMLs to filter queues

For queues, the primary entity must be a queue.

In the sample scenario, the FetchXML uses a mapping table to filter records based on the current queue of the representative. To support runtime filtering, you must include {queue.queueid} in linked-entity conditions that rely on the current conversation’s queue.

During runtime,

  1. The placeholder is replaced with the actual queue ID of the active conversation.
  2. The system evaluates the query dynamically.
  3. Eligible queues only appear for consult or transfer.

Simple FetchXML for filtering queues

<fetch version="1.0" output-format="xml-platform" mapping="logical" distinct="false">
	<entity name="queue">
		<attribute name="name"/>
		<attribute name="emailaddress"/>
		<attribute name="queueid"/>
		<order attribute="name" descending="false"/>
		<filter type="and">
			<condition attribute="queueid" operator="eq" uitype="queue" value="{aaaaaaaa-0000-1111-2222-bbbbbbbbbbbb}"/>
		</filter>
	</entity>
</fetch>

Mapped entity filtering FetchXML for filtering queues

<fetch version="1.0" output-format="xml-platform" mapping="logical" distinct="true">
	<entity name="queue">
		<attribute name="queueid" />
		<attribute name="name" />
		<link-entity name="msdyn_consultqueuemapping" from="msdyn_consult_allowed_queue" to="queueid" link-type="inner">
			<filter type="and">
				<condition attribute="msdyn_currentqueue" operator="eq" value="{queue.queueid}" />
			</filter>
		</link-entity>
	</entity>
</fetch>

Use sample FetchXMLs to filter representatives

For representatives, the primary entity must be a system user.

In this example, the FetchXML retrieves supervisors who belong to the same business unit as the representative who might invoke a consult or transfer session.

At runtime,

  • The query runs in the context of the signed-in representative.
  • The representative’s business unit ID is used for filtering.
  • Representatives who match the criteria only appear in the consult or transfer list.

Use the FetchXML for

  • Role-based visibility
  • Restrict consults and transfers to business units
  • Filter via custom mapping tables

Simple FetchXML for filtering representatives

<fetch version="1.0" output-format="xml-platform" mapping="logical" distinct="false">
	<entity name="systemuser">
		<attribute name="fullname"/>
		<order attribute="fullname" descending="false"/>
		<filter type="and">
			<condition attribute="systemuserid" operator="eq" uitype="systemuser" value="{bbbbbbbb-1111-2222-3333-cccccccccccc}"/>
		</filter>
	</entity>
</fetch>

FetchXML with multiple filters for representatives

<fetch version="1.0" output-format="xml-platform" mapping="logical" distinct="true">
	<entity name="systemuser">
		<attribute name="fullname"/>
		<order attribute="fullname" descending="false"/>
		<filter type="and">
			<condition attribute="systemuserid" operator="not-null"/>
			<condition attribute="businessunitid" operator="eq-businessid"/>
		</filter>
		<link-entity name="systemuserroles" from="systemuserid" to="systemuserid" visible="false" intersect="true">
			<link-entity name="role" from="roleid" to="roleid" alias="by">
				<filter type="and">
					<condition attribute="roleid" operator="eq" uiname="Omnichannel supervisor" uitype="role" value="{cccccccc-2222-3333-4444-dddddddddddd}"/>
				</filter>
			</link-entity>
		</link-entity>
	</entity>
</fetch>

Runtime experience of consult and transfer

When you enable the consult to queue setting, your service representatives can see the Queue tab on the communication panel.

Similarly, when you enable the direct transfer setting, the Representatives tab appears. The tab also appears when the representative wants to transfer conversations to another representative after engaging in a consultation with them.

The representative capacity is released in the following scenarios:

  • The primary representative ends the call or conversation and closes their session.
  • The primary representative ends the consult.

Consult with representative or supervisor
Use consult to collaborate with other representatives or supervisors
Transfer conversations to representatives
Transfer calls to representatives