機械翻訳について

コンテキストとは何ですか。

コンテキストは、特定の領域に関連する操作およびイベントをカプセル化するエンティティです。

たとえば、オブジェクトに関連するすべてのAPIは、recordContextにカプセル化されます。 フレームワークが初期化され、コンテキストが取得されたら、レコードの入力フィールド値の設定、テキスト領域にロードされた値の取得、エージェントがフィールドの値を更新した場合、イベントがレコード・レベルで起動されるなどのレコード・レベルの操作を実行できます。 特定のユースケースには、他のコンテキストがあります。

すべてのコンテキストを示す図。

現在使用可能なコンテキストを次のリストに示します:
  • GlobalContext: このコンテキストは、グローバル・レベルに関連するイベントおよび操作をカプセル化します。 たとえば、新しいMSIタブまたはブラウザ・タブでSRを開くと、グローバル・レベルで発生しているイベントになります。 そのため、タブ・オープン・イベントは、GlobalContextでリスニングするために使用できるイベントです。 タイプの詳細は、IGlobalContextを参照してください。
  • TabContext: このコンテキスト・レベルでは、特定のタブをフォーカスまたはクローズできます。 または、開いているイベント・コンテキストにサブスクライブできます。つまり、このイベントが起動されると、特定のタブにロードされたコンテンツにアクセスできます。 タイプの詳細は、ITabContextを参照してください。
  • レコード・コンテキスト:: イベントのフィールド関連操作をカプセル化します。 たとえば、フィールド値の設定、入力フィールドからの値の読取り、またはフィールド値の変更のリスニングを行います。 型の詳細は、IRecordContextを参照してください
  • SidePaneContext: このコンテキストでは、特定のサイド・ペインを展開または縮小できます。サイド・ペインのコンテンツを更新できます。 サイド・ペインのオープン・イベントとクローズ・イベントをサブスクライブできます。 型の詳細は、ISidePaneContextを参照してください
  • モーダル・ウィンドウ・コンテキスト: : このコンテキスト・レベルでは、モーダル/ポップアップをオープン/クローズできます。
  • NotificationContext: このコンテキスト・レベルでは、通知の表示およびクローズをオープン/クローズし、通知のクローズ処理および処理トリガー・イベントをリスニングできます。
  • MultiChannelAdaptorContext: このオブジェクトは、テレフォニックまたはチャットの相互作用が発生した場合に、様々なチャネルでイベントおよびアクションをカプセル化します。
  • PhoneContext: このオブジェクトは、PHONEとしてチャネル・タイプを渡すことで、getCommunicationChannelContextをコールしてMultiChannelAdaptorContextオブジェクトから導出できます。
  • InsightsContext: このコンテキスト・レベルでは、インサイトを開放/却下し、インサイトのクローズ・アクションおよびアクション・トリガー・イベントをリスニングできます。

考えてみよう: TabOpenイベントは、GlobalContextレベルでトリガーされます。 RecordOpenイベントがタブ・コンテキスト・レベルでトリガーされ、FieldValueChangeイベントがRecordContextレベルでトリガーされます。

詳細はこちら:

コンテキスト・タイプ サポートされているイベント サポートされている操作 コンテキストを取得するためのAPI
GlobalContext TabOpen, TabClose, TabChange, CustomEvent PopOperation (タブを開く/ページをポップするレコード)、InvokeServiceConnection、GetAgentInfo、CustomEvent getGlobalContext(): Promise<IGlobalContext>;
TabContext ContextOpen, ContextClose, CustomEvent FocusTab, CloseTab, PopOperation, GetAgentInfo, CustomEvent, OpenModal, CloseModal, OpenPopup, ClosePopup getTabContext(browserTabId?: string): Promise<ITabContext>;
RecordContext FieldValueChange, OnBeforeSave(Controllable Event), OnAfterSave, OnDataLoad, CustomEvent GetFieldValue, SaveRecord, SetFieldValue, CustomEvent getAvailableRecords(tabId?: string): Promise<IRecordContext[]>;
SidePaneContext SidePaneOpen, SidePaneClose 「サイドを展開」ペイン、「サイドを折りたたむ」ペイン、「更新サイド」ペイン getSidePaneContext(sidePaneId: string): Promise<ISidePaneContext>;
ModalWindowContext NA 「モーダルを開く」、「モーダルを閉じる」、「ポップアップを開く」、「ポップアップを閉じる」 getModalWindowContext(): Promise<IModalWindowContext>;
MultiChannelAdaptorContext NA NA getMultiChannelAdaptorContext(): Promise<IMultiChannelAdaptorContext>;
PhoneContext OnToolbarAgentCommand, OnToolbarInteractionCommand, OnDataUpdated, OnOutgoingEvent NewCommEvent, StartCommEvent, CloseCommEvent, OutboundCommError, GetConfiguration, DisableFeature, ReadyForOperation, AgentStateEvent getCommunicationChannelContext(channelType: McaChannels): Promise<ICommunicationChannelContext>;
NotificationContext OnNotificationAction, OnNotificationCloseAction ShowNotification, CloseNotification getNotificationContext(): Promise<INotificationContext>;
InsightsContext OnInsightsAction, OnInsightsDismissAction ShowInsights, DismissInsights getInsightsContext(): Promise<IInsightsContext>;
ノート: OnBeforeSave (レコード・コンテキスト内)は、データをサーバーにコミットするREST APIを起動する前に起動されます。 このコールバックで非同期操作を実行することも、このイベントを取り消すこともできます。 このイベントは、非同期操作の完了を待機できます