通話中のライブ・トランスクリプトの有効化
ライブ・トランスクリプト機能を有効にするには、onToolbarAgentCommandイベントにサブスクライブし、getActiveInteractionCommands中に次のようにレスポンス・オブジェクトを作成する必要があります。
transcriptEnabledフラグのResponseオブジェクト構造の例を次に示します:
{
'supportedCommands': [],
'supportedFeatures': [ // Add feature 'transcriptEnabled' and set isEnabled to true
{
'name': 'transcriptEnabled',
'isEnabled': true
}
]
}
この機能を有効にすると、Fusionエンゲージメント・パネルの「ノート」フィールドがトランスクリプト・コンポーネントに置換され、メッセージ「エージェントがコールに参加しました」および「顧客がコールに参加しました」が「エンゲージメント」パネルに「コール詳細」ボタンとともに表示されます。 エージェントは、「コール詳細」ボタンをクリックして、コール中にノートを入力できます。
Typescriptの例を次に示します:
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);
})
})
JavaScriptの例を次に示します:
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);
})
})