IInsightsContext
IInsightsContextは、recordContextで使用できます。 IInsightsContextは、コンポジット・コンポーネント・アーキテクチャ(CCA)イベント内のエージェント・インサイトをリスニングし、操作を実行する機能を提供します。 たとえば、「新しいインサイトの公開」、「インサイトのリスニング」アクション・トリガー・イベントなどです。
IInsightsContextへの参照を取得するために、ユーザーはrecordContextからgetInsightsContext関数を使用できます。 この関数は、インサイトへの参照を提供します。
構文は次のとおりです:
getInsightsContext(): Promise<IInsightsContext>;
/// <reference path="uiEventsFramework.d.ts"/>
const insightContext: IInsightContext = await recordContext.getInsightsContext();const insightContext = await recordContext.getInsightsContext();関数
サブスクライブ
このファンクションを使用して、Set FieldValueサブスクリプションのレスポンス・データを取得します。
subscribe: (payload: IEventSubscriptionPayload, callbackFunction: (response:IEventResponsePayload) => void) => ISubscriptionContext;| パラメータ名 | 必須かどうか | 説明 |
|---|---|---|
| payload | はい | サブスクライブするイベントのリクエスト・オブジェクト。 |
| callbackFunction | はい | 引数としてイベント・レスポンスを取得するコールバック関数。 |
let recordContext: IRecordContext = await uiEventsFrameworkInstance.getCurrentBrowserTabContext().getActiveRecord();
let insightContext: IInsightContext = await recordContext.getInsightsContext();
const payload: IInsightsSubscriptionRequest = uiEventsFrameworkInstance.requestHelper.createSubscriptionRequest('cxEventBusOnInsightsDismissActionEvent');
payload.setId('insightsId1');
insightContext.subscribe(requestObject, (response: IInsightsDismissActionEventResponse ) => {
console.log((response.getResponseData() as IInsightsDismissActionData).getInsightsId());
console.log((response.getResponseData() as IInsightsDismissActionData).getReason());
}); let recordContext = await uiEventsFrameworkInstance.getCurrentBrowserTabContext().getActiveRecord();
let insightContext = await recordContext.getInsightsContext();
const payload = uiEventsFrameworkInstance.requestHelper.createSubscriptionRequest('cxEventBusOnInsightsDismissActionEvent');
payload.setId('insightsId1');
insightContext.subscribe(requestObject, (response ) => {
console.log(response.getResponseData().getInsightsId());
console.log(response.getResponseData().getReason());
});subscribeOnce
このAPIを使用して、Fusionイベントを1回のみサブスクライブできます。 このAPIを使用すると、外部アプリケーションはFusionアプリケーションからアプリケーション・レベルのイベントをリスニングできます。 ただし、このサブスクリプションは、最初の通知後に自動的に破棄されます。
subscribeOnce: (payload: IEventSubscriptionPayload, callbackFunction: (response: IEventResponsePayload) => void => ISubscriptionContext;| パラメータ名 | 必須かどうか | 説明 |
|---|---|---|
| payload | はい | サブスクライブするイベントのリクエスト・オブジェクト。 |
| callbackFunction | はい | 引数としてイベント・レスポンスを取得するコールバック関数。 |
let recordContext: IRecordContext = await uiEventsFrameworkInstance.getCurrentBrowserTabContext().getActiveRecord();
let insightContext: IInsightContext = await recordContext.getInsightsContext();
const payload: IInsightsSubscriptionRequest = uiEventsFrameworkInstance.requestHelper.createSubscriptionRequest('cxEventBusOnInsightsDismissActionEvent');
payload.setId('insightsId1');
insightContext.subscribeOnce(requestObject, (response: IInsightsDismissActionEventResponse ) => {
console.log((response.getResponseData() as IInsightsDismissActionData).getInsightsId());
console.log((response.getResponseData() as IInsightsDismissActionData).getReason());
});let recordContext = await uiEventsFrameworkInstance.getCurrentBrowserTabContext().getActiveRecord();
let insightContext = await recordContext.getInsightsContext();
const payload = uiEventsFrameworkInstance.requestHelper.createSubscriptionRequest('cxEventBusOnInsightsDismissActionEvent');
payload.setId('insightsId1');
insightContext.subscribeOnce(requestObject, (response ) => {
console.log(response.getResponseData().getInsightsId());
console.log(response.getResponseData().getReason());
});公開
このAPIは、アクションを実行するためにインサイトCCAに通知できます。 APIは、then-catchブロックを追加できるpromiseを返します。 thenブロックは、操作のステータスと、プロセスの完了後に返されるデータを返します。
ublish: (requestObject: IOperationRequest) => Promise<IOperationResponse>;let recordContext: IRecordContext = await uiEventsFrameworkInstance.getCurrentBrowserTabContext().getActiveRecord();
let insightContext: IInsightContext = await recordContext.getInsightsContext();
const payload: IShowInsightsRequest = uiEventsFrameworkInstance.requestHelper.createPublishRequest('ShowInsights');
payload.setId('insightsId1');
payload.setTitle('Custom title');
insightContext.publish(payload).then((response: IInsightsOperationResponse) => {
console.log((response.getResponseData() as IInsightsOperationResponseData).getInsightsId());
}); let recordContext = await uiEventsFrameworkInstance.getCurrentBrowserTabContext().getActiveRecord();
let insightContext = await recordContext.getInsightsContext();
const payload = uiEventsFrameworkInstance.requestHelper.createPublishRequest('ShowInsights');
payload.setId('insightsId1');
payload.setTitle('Custom title');
insightContext.publish(payload).then((response) => {
console.log(response.getResponseData().getInsightsId());
}); 処分
このAPIは、イベントに追加されたサブスクリプションを処分または登録解除できます。 サブスクリプションを処分することで、APIはクライアント側レシーバへのそれ以上の通知をトリガーしません。
dispose:() => void;getSupportedEvents
このメソッドは、globalContext上でサポートされているすべてのイベントを返します。
getSupportedEvents(): string[];getSupportedActions
このメソッドは、GlobalContext上でサポートされているすべてのアクションを返します。
getSupportedActions(): string[];