機械翻訳について

OnBeforeMessageSend

サービス・リクエストなどのオブジェクトを開くと、エージェントは「メッセージの作成」スマート・アクションを開くことができます。

メッセージの作成パネルが開き、エージェントがメッセージを送信できます。 このイベントは、APIリクエストを起動して特定のレコードのメッセージを送信する前に起動されます。 ユーザーは、このイベントのコールバックで非同期操作を実行し、このイベントを解決または取り消すことができます。 このイベントは、非同期操作が完了するのを待機します。 このイベントでは、ユーザーは操作を承認または取り消すことによって、VBで発生するメッセージ送信フローを制御できます。

イベント・リクエストでは、ユーザーは、このイベントをサブスクライブするメッセージ・タイプを渡す必要があります。

このイベントのサブスクライブ中に渡す必要があるメッセージの作成スマート処理タイプを次に示します。

  • 内部ノートの作成(メッセージ・タイプ: ORA_SVC_INTERNAL_NOTE)
  • Eメールの作成(メッセージ・タイプ: ORA_SVC_EMAIL)
  • Webメッセージの作成(メッセージ・タイプ: ORA_SVC_WEB)
  • 顧客メッセージの取得(メッセージ・タイプ: ORA_SVC_CUSTOMER_ENTRY)
  • メッセージの作成(前述のすべてのスーパー・セット)。 メッセージ・タイプ: ANY)
    ノート: OnBeforeMessageSendは、RecordContextからリスニング可能なイベントです。

Typescriptの例を次に示します:

/// <reference path="uiEventsFramework.d.ts"/>  
       const frameworkProvider: IUiEventsFrameworkProvider = await CX_SVC_UI_EVENTS_FRAMEWORK.uiEventsFramework.initialize('MyFirstExtensionID');
    const tabContext = await frameworkProvider.getTabContext();
    const recordContext = await tabContext.getActiveRecord();
    const requestObject: IComposeMessageEventRequest = frameworkProvider.requestHelper.createSubscriptionRequest('cxEventBusOnBeforeMessageSendEvent') as IComposeMessageEventRequest;
    requestObject.setMessageType('ORA_SVC_WEB');
    recordContext.subscribe(requestObject, (message: IEventResponse) => {
        const response: IComposeMessageEventResponse = message as IComposeMessageEventResponse;
        const messageType: string = response.getResponseData().getMessageType(); return new Promise((resolve, reject) => {
		return new Promise((resolve, reject) => {
			//    custom logic to resolve or reject the message send flow.
		}); 
    });

JavaScriptの例を次に示します:

const frameworkProvider = await CX_SVC_UI_EVENTS_FRAMEWORK.uiEventsFramework.initialize('MyFirstExtensionID'); 
    const tabContext = await frameworkProvider.getTabContext();
    const recordContext = await tabContext.getActiveRecord();
    requestObject.setMessageType('ORA_SVC_WEB'); 
    const requestObject = frameworkProvider.requestHelper.createSubscriptionRequest('cxEventBusOnBeforeMessageSendEvent');
    recordContext.subscribe(requestObject, (response) => {
        const messageType = response.getResponseData().getMessageType();
		 return new Promise((resolve, reject) => {
			//    custom logic to resolve or reject the message send flow.
		}); 
    });