Publish Action to show Insights

Here's a Typescript example to show Insights, considering recordContext as the current browser tab's active record:

const frameworkProvider: IUiEventsFrameworkProvider = await CX_SVC_UI_EVENTS_FRAMEWORK.uiEventsFramework.initialize('MyFirstExtensionID','V1');
const tabContext: ITabContext = await frameworkProvider.getCurrentBrowserTabContext();
let recordContext: IRecordContext = await tabContext.getActiveRecord();        
let insightContext: IInsightsContext = await recordContext.getInsightsContext();
const payload: IShowInsightsRequest = frameworkProvider.requestHelper.createPublishRequest('ShowInsights') as IShowInsightsRequest;
payload.setId('insightsId1');
payload.setTitle('Custom title');
insightContext.publish(payload).then((response: IOperationResponse) => {
  const insightsOperationResponse = response as IInsightsOperationResponse;
  console.log((insightsOperationResponse.getResponseData() as IInsightsOperationResponseData).getInsightsId());
});

Here's a JavaScript example to show Insights, considering recordContext as the current browser tab's active record:

const frameworkProvider = await CX_SVC_UI_EVENTS_FRAMEWORK.uiEventsFramework.initialize('MyFirstExtensionID', 'V1');
       const tabContext = await frameworkProvider.getCurrentBrowserTabContext();
       let recordContext = await tabContext.getActiveRecord();
       let insightContext = await recordContext.getInsightsContext();
       const payload = frameworkProvider.requestHelper.createPublishRequest('ShowInsights');
       payload.setId('insightsId1');
       payload.setTitle('Custom title');
       insightContext.publish(payload).then((response) => {
           const insightsOperationResponse = response;
           console.log(insightsOperationResponse.getResponseData().getInsightsId());
       });