Setting up the Live Chat Starter
Select the desired bot, download and import the DRUID Live Chat Starter. This solution template contains a basic Live Chat configuration to help you easily add Live Chat support to your chatbot and let it handle live chat sessions between end users and help desk agents.
The DRUID Live Chat Starter comes with eight predefined flows which you can modify to best suit your needs.
The chatbot handles live chat from two perspectives:
- client-side
- agent-side
The diagram below describes how the chatbot handles Live chat on both the client and agent side throughout the live chat lifecycle.
Legend:
Form | |
Process element | Action |
Data element | Message |
Color | |
Orange process element |
Special flow or a flow triggered by a special event |
Orange data element | Special message |
Green element | Action performed by the chatbot. |
Light gray element | Read-only |
Dark gray element | Action performed by the agent |
Blue element | User input |
Live Chat works with special flows and events that are set up on the bot.
The DRUID chatbot automatically identifies and raises special events within the chat with the end user. For each such event you have the option to personalize the customer and agent experience, using either special flows or special messages.
Live Chat Settings
To access the Live Chat settings, go to the bot details and click the Live Chat section header. The section expands and you can set Live Chat specific parameters as follows:
Set Live Chat general parameters
Tick the following two check boxes:
- Enable web socket for communication performance. Check with your network administrator if the Web Socket Protocol is active inside your network.
- Enable Bot API. The Bot API is DRUID's message status message service and it is mandatory to enable it. This is a tenant feature, so enabling it will enable this service on all bots on your tenant.
- Show past conversations. Control the visibility of past conversations on the Agent page, This setting is available in DRUID 7.17 and higher.
Set Live Chat timeouts
In order for Live Chat events to be raised, you need to set up on the bot the timeout parameters provided in the table below.
Parameter | Description |
---|---|
Live chat queue waiting timeout mins | The amount of time in minutes that a client could wait until an agent accepts the incoming live chat request. When the time limit is reached, the live-chat-waiting-message-in-the-queue flow is triggered. For more information on this flow, see Notify clients while on the Waiting Queue |
Live chat conversation idle timeout mins |
The idle time limit for which a client can be idle (i.e. does not respond) in an ongoing conversation with an agent. Once the time limit is reached, the dialog times out and the client is automatically returned to bot context. Note: In DRUID 8.3 and higher, the idle timeout timer is also reset by messages sent by the live chat agent, in addition to messages from clients.
Note: You can customize the way your chatbot handles idle live chat conversations. To do so, follow these steps:
If during a live chat, the Live chat conversation idle timeout mins is reached, the flow selected in the Inactivity cancel conversation flow field will be triggered. |
Apply only on client silence |
When enabled, this feature prevents the auto-disconnect mechanism triggered by Live chat conversation idle timeout mins when the last message in the conversation is from the user (client), ensuring that the session remains active as long as the client is engaged. When active, it alleviates the necessity for the agent to pause the conversation when undertaking tasks outside of the chat, particularly those requiring a significant amount of time. You can conveniently enable or disable this feature based on your specific requirements |
Send timeout warning to agent |
Sends the ConversationIdleWarningMessage to the agent when a live chat conversation becomes idle. The warning is triggered at half of the time defined in the Live chat conversation idle timeout mins setting. Note: This parameter is available in DRUID 8.1 and higher.
|
Set Live Chat Special Flows
In order for Live Chat to work, you need to set up the following Special flows on the bot (Live Chat section).
The table below provides an overview of the predefined flows that come with the Live Chat Starter, how to select them as bot’s special flows, whether they work on the client or the agent’s side and a brief description of what they do.
Conversation Status | Special Flow / Flow Name | Flow triggered by special event | Client side | Agent side | Brief Description |
---|---|---|---|---|---|
Live Chat | LiveChatClientDisconnectedFlowId / live-chat-feedback-client | x | Captures the client’s feedback. | ||
LiveChatAgentDisconnectedFlowId / live-chat-agent-disconnect | x |
|
|||
Chatting with the bot | LiveChatClientWaitingInQueueFlowId / live-chat-connect-to-agent | x | Places the client in the Waiting queue. | ||
Live Chat | LiveChatClientConnectedFlowId / live-chat-client-connected | x | Agent connects with the client. | ||
Waiting in the queue | live-chat-waiting-message-in-the-queue | x |
|
||
Live Chat | live-chat-connect-agent-to-waiting-client | x | The chatbot informs the agent if connecting in a live chat session with the client was successful or not. If the live chat session started, the client will be taken off from the waiting queue. For more information on this flow, see Notify the agent if connecting to a client was successful or not | ||
Chatting with the bot | SignInHelpDeskAgent | x | Places the agent in the available agents queue. | ||
SignOutHelpDeskAgent | x | Takes out the agent from the available agents queue. |
Set Live Chat Special Messages
You can set up specific responses triggered by special Live Chat special flows and events in which a bot might reach out. You can either set the list of responses via the Bot Designer or set the flows to provide customized responses via the Flow Designer.
This is the list of Live Chat messages:
Special Message | Description |
---|---|
ConnectedToHelpdeskAgent |
The default message sent to the client when a helpdesk agent joins the conversation—immediately after connecting. |
ConversationIdleWarningMessage |
The default message sent to the client to warn them that the live chat conversation is becoming idle. This message is triggered when the chat has been inactive for half the duration set in the 'Live chat conversation idle timeout mins' parameter. |
LiveChatAgentDisconnectedFromPool |
The default message sent to an agent after they sign out of Live Chat and are removed from the available agents' queue |
LiveChatAgentDisconnectedSelfConfirmation |
This is the default message sent to the agent when they disconnect from a conversation. However, if a specific message is defined in the 'Live chat agent disconnected flow' (which is used to capture the agent's closing resolution), that message will be used instead. |
LiveChatAgentError |
This message notifies the user that an unexpected issue has occurred with the live chat functionality—typically with third-party live chat providers. |
LiveChatAgentLeft |
This is the default message sent to the user to notify them that one of the helpdesk agents engaged in the live session left the session (mainly for Oracle contact center and other 3rd party providers). |
LiveChatAgentLeftInformation |
Similar to LiveChatAgentLeft, this is the default message sent to users when a helpdesk agent disconnects. However, it includes additional information—specifically, the agent’s first and last names, represented by placeholders {0} and {1}. This applies to certain live chat providers only. |
LiveChatClientAssignedToGroup |
This is the default message sent to the client when they are assigned to a specific group. It applies to third-party contact center providers that support client group assignments. |
LiveChatClientDisconnectedSelfConfirmation |
This is the default message sent to the client when they end a conversation. If a specific message is configured in the 'Live chat client disconnected flow' (used to gather client feedback), that custom message will be displayed instead. |
LiveChatClientLeftInformation |
The default message sent to the helpdesk agent when the client disconnects. This message includes additional information about the client, specifically their first name and last name (represented by {0} and {1}). |
LiveChatClientTransferred |
This is the default message sent to the agent when the current helpdesk agent transfers the conversation to a different agent. |
LiveChatConversationPausedConfirmation |
This is the default message sent to the agent when an agent pauses a live chat session. The conversation is temporarily on hold but has not ended. The client can wait for the agent to resume the chat or take alternative actions based on the chatbot's configuration. |
LiveChatExpectedWaitTimeInQueue |
This message informs the client of their current position in the waiting queue and provides an estimated wait time in seconds. It is sent during the waiting period while the client is in the queue for a live chat session. The message is dynamically updated based on the client’s queue position and estimated wait time. |
LiveChatFileSizeTooLarge |
This message is displayed when a client attempts to upload a file that exceeds the maximum allowed size. |
LiveChatNewLeadAgent |
This is the default message sent when one of the engaged agents is designated as the lead agent—applies to Oracle Contact Center and other third-party providers. |
LiveChatPauseKeyword |
This is not a special message but a keyword recognized by the DRUID conversational engine. It is used when an agent needs to pause a live chat session. The Pause command cancels the live chat timeout temporarily and remains in effect until the agent sends a new message in the chat. |
LiveChatQueueWaitingTimeout |
This message is sent when the client has been waiting in the queue for longer than the configured LiveChatQueueWaitingTimeoutMins value. It notifies the user that all agents are currently busy and suggests alternative ways to contact support. |
LiveChatWaitForAvailableAgent |
This is the default message sent to clients when they enter the waiting queue for a live chat session, unless a different message is configured in the 'Live chat client waiting in queue flow'. If the client chooses to wait, they remain in the queue and may later receive the LiveChatExpectedWaitTimeInQueue message with their queue position and estimated wait time. If they decline, the chat session is ended. |