Enable Live Transcripts During a Phone Call

To enable the live transcript feature, you must subscribe to onToolbarAgentCommand event and during getActiveInteractionCommands, create a response object as follows.

Here's an example of the Response object structure for the transcriptEnabled flag:

{
	'supportedCommands': [],
    'supportedFeatures': [ // Add feature 'transcriptEnabled' and set isEnabled to true
     {
         'name': 'transcriptEnabled',
         'isEnabled': true
      }
    ]
}

Once this feature is enabled, the Notes field in the Fusion Engagement panel is replaced with a transcript component and the messages, "agent joined the call" and "customer joined the call" are shown in the Engagement panel along with a Call Details button. Agents can enter notes during a call by clicking the Call Details button.

Here's a Typescript example:
const frameworkProvider: IUiEventsFrameworkProvider = await CX_SVC_UI_EVENTS_FRAMEWORK.uiEventsFramework.initialize('MyFirstExtensionID', 'v1');  
const mcaContext: IMultiChannelAdaptorContext = await frameworkProvider.getMultiChannelAdaptorContext();
const phoneContext: IPhoneContext = await mcaContext.getCommunicationChannelContext('PHONE') as IPhoneContext;
const request = frameworkProvider.requestHelper.createSubscriptionRequest('onToolbarAgentCommand');
phoneContext.subscribe(request, (response) => {
const agentCommandResponse: IMcaOnToolbarAgentCommandEventResponse = response as IMcaOnToolbarAgentCommandEventResponse;
return new Promise((resolve, reject) => {
    const agentCommandResponseData: IMcaOnToolbarAgentCommandDataResponse = agentCommandResponse.getResponseData();
    const commandObject: IMcaOnToolbarInteractionCommandData = agentCommandResponse.getResponseData().getData();
    const command: string = agentCommandResponse.getResponseData().getCommand();
    if (command === 'getActiveInteractionCommands') {
        const outData = {
            'supportedCommands': [],
            'supportedFeatures': [
                    {
                     'name': 'transcriptEnabled',
                     'isEnabled': true
                    }
                ]
            };
            agentCommandResponseData.setOutdata(outData);
            commandObject.result = 'success';
        }
        resolve(commandObject);
    })
})
Here's a JavaScript example:
const provider = await CX_SVC_UI_EVENTS_FRAMEWORK.uiEventsFramework.initialize('test', 'v1');
 
const mcaContext = await provider.getMultiChannelAdaptorContext();
const phoneContext = await mcaContext.getCommunicationChannelContext('PHONE');
 
const request = provider.requestHelper.createSubscriptionRequest('onToolbarAgentCommand');
     phoneContext.subscribe(request, (response) => {
           const agentCommandResponse = response;
           return new Promise((resolve, reject) => {
               const agentCommandResponseData = agentCommandResponse.getResponseData();
               const commandObject = agentCommandResponse.getResponseData().getData();
               const command = agentCommandResponse.getResponseData().getCommand();
               if (command === 'getActiveInteractionCommands') {
                   const outData = {
                      // For Enabling the features set isEnabled as true
                       'supportedFeatures': [
                           {
                           'name': 'transcriptEnabled',
                           'isEnabled': true
                           }
                       ]
                   };
                   agentCommandResponseData.setOutdata(outData);
                   commandObject.result = 'success';
               }
              resolve(commandObject);
           })
       })