Add system messages with custom content to the call transcripts during a phone call
For adding system message for use cases other than join and leave message we can add the properties iconName, message that need to be displayed and type as SYSTEM_MESSAGE.
Note: To get the icon name, go to Oracle Images. Not all the icons in the
list are supported as system messages.
Here's a Typescript example for adding system messages that use a custom format:
const frameworkProvider: IUiEventsFrameworkProvider = await CX_SVC_UI_EVENTS_FRAMEWORK.uiEventsFramework.initialize('test', 'v1');
const mcaContext: IMultiChannelAdaptorContext = await frameworkProvider.getMultiChannelAdaptorContext();
const phoneContext: IPhoneContext = await mcaContext.getCommunicationChannelContext('PHONE');
const engagementContext = getEngagementContext(); //Engagement context received on startcomm response
const feedSystemMessageActionRequest: IMcaFeedSystemMessageActionRequest = frameworkProvider.requestHelper.createPublishRequest('FeedSystemMessage') as IMcaFeedSystemMessageActionRequest;
feedSystemMessageActionRequest.setEventId(eventId);
feedSystemMessageActionRequest.setAppClassification(FusionHandler.appClassification);
feedSystemMessageActionRequest.setMessageId('1234);
feedSystemMessageActionRequest.setMessage('Test Message');
feedSystemMessageActionRequest.setIconName('oj-ux-ico-target');
feedSystemMessageActionRequest.setType('SYSTEM_MESSAGE');
feedSystemMessageActionRequest.setTime(Date.now());
feedSystemMessageActionRequest.setUserId(userId);
feedSystemMessageActionRequest.setUsername(username);
await engagementContext.publish(feedSystemMessageActionRequest);
Here's a JavaScript example for adding system messages that use a custom
format:
const frameworkProvider = await CX_SVC_UI_EVENTS_FRAMEWORK.uiEventsFramework.initialize('test', 'v1');
const mcaContext = await frameworkProvider.getMultiChannelAdaptorContext();
const phoneContext = await mcaContext.getCommunicationChannelContext('PHONE');
const engagementContext = getEngagementContext(); //Engagement context received on startcomm response
const feedSystemMessageActionRequest = frameworkProvider.requestHelper.createPublishRequest('FeedSystemMessage');
feedSystemMessageActionRequest.setEventId(eventId);
feedSystemMessageActionRequest.setAppClassification(FusionHandler.appClassification);
feedSystemMessageActionRequest.setMessageId('1234);
feedSystemMessageActionRequest.setMessage('Test Message');
feedSystemMessageActionRequest.setIconName('oj-ux-ico-target');
feedSystemMessageActionRequest.setType('SYSTEM_MESSAGE');
feedSystemMessageActionRequest.setTime(Date.now());
feedSystemMessageActionRequest.setUserId(userId);
feedSystemMessageActionRequest.setUsername(username);
await engagementContext.publish(feedSystemMessageActionRequest);