@microsoft/omnichannel-chat-widget 1.7.4-main.0574a04 → 1.7.4-main.4cdfce2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -21,6 +21,7 @@ class TelemetryHelper {
21
21
  case _TelemetryConstants.ScenarioType.WEBCHAT:
22
22
  return TelemetryHelper.conformToWebChatContract(level, input);
23
23
  case _TelemetryConstants.ScenarioType.OCCHATSDK:
24
+ case _TelemetryConstants.ScenarioType.SDK:
24
25
  return TelemetryHelper.conformToOCChatSDKContract(level, input);
25
26
  case _TelemetryConstants.ScenarioType.ACTIONS:
26
27
  return TelemetryHelper.conformToActionsContract(level, input);
@@ -156,6 +157,7 @@ class TelemetryHelper {
156
157
  event.TransactionId = payload.TransactionId;
157
158
  event.ElapsedTimeInMilliseconds = payload.ElapsedTimeInMilliseconds;
158
159
  event.ExceptionDetails = JSON.stringify(payload.ExceptionDetails);
160
+ event.Description = payload.Description;
159
161
  });
160
162
  }
161
163
  static addChatConfigDataToTelemetry(chatConfig, telemetryInternalData) {
@@ -88,6 +88,10 @@ const HeaderStateful = props => {
88
88
  text: "We're Offline"
89
89
  },
90
90
  onMinimizeClick: () => {
91
+ _TelemetryHelper.TelemetryHelper.logActionEvent(_TelemetryConstants.LogLevel.INFO, {
92
+ Event: _TelemetryConstants.TelemetryEvent.HeaderMinimizeButtonClicked,
93
+ Description: "Header Minimize button clicked."
94
+ });
91
95
  dispatch({
92
96
  type: _LiveChatWidgetActionType.LiveChatWidgetActionType.SET_MINIMIZED,
93
97
  payload: true
@@ -377,14 +377,14 @@ const checkIfConversationStillValid = async (chatSDK, dispatch, state) => {
377
377
  try {
378
378
  chatSDK.requestId = requestIdFromCache;
379
379
  conversationDetails = await (0, _utils.getConversationDetailsCall)(chatSDK, liveChatContext);
380
- if (Object.keys(conversationDetails).length === 0) {
381
- return false;
382
- }
383
- if (conversationDetails.state === _Constants.LiveWorkItemState.Closed || conversationDetails.state === _Constants.LiveWorkItemState.WrapUp) {
380
+ if (Object.keys(conversationDetails).length === 0 || (0, _utils.isNullOrUndefined)(conversationDetails.state) || conversationDetails.state === _Constants.LiveWorkItemState.Closed || conversationDetails.state === _Constants.LiveWorkItemState.WrapUp) {
384
381
  dispatch({
385
382
  type: _LiveChatWidgetActionType.LiveChatWidgetActionType.SET_LIVE_CHAT_CONTEXT,
386
383
  payload: undefined
387
384
  });
385
+ if (currentRequestId) {
386
+ chatSDK.requestId = currentRequestId;
387
+ }
388
388
  return false;
389
389
  }
390
390
  return true;
@@ -15,6 +15,7 @@ export class TelemetryHelper {
15
15
  case ScenarioType.WEBCHAT:
16
16
  return TelemetryHelper.conformToWebChatContract(level, input);
17
17
  case ScenarioType.OCCHATSDK:
18
+ case ScenarioType.SDK:
18
19
  return TelemetryHelper.conformToOCChatSDKContract(level, input);
19
20
  case ScenarioType.ACTIONS:
20
21
  return TelemetryHelper.conformToActionsContract(level, input);
@@ -150,6 +151,7 @@ export class TelemetryHelper {
150
151
  event.TransactionId = payload.TransactionId;
151
152
  event.ElapsedTimeInMilliseconds = payload.ElapsedTimeInMilliseconds;
152
153
  event.ExceptionDetails = JSON.stringify(payload.ExceptionDetails);
154
+ event.Description = payload.Description;
153
155
  });
154
156
  }
155
157
  static addChatConfigDataToTelemetry(chatConfig, telemetryInternalData) {
@@ -79,6 +79,10 @@ export const HeaderStateful = props => {
79
79
  text: "We're Offline"
80
80
  },
81
81
  onMinimizeClick: () => {
82
+ TelemetryHelper.logActionEvent(LogLevel.INFO, {
83
+ Event: TelemetryEvent.HeaderMinimizeButtonClicked,
84
+ Description: "Header Minimize button clicked."
85
+ });
82
86
  dispatch({
83
87
  type: LiveChatWidgetActionType.SET_MINIMIZED,
84
88
  payload: true
@@ -1,6 +1,6 @@
1
1
  import { BroadcastEvent, LogLevel, TelemetryEvent } from "../../../common/telemetry/TelemetryConstants";
2
2
  import { Constants, LiveWorkItemState, WidgetLoadCustomErrorString, WidgetLoadTelemetryMessage } from "../../../common/Constants";
3
- import { checkContactIdError, createTimer, getConversationDetailsCall, getStateFromCache, getWidgetCacheIdfromProps, isNullOrEmptyString, isUndefinedOrEmpty } from "../../../common/utils";
3
+ import { checkContactIdError, createTimer, getConversationDetailsCall, getStateFromCache, getWidgetCacheIdfromProps, isNullOrEmptyString, isNullOrUndefined, isUndefinedOrEmpty } from "../../../common/utils";
4
4
  import { getAuthClientFunction, handleAuthentication } from "./authHelper";
5
5
  import { handleChatReconnect, isPersistentEnabled, isReconnectEnabled } from "./reconnectChatHelper";
6
6
  import { handleStartChatError, logWidgetLoadComplete } from "./startChatErrorHandler";
@@ -369,14 +369,14 @@ const checkIfConversationStillValid = async (chatSDK, dispatch, state) => {
369
369
  try {
370
370
  chatSDK.requestId = requestIdFromCache;
371
371
  conversationDetails = await getConversationDetailsCall(chatSDK, liveChatContext);
372
- if (Object.keys(conversationDetails).length === 0) {
373
- return false;
374
- }
375
- if (conversationDetails.state === LiveWorkItemState.Closed || conversationDetails.state === LiveWorkItemState.WrapUp) {
372
+ if (Object.keys(conversationDetails).length === 0 || isNullOrUndefined(conversationDetails.state) || conversationDetails.state === LiveWorkItemState.Closed || conversationDetails.state === LiveWorkItemState.WrapUp) {
376
373
  dispatch({
377
374
  type: LiveChatWidgetActionType.SET_LIVE_CHAT_CONTEXT,
378
375
  payload: undefined
379
376
  });
377
+ if (currentRequestId) {
378
+ chatSDK.requestId = currentRequestId;
379
+ }
380
380
  return false;
381
381
  }
382
382
  return true;
@@ -34,6 +34,7 @@ export interface OCChatSDKTelemetryData extends BaseTelemetryData {
34
34
  ElapsedTimeInMilliseconds?: number;
35
35
  TransactionId: string;
36
36
  ExceptionDetails?: object;
37
+ Description?: string;
37
38
  }
38
39
  export interface IC3ClientTelemetryData extends BaseTelemetryData {
39
40
  SubscriptionId?: string;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@microsoft/omnichannel-chat-widget",
3
- "version": "1.7.4-main.0574a04",
3
+ "version": "1.7.4-main.4cdfce2",
4
4
  "description": "Microsoft Omnichannel Chat Widget",
5
5
  "main": "lib/cjs/index.js",
6
6
  "types": "lib/types/index.d.ts",
@@ -76,7 +76,7 @@
76
76
  "dependencies": {
77
77
  "@azure/core-tracing": "^1.2.0",
78
78
  "@microsoft/omnichannel-chat-components": "1.1.5",
79
- "@microsoft/omnichannel-chat-sdk": "^1.10.2",
79
+ "@microsoft/omnichannel-chat-sdk": "^1.10.3",
80
80
  "@opentelemetry/api": "^1.9.0",
81
81
  "abort-controller-es5": "^2.0.1",
82
82
  "dompurify": "^2.5.4",