Supervisors in a contact center can monitor live calls handled by agents directly through the Supervisor Dashboard. This feature enables supervisors to silently join ongoing calls, provide assistance to agents, and view real-time transcriptions of the conversations.
Monitoring active calls
When an agent is part of a supervised group, supervisors can monitor their active calls from the Supervisor Dashboard.
By clicking Monitor on an active call, a supervisor can:
- View conversation entries and real-time transcriptions.
- Join the live conversation silently by clicking Listen In.
- If supported, barge in and speak with the agent by clicking Conference.
In barge-in mode, only the agent can hear the supervisor, not the customer. Supervisors can leave the call anytime by clicking Leave call.
Note: The Leave Call button on the Omni-Channel widget is currently not functional. Supervisors should leave the call using the monitoring screen instead. Salesforce plans to remove the non-functional button in release version 260.
Requirements for Listen In and Barge In
To enable Listen In and Barge In features, several configurations must be in place.
Required configurations
-
Supervisor permissions
- In Permission Sets, assign both:
- Contact Center Supervisor
- Contact Center Agent (Partner Telephony)
- In Permission Sets, assign both:
-
Access and setup
- The supervisor must:
- Belong to the same contact center they supervise.
- Have access to the Omni-Channel widget.
- Be assigned the SCV supervisor user permission.
- The supervisor must:
-
Omni-Channel setup
- Create an Omni-Channel Supervisor configuration.
- Add Omni-Channel Supervisor to:
- Set up a supervisor queue.
After setup, supervisors will see the Listen In button enabled when monitoring a voice call.
Important: Supervisors must be logged in to the Omni-Channel to access the Listen In option. If not logged in, the option will not appear.
Technical details: Supervisor Listen In
When a supervisor clicks Listen In, the call information is passed to the vendor’s connector via the superviseCall(supervisedCallInfo) method.
This method:
- Creates a call leg between the supervisor and the parent call.
- Updates the list of active calls.
- Returns a promise of type SupervisorCallResult.
Hard phone scenario
- After the promise resolves, the supervisor call leg enters the Dialing state.
- The hard phone should publish the
SUPERVISOR_CALL_STARTEDevent once the supervisor answers.
Softphone scenario
- After the promise resolves, the supervisor call leg enters the Connected state.
- No additional events are fired.
Disconnecting
When leaving a call:
-
Softphone: The
supervisorDisconnect(call)method destroys the supervisor call leg and updates the active calls list. -
Hard phone: The vendor implementation must destroy the supervisor leg, update the active calls list, and fire the
SUPERVISOR_HANGUPevent.
Sample implementation:
// Initiate supervisor call on a deskphone
superviseCallonHardphone(call){
return await sdk.superviseCall(call);
}
// Connect supervisor call after pickup
connectSupervisedCallonHardphone(call){
try {
const result = await sdk.connectSupervisedCall(call);
publishEvent({ eventType: constants.VOICE_EVENT_TYPE.SUPERVISOR_CALL_CONNECTED, new SuperviseCallResult(call) });
} catch (e) {
publishError(constants.VOICE_EVENT_TYPE.SUPERVISOR_CALL_CONNECTED, e);
}
}
Technical details: Supervisor Barge In
When a supervisor barges in, the same VoiceCall record is used. The participant type is created automatically and reused for transcription.
API Example:
POST /voiceCalls/${vendorCallKey}/messages
{
messageId,
content,
senderType: "SUPERVISOR",
startTime,
endTime,
participantId: "supervisorId"
}
Recording controls
Supervisors can toggle recording if all the following are true:
-
CapabilitiesResult.hasRecordis true. -
callInfo.recordEnabledis true. - Both
hasSupervisorListenInandhasSupervisorBargeInare true. - The call is connected.
When these conditions are met, the same pauseRecording() and resumeRecording() functions can be used.
Supervisor UI overview
Listen In
When a supervisor clicks Listen In, they can silently hear the ongoing conversation between the agent and the customer.
Barge In
Supervisors can barge in using the Conference button if the agent requires assistance.
During a barge-in:
- The supervisor’s voice is audible only to the agent.
- A mute button becomes available for toggling.
Real-time transcription during supervision
Supervisors can view the real-time transcription of an active conversation between the agent and the customer.
Agent view
Agents see the live transcription in the Enhanced Conversation component on the Voice record detail page.
Supervisor view
Supervisors can monitor the same live transcription feed in real time.
Enhanced Conversation component
The Enhanced Conversation (also known as Conversation Body) is a standard Salesforce Lightning component that displays real-time transcriptions.
To add it:
- Open the VoiceCall record page in Lightning App Builder.
- Select Edit Page.
- Add the Enhanced Conversation component to the layout.
This component displays live transcriptions provided by Aircall’s backend APIs during an active call.
Supervisor Whisper
Supervisors can send private messages to agents during a call through the Whisper feature.
- Agents receive messages as notifications (a red dot on the flag icon).
- Clicking the flag opens the supervisor’s message.
- Agents can respond through the same interface.
Agents can also raise a “Help!” flag to request assistance. Supervisors see the alert on their dashboard and can resolve it once the query is addressed.
Known limitations
Limitation 1: Leave call button
The Leave Call button appears in both the monitoring screen and the Omni Widget. The button on the Omni Widget is non-functional. Supervisors must leave the call using the monitoring screen.
Limitation 2: Disconnected calls are visible for monitoring
Disconnected calls may still appear on the supervisor’s monitoring screen, with the Listen In option active. This occurs because the AgentWork record remains open until the agent manually closes the Voice Call tab.
Note: This is expected behavior as confirmed by Salesforce. The call remains visible until the AgentWork record is closed.
Limitation 3: Custom fields on the Agent Summary Tab
It is not possible to display custom fields on the Omni Supervisor “Agent Summary Tab” to indicate call status for disconnected calls. Only standard out-of-box fields from the Service Reps Tab Fields are supported.