Configuring audio and video calls
To start an audio or video call, agents must first start a conversation. You can configure Unblu to let visitors start a conversation as an audio or video call directly:
For visitors to be able to start a conversation as a video call, set the configuration property com.unblu.messenger.startWithVideoCallOptionEnabled to
For audio calls, set the configuration property com.unblu.messenger.startWithAudioCallOptionEnabled to
Visitors and agents can launch a video call by clicking the Start video call icon in the bar at the top of the chat view. The person or people being called can either answer or decline the call.
You can specify whether to enable the microphone and camera automatically when a user starts a call with the following configuration properties:
When set to
true, the properties enable the microphone or camera before the user starts a call or accepts an incoming call.
The ringing tone starts after the time specified in com.unblu.conversation.call.outboundRingingDelay.
When a user starts a call, Unblu displays the message defined in com.unblu.conversation.call.labelOutboundCallRecipients in the call UI.
Normally, users must join a conversation before they can answer or decline a call. If a conversation is going to be centered around a call, it can make sense for participants to join the call immediately, without joining the conversation in a separate step first. In Unblu, this is referred to as auto join call mode.
When auto join call mode is active, the person who starts a conversation automatically starts a video or voice call and joins it. Participants who join the conversation later automatically join the call, too.
Auto join call mode is specified in the conversation template scope. You can also activate it on an existing conversation so that it will be active for future sessions of the same conversation. However, such a change doesn’t affect conversations that are in progress, so new participants don’t automatically join an ongoing call if you activate auto join call mode after the conversation has started.
To activate auto join call mode, set com.unblu.conversation.call.autoStartAndJoinCalls to
By default, Unblu starts a video call. To change this, set com.unblu.conversation.call.autoStartCallType to
In auto join call mode, users can’t override the settings that determine whether to start a call with the microphone and the camera enabled until they have actually joined the call. Even then, they can only do so if the buttons to turn the microphone and the camera on and off are available. If you activate auto join call mode on a conversation template, you should therefore review the following configuration properties to ensure that participants control their camera and microphone:
If an assigned agent isn’t available to take a call, you may want to stop visitors from calling rather than let them call and not get an answer. You can inform visitors that the agent isn’t available to take a call and give them a way to request the agent calls them back.
To configure Unblu so that participants can’t call an agent when they’re unavailable, edit the configuration property com.unblu.conversation.call.allowStartingCallsWhenOthersUnavailable. By default, all participant types are allowed to call even when agents are unavailable.
There are different reasons agents may be unavailable for a call: they may have paused their notifications, be away, or be offline. You can define which of these reasons is a valid reason for agents to be unavailable for calls using the configuration property com.unblu.conversation.call.unavailableForCallReasons. By default, agents are considered unavailable for calls only when they have paused their notifications. Only one of the criteria must be met for an agent to be considered unavailable
| You can choose to have incoming calls in ongoing conversations forwarded to hidden secondary agents if the assigned agent doesn’t answer or is unavailable. To do so, set com.unblu.conversation.call.forwardToHiddenAgents to
When visitors are blocked from calling unavailable agents, they may want to request that the agent calls them back. You can add a callback button to the UI using the configuration property com.unblu.conversation.call.allowRequestCallbackWhenUnvailableForCall.
When a visitor clicks the button, a callback message is sent in the conversation. The message is configured with the text property com.unblu.conversation.message.callRequestCallbackMessage.
In addition to the callback message, a system message is displayed to participants informing them that the call couldn’t be placed because no agent is available.
To avoid problems when navigating on your website during calls, visitors can use the "pop-out" feature. This opens the conversation in a separate browser window.
To use the pop out feature at any time during a conversation, visitors can click the pop out icon . This pops the Visitor Individual UI of the current page into a separate window. The video call runs inside this window, making it both much easier to navigate the page and to fix any potential video stutter.
Whether the pop out icon is available or not depends on the configuration properties com.unblu.conversation.popout.popoutEnabled and com.unblu.conversation.actionbar.ui.popOutActionDisplayMode. You can also configure Unblu to open all incoming video calls in a separate window with the configuration property com.unblu.conversation.popout.popoutOnCall.
To change the default size of the pop-out window, adapt the values of com.unblu.visitor.ui.popoutHeight and com.unblu.visitor.ui.popoutWidth. Depending on the visitor’s device or browser settings, however, the pop-out window may open in a new tab rather than a separate window, rendering these settings ineffectual. You therefore shouldn’t rely on the pop-out having the dimensions you specify.
|The Agent Desk doesn’t have the pop-out feature.|
Audio and video calls are always part of a conversation, and the nature of that conversation can differ depending on the scenarios you’re using Unblu in. In a call center environment, for example, conversations are short-lived and you probably want them to end when the visitor hangs up. If your relationship managers use Unblu for long-running conversations with their clients, you most likely don’t want that to happen.
To accommodate these different use cases, you can let users choose what should happen to the conversation when they leave a call. There are four different options:
LEAVE_CALL: Only leave the call. In this case, the conversation continues. For agents, the Agent Desk displays the conversation tab. Visitors see the conversation in the Visitor UI.
CLOSE_CONVERSATION: Leave the call and close the conversation. For agents, this option closes the conversation’s tab in the Agent Desk. For visitors, this displays the conversation overview in the Visitor UI. The conversation continues.
END_CONVERSATION: Leave the call and end the conversation. In this case, the conversation ends. If necessary, Unblu starts the offboarding process for the participants.
LEAVE_CONVERSATION: Leave the call and the conversation. In this case, the participant who left the call also leaves the conversation. They no longer have access to the conversation.
You specify the options available to each participant type in the following configuration properties:
The options are displayed when the user clicks the Leave call icon .
If no options are configured for the participant type, the button isn’t displayed.
If only one option is available, clicking the Leave call button immediately executes that option.
If two or more options are available, clicking the button displays a popup menu where the user can select which option to execute.
The labels for the different options are specified in the following text properties:
The properties are in the
When selecting which options to make available to which participants, take into consideration how the conversation life cycle is configured. If, for example, com.unblu.conversation.lifecycle.autoEndOnLeave is
true for a particular participant type, there’s little point in giving them the two options
END_CONVERSATION, as they’ll both have the same effect. For more information, refer to Leaving vs ending a conversation.
You should also review the configuration property com.unblu.conversation.lifecycle.autoEndOnCallEnd.
In the call UI, Unblu only displays the options that the participant is allowed to use. If visitors, for example, can’t end conversations, but you included the option for them to do so in com.unblu.conversation.call.contextPersonHangUpCallBehaviours, Unblu doesn’t display the option
|Options when leaving a call were introduced in Unblu 7.26.0.|
You can limit access to the controls that turn the microphone and camera on and off in ongoing calls with the following configuration properties:
The configuration properties affect the media settings dialog of the call UI. If a class of media device is disabled, it isn’t displayed in the media settings dialog either.
You can’t disable the speaker selection option in the dialog. Furthermore, not all browsers support speaker selection.
Depending on your setup, there may be a noticeable delay when connecting to an audio or video call. You can configure Unblu to reassure users that the process hasn’t stalled:
If a user starts a call and the call isn’t answered within the time specified in com.unblu.conversation.call.displayRingingLabelDelay, Unblu displays the message defined in com.unblu.conversation.call.labelRingingDelayed.
If the ringing continues for the same period again, Unblu displays the message defined in com.unblu.conversation.call.labelRingingDelayed2. This is repeated three more times, each time displaying the next text property ending in the numbers 3 to 5. The final message, com.unblu.conversation.call.labelRingingDelayed5, is displayed until someone answers or the caller hangs up.
When a user joins an active call and there’s a delay connecting them to the call that lasts longer than the time specified in com.unblu.conversation.call.displayConnectingLabelDelay, Unblu displays the message defined in com.unblu.conversation.call.labelConnectingDelayed.
Once the first participant has joined an audio call (video calls don’t have this feature), Unblu displays the message defined in com.unblu.conversation.call.labelWaitingForOthers until at least one other participant joins. When that happens, the message is replaced with a timer showing the call’s duration.
Both the agent and the visitor can be allowed to take screenshots of the ongoing video call. This can be useful, for example, to capture a visitor’s ID so as to confirm their identity.
The feature is enabled with the configuration property com.unblu.conversation.call.allowTakeSnapshot. To use the feature, click the video snapshot icon at the top of the call view. If there are more than two other participants with their camera on, the snapshot feature takes a snapshot of each participant’s video stream.
Each time a participant takes a snapshot, Unblu uploads snapshot image to the chat as a chat message. If more than one snapshot is taken because more than one other participant has their camera on, each snapshot is uploaded separately.
Snapshots can also be accessed from the file manager panel by clicking the paper clip icon .
Unblu currently supports video calls with up to six participants.
If the visitor navigates to a new page inside the Unblu-instrumented web page, the video connection is disrupted during the page load. The connection is, however, automatically re-established as soon as possible. To overcome this problem the visitor can use the pop out feature.
The video call can only be displayed in one browser window or tab. If the visitor has several browser tabs or windows open that belong to the same Unblu session, the video call will stay in one window.
If the user wants to transfer the video call to a different window they can do so in the chat user interface.
Unblu can be configured in such a way that all video calls are archived. For more information, refer to Archiving audio and video chat.