Routing a conversation to the same agent

Although Sinch Contact Pro is by default designed to route conversations equally to all agents, you can direct the conversation to the agent who was handling the conversation previously.

This section describes ways to route a conversation to the same agent in different channels.


Routing an email to the same agent is a built-in functionality in Sinch Contact Pro.

Preferred and Required Agent

Preferred agent is typically used in allocating customer’s email reply to the same agent who wrote the original email​. When the preferred agent function is used, the email is offered to the preferred agent. ​If the preferred agent doesn't accept the email in the time defined with the setting Time Limit for Accepting E-Mails, it is returned to queue.​

It is also possible to define the required agent for the email with the setting Use Required Agent Instead of Preferred Agent, and a waiting time for this requirement (Default Expiry Time for Required Agent). ​If the required agent is defined for the email, only the defined agent can receive the email. ​After the expiry time, the email is available for all agents in the queue.


Routing a call to the same agent requires a silent IVR that searches the previous calls from the monitoring database. You can define the day range for the search (for example last 30 days) with a Restful Interface. The silent IVR checks which agent was handling the last call. The search criterion is the caller’s number (the A number). Then the silent IVR puts this agent as preferred agent in the new incoming call metadata.

Alternatively, the silent IVR can perform the check from an external CRM system/database, for example, which team or which agent is set as the account responsible and if found, adds this information to the metadata of the new incoming call. In the case of a responsible team, the silent IVR forwards the call to the team-specific call queue instead of keeping the call in the main queue.

Example 1: forwarding to a queue

Customer calls a service number, the IVR does the previously mentioned check and adds preferred agent information. The call is forwarded to a queue where several agents are serving. If the preferred agent is available and ready, then the call is allocated to the agent. If the agent is not ready or logged out, the call is reserved for the agent according to the configuration settings in System Configurator > System Management > Channels > Voice Channel > Max. Waiting Time for Preferred Agent.

Example 2: forwarding to agent's personal extension number

Customer calls a service number, the IVR does the previously mentioned check and forwards the call to the agent's personal extension number. Reports of the calls to personal extension numbers are not as detailed as queue call reports: calls forwarded from the service number to the personal extension number are not separated from direct calls.

We recommend that you configure a personal queue for each agent. Routing the call to the personal queue, instead of an extension number offers more possibilities to manage the call in case the target agent is not available: queue voicemail, overflow to another queue, schedules, waiting time adjustments, and reporting. However, note that creating a personal queue for each agent is a big task and causes extra maintenance work.

Messaging (such as SMS and WhatsApp) via Sinch Conversation API

To route a new conversation to a preferred or required agent, use the event-driven integration (EDI) framework.

The other option is to use a middleware. You need:
  • Sinch Chatlayer or any other middleware

    Connect the Conversation API webhook to Chatlayer instead of Sinch Contact Pro.

  • CRM or other third-party source

    Retrieve the preferred/required agent information.

For more information, see the document Preferred and Required Agent.

Web chats

To route a new conversation to a specific agent, use the event-driven integration (EDI) framework. For more information, see Preferred and Required Agent and Event-driven integrations.