@webex/contact-center 3.9.0-next.6 → 3.9.0-next.7

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.
Files changed (34) hide show
  1. package/dist/cc.js +14 -0
  2. package/dist/cc.js.map +1 -1
  3. package/dist/metrics/MetricsManager.js +1 -1
  4. package/dist/metrics/MetricsManager.js.map +1 -1
  5. package/dist/metrics/constants.js +2 -0
  6. package/dist/metrics/constants.js.map +1 -1
  7. package/dist/services/core/GlobalTypes.js.map +1 -1
  8. package/dist/services/core/Utils.js +47 -2
  9. package/dist/services/core/Utils.js.map +1 -1
  10. package/dist/services/core/aqm-reqs.js +0 -4
  11. package/dist/services/core/aqm-reqs.js.map +1 -1
  12. package/dist/services/core/websocket/WebSocketManager.js +0 -4
  13. package/dist/services/core/websocket/WebSocketManager.js.map +1 -1
  14. package/dist/services/task/index.js +122 -52
  15. package/dist/services/task/index.js.map +1 -1
  16. package/dist/types/metrics/constants.d.ts +1 -0
  17. package/dist/types/services/core/GlobalTypes.d.ts +25 -0
  18. package/dist/types/services/core/Utils.d.ts +16 -1
  19. package/dist/webex.js +1 -1
  20. package/package.json +1 -1
  21. package/src/cc.ts +15 -0
  22. package/src/metrics/MetricsManager.ts +1 -1
  23. package/src/metrics/constants.ts +3 -0
  24. package/src/services/core/GlobalTypes.ts +27 -0
  25. package/src/services/core/Utils.ts +57 -1
  26. package/src/services/core/aqm-reqs.ts +0 -5
  27. package/src/services/core/websocket/WebSocketManager.ts +0 -4
  28. package/src/services/task/index.ts +124 -28
  29. package/test/unit/spec/metrics/MetricsManager.ts +0 -1
  30. package/test/unit/spec/services/core/aqm-reqs.ts +1 -3
  31. package/test/unit/spec/services/core/websocket/WebSocketManager.ts +0 -4
  32. package/test/unit/spec/services/task/index.ts +153 -111
  33. package/umd/contact-center.min.js +2 -2
  34. package/umd/contact-center.min.js.map +1 -1
@@ -331,15 +331,21 @@ class Task extends _events.default {
331
331
  }
332
332
  return Promise.resolve(); // TODO: reject for extension as part of refactor
333
333
  } catch (error) {
334
- const {
335
- error: detailedError
336
- } = (0, _Utils.getErrorDetails)(error, _constants2.METHODS.ACCEPT, _constants.TASK_FILE);
334
+ const err = (0, _Utils.generateTaskErrorObject)(error, _constants2.METHODS.ACCEPT, _constants.TASK_FILE);
335
+ const taskErrorProps = {
336
+ trackingId: err.data?.trackingId,
337
+ errorMessage: err.data?.message,
338
+ errorType: err.data?.errorType,
339
+ errorData: err.data?.errorData,
340
+ reasonCode: err.data?.reasonCode
341
+ };
337
342
  this.metricsManager.trackEvent(_constants3.METRIC_EVENT_NAMES.TASK_ACCEPT_FAILED, {
338
343
  taskId: this.data.interactionId,
339
344
  error: error.toString(),
345
+ ...taskErrorProps,
340
346
  ..._MetricsManager.default.getCommonTrackingFieldForAQMResponseFailed(error.details)
341
347
  }, ['operational', 'behavioral', 'business']);
342
- throw detailedError;
348
+ throw err;
343
349
  }
344
350
  }
345
351
 
@@ -372,10 +378,8 @@ class Task extends _events.default {
372
378
  });
373
379
  return Promise.resolve();
374
380
  } catch (error) {
375
- const {
376
- error: detailedError
377
- } = (0, _Utils.getErrorDetails)(error, _constants2.METHODS.TOGGLE_MUTE, _constants.TASK_FILE);
378
- throw detailedError;
381
+ const err = (0, _Utils.generateTaskErrorObject)(error, _constants2.METHODS.TOGGLE_MUTE, _constants.TASK_FILE);
382
+ throw err;
379
383
  }
380
384
  }
381
385
 
@@ -413,15 +417,21 @@ class Task extends _events.default {
413
417
  });
414
418
  return Promise.resolve();
415
419
  } catch (error) {
416
- const {
417
- error: detailedError
418
- } = (0, _Utils.getErrorDetails)(error, _constants2.METHODS.DECLINE, _constants.TASK_FILE);
420
+ const err = (0, _Utils.generateTaskErrorObject)(error, _constants2.METHODS.DECLINE, _constants.TASK_FILE);
421
+ const taskErrorProps = {
422
+ trackingId: err.data?.trackingId,
423
+ errorMessage: err.data?.message,
424
+ errorType: err.data?.errorType,
425
+ errorData: err.data?.errorData,
426
+ reasonCode: err.data?.reasonCode
427
+ };
419
428
  this.metricsManager.trackEvent(_constants3.METRIC_EVENT_NAMES.TASK_DECLINE_FAILED, {
420
429
  taskId: this.data.interactionId,
421
430
  error: error.toString(),
431
+ ...taskErrorProps,
422
432
  ..._MetricsManager.default.getCommonTrackingFieldForAQMResponseFailed(error.details || {})
423
433
  }, ['operational', 'behavioral']);
424
- throw detailedError;
434
+ throw err;
425
435
  }
426
436
  }
427
437
 
@@ -478,16 +488,22 @@ class Task extends _events.default {
478
488
  });
479
489
  return response;
480
490
  } catch (error) {
481
- const {
482
- error: detailedError
483
- } = (0, _Utils.getErrorDetails)(error, _constants2.METHODS.HOLD, _constants.TASK_FILE);
491
+ const err = (0, _Utils.generateTaskErrorObject)(error, _constants2.METHODS.HOLD, _constants.TASK_FILE);
492
+ const taskErrorProps = {
493
+ trackingId: err.data?.trackingId,
494
+ errorMessage: err.data?.message,
495
+ errorType: err.data?.errorType,
496
+ errorData: err.data?.errorData,
497
+ reasonCode: err.data?.reasonCode
498
+ };
484
499
  this.metricsManager.trackEvent(_constants3.METRIC_EVENT_NAMES.TASK_HOLD_FAILED, {
485
500
  taskId: this.data.interactionId,
486
501
  mediaResourceId: this.data.mediaResourceId,
487
502
  error: error.toString(),
503
+ ...taskErrorProps,
488
504
  ..._MetricsManager.default.getCommonTrackingFieldForAQMResponseFailed(error.details || {})
489
505
  }, ['operational', 'behavioral']);
490
- throw detailedError;
506
+ throw err;
491
507
  }
492
508
  }
493
509
 
@@ -551,17 +567,23 @@ class Task extends _events.default {
551
567
  });
552
568
  return response;
553
569
  } catch (error) {
554
- const {
555
- error: detailedError
556
- } = (0, _Utils.getErrorDetails)(error, _constants2.METHODS.RESUME, _constants.TASK_FILE);
570
+ const err = (0, _Utils.generateTaskErrorObject)(error, _constants2.METHODS.RESUME, _constants.TASK_FILE);
557
571
  const mainInteractionId = this.data.interaction?.mainInteractionId;
572
+ const taskErrorProps = {
573
+ trackingId: err.data?.trackingId,
574
+ errorMessage: err.data?.message,
575
+ errorType: err.data?.errorType,
576
+ errorData: err.data?.errorData,
577
+ reasonCode: err.data?.reasonCode
578
+ };
558
579
  this.metricsManager.trackEvent(_constants3.METRIC_EVENT_NAMES.TASK_RESUME_FAILED, {
559
580
  taskId: this.data.interactionId,
560
581
  mainInteractionId,
561
582
  mediaResourceId: mainInteractionId ? this.data.interaction.media[mainInteractionId].mediaResourceId : '',
583
+ ...taskErrorProps,
562
584
  ..._MetricsManager.default.getCommonTrackingFieldForAQMResponseFailed(error.details || {})
563
585
  }, ['operational', 'behavioral']);
564
- throw detailedError;
586
+ throw err;
565
587
  }
566
588
  }
567
589
 
@@ -631,14 +653,20 @@ class Task extends _events.default {
631
653
  });
632
654
  return response;
633
655
  } catch (error) {
634
- const {
635
- error: detailedError
636
- } = (0, _Utils.getErrorDetails)(error, _constants2.METHODS.END, _constants.TASK_FILE);
656
+ const err = (0, _Utils.generateTaskErrorObject)(error, _constants2.METHODS.END, _constants.TASK_FILE);
657
+ const taskErrorProps = {
658
+ trackingId: err.data?.trackingId,
659
+ errorMessage: err.data?.message,
660
+ errorType: err.data?.errorType,
661
+ errorData: err.data?.errorData,
662
+ reasonCode: err.data?.reasonCode
663
+ };
637
664
  this.metricsManager.trackEvent(_constants3.METRIC_EVENT_NAMES.TASK_END_FAILED, {
638
665
  taskId: this.data.interactionId,
666
+ ...taskErrorProps,
639
667
  ..._MetricsManager.default.getCommonTrackingFieldForAQMResponseFailed(error.details || {})
640
668
  }, ['operational', 'behavioral', 'business']);
641
- throw detailedError;
669
+ throw err;
642
670
  }
643
671
  }
644
672
 
@@ -720,16 +748,22 @@ class Task extends _events.default {
720
748
  });
721
749
  return response;
722
750
  } catch (error) {
723
- const {
724
- error: detailedError
725
- } = (0, _Utils.getErrorDetails)(error, _constants2.METHODS.WRAPUP, _constants.TASK_FILE);
751
+ const err = (0, _Utils.generateTaskErrorObject)(error, _constants2.METHODS.WRAPUP, _constants.TASK_FILE);
752
+ const taskErrorProps = {
753
+ trackingId: err.data?.trackingId,
754
+ errorMessage: err.data?.message,
755
+ errorType: err.data?.errorType,
756
+ errorData: err.data?.errorData,
757
+ reasonCode: err.data?.reasonCode
758
+ };
726
759
  this.metricsManager.trackEvent(_constants3.METRIC_EVENT_NAMES.TASK_WRAPUP_FAILED, {
727
760
  taskId: this.data.interactionId,
728
761
  wrapUpCode: wrapupPayload.auxCodeId,
729
762
  wrapUpReason: wrapupPayload.wrapUpReason,
763
+ ...taskErrorProps,
730
764
  ..._MetricsManager.default.getCommonTrackingFieldForAQMResponseFailed(error.details || {})
731
765
  }, ['operational', 'behavioral', 'business']);
732
- throw detailedError;
766
+ throw err;
733
767
  }
734
768
  }
735
769
 
@@ -788,15 +822,21 @@ class Task extends _events.default {
788
822
  });
789
823
  return result;
790
824
  } catch (error) {
791
- const {
792
- error: detailedError
793
- } = (0, _Utils.getErrorDetails)(error, _constants2.METHODS.PAUSE_RECORDING, _constants.TASK_FILE);
825
+ const err = (0, _Utils.generateTaskErrorObject)(error, _constants2.METHODS.PAUSE_RECORDING, _constants.TASK_FILE);
826
+ const taskErrorProps = {
827
+ trackingId: err.data?.trackingId,
828
+ errorMessage: err.data?.message,
829
+ errorType: err.data?.errorType,
830
+ errorData: err.data?.errorData,
831
+ reasonCode: err.data?.reasonCode
832
+ };
794
833
  this.metricsManager.trackEvent(_constants3.METRIC_EVENT_NAMES.TASK_PAUSE_RECORDING_FAILED, {
795
834
  taskId: this.data.interactionId,
796
835
  error: error.toString(),
836
+ ...taskErrorProps,
797
837
  ..._MetricsManager.default.getCommonTrackingFieldForAQMResponseFailed(error.details || {})
798
838
  }, ['operational', 'behavioral', 'business']);
799
- throw detailedError;
839
+ throw err;
800
840
  }
801
841
  }
802
842
 
@@ -864,15 +904,21 @@ class Task extends _events.default {
864
904
  });
865
905
  return result;
866
906
  } catch (error) {
867
- const {
868
- error: detailedError
869
- } = (0, _Utils.getErrorDetails)(error, _constants2.METHODS.RESUME_RECORDING, _constants.TASK_FILE);
907
+ const err = (0, _Utils.generateTaskErrorObject)(error, _constants2.METHODS.RESUME_RECORDING, _constants.TASK_FILE);
908
+ const taskErrorProps = {
909
+ trackingId: err.data?.trackingId,
910
+ errorMessage: err.data?.message,
911
+ errorType: err.data?.errorType,
912
+ errorData: err.data?.errorData,
913
+ reasonCode: err.data?.reasonCode
914
+ };
870
915
  this.metricsManager.trackEvent(_constants3.METRIC_EVENT_NAMES.TASK_RESUME_RECORDING_FAILED, {
871
916
  taskId: this.data.interactionId,
872
917
  error: error.toString(),
918
+ ...taskErrorProps,
873
919
  ..._MetricsManager.default.getCommonTrackingFieldForAQMResponseFailed(error.details || {})
874
920
  }, ['operational', 'behavioral', 'business']);
875
- throw detailedError;
921
+ throw err;
876
922
  }
877
923
  }
878
924
 
@@ -935,17 +981,23 @@ class Task extends _events.default {
935
981
  });
936
982
  return result;
937
983
  } catch (error) {
938
- const {
939
- error: detailedError
940
- } = (0, _Utils.getErrorDetails)(error, _constants2.METHODS.CONSULT, _constants.TASK_FILE);
984
+ const err = (0, _Utils.generateTaskErrorObject)(error, _constants2.METHODS.CONSULT, _constants.TASK_FILE);
985
+ const taskErrorProps = {
986
+ trackingId: err.data?.trackingId,
987
+ errorMessage: err.data?.message,
988
+ errorType: err.data?.errorType,
989
+ errorData: err.data?.errorData,
990
+ reasonCode: err.data?.reasonCode
991
+ };
941
992
  this.metricsManager.trackEvent(_constants3.METRIC_EVENT_NAMES.TASK_CONSULT_START_FAILED, {
942
993
  taskId: this.data.interactionId,
943
994
  destination: consultPayload.to,
944
995
  destinationType: consultPayload.destinationType,
945
996
  error: error.toString(),
997
+ ...taskErrorProps,
946
998
  ..._MetricsManager.default.getCommonTrackingFieldForAQMResponseFailed(error.details || {})
947
999
  }, ['operational', 'behavioral', 'business']);
948
- throw detailedError;
1000
+ throw err;
949
1001
  }
950
1002
  }
951
1003
 
@@ -1006,15 +1058,21 @@ class Task extends _events.default {
1006
1058
  });
1007
1059
  return result;
1008
1060
  } catch (error) {
1009
- const {
1010
- error: detailedError
1011
- } = (0, _Utils.getErrorDetails)(error, _constants2.METHODS.END_CONSULT, _constants.TASK_FILE);
1061
+ const err = (0, _Utils.generateTaskErrorObject)(error, _constants2.METHODS.END_CONSULT, _constants.TASK_FILE);
1062
+ const taskErrorProps = {
1063
+ trackingId: err.data?.trackingId,
1064
+ errorMessage: err.data?.message,
1065
+ errorType: err.data?.errorType,
1066
+ errorData: err.data?.errorData,
1067
+ reasonCode: err.data?.reasonCode
1068
+ };
1012
1069
  this.metricsManager.trackEvent(_constants3.METRIC_EVENT_NAMES.TASK_CONSULT_END_FAILED, {
1013
1070
  taskId: this.data.interactionId,
1014
1071
  error: error.toString(),
1072
+ ...taskErrorProps,
1015
1073
  ..._MetricsManager.default.getCommonTrackingFieldForAQMResponseFailed(error.details || {})
1016
1074
  }, ['operational', 'behavioral', 'business']);
1017
- throw detailedError;
1075
+ throw err;
1018
1076
  }
1019
1077
  }
1020
1078
 
@@ -1083,18 +1141,24 @@ class Task extends _events.default {
1083
1141
  });
1084
1142
  return result;
1085
1143
  } catch (error) {
1086
- const {
1087
- error: detailedError
1088
- } = (0, _Utils.getErrorDetails)(error, _constants2.METHODS.TRANSFER, _constants.TASK_FILE);
1144
+ const err = (0, _Utils.generateTaskErrorObject)(error, _constants2.METHODS.TRANSFER, _constants.TASK_FILE);
1145
+ const taskErrorProps = {
1146
+ trackingId: err.data?.trackingId,
1147
+ errorMessage: err.data?.message,
1148
+ errorType: err.data?.errorType,
1149
+ errorData: err.data?.errorData,
1150
+ reasonCode: err.data?.reasonCode
1151
+ };
1089
1152
  this.metricsManager.trackEvent(_constants3.METRIC_EVENT_NAMES.TASK_TRANSFER_FAILED, {
1090
1153
  taskId: this.data.interactionId,
1091
1154
  destination: transferPayload.to,
1092
1155
  destinationType: transferPayload.destinationType,
1093
1156
  isConsultTransfer: false,
1094
1157
  error: error.toString(),
1158
+ ...taskErrorProps,
1095
1159
  ..._MetricsManager.default.getCommonTrackingFieldForAQMResponseFailed(error.details || {})
1096
1160
  }, ['operational', 'behavioral', 'business']);
1097
- throw detailedError;
1161
+ throw err;
1098
1162
  }
1099
1163
  }
1100
1164
 
@@ -1171,9 +1235,14 @@ class Task extends _events.default {
1171
1235
  });
1172
1236
  return result;
1173
1237
  } catch (error) {
1174
- const {
1175
- error: detailedError
1176
- } = (0, _Utils.getErrorDetails)(error, _constants2.METHODS.CONSULT_TRANSFER, _constants.TASK_FILE);
1238
+ const err = (0, _Utils.generateTaskErrorObject)(error, _constants2.METHODS.CONSULT_TRANSFER, _constants.TASK_FILE);
1239
+ const taskErrorProps = {
1240
+ trackingId: err.data?.trackingId,
1241
+ errorMessage: err.data?.message,
1242
+ errorType: err.data?.errorType,
1243
+ errorData: err.data?.errorData,
1244
+ reasonCode: err.data?.reasonCode
1245
+ };
1177
1246
  const failedDestinationType = (0, _Utils.deriveConsultTransferDestinationType)(this.data);
1178
1247
  const failedDestAgentId = (0, _Utils.getDestinationAgentId)(this.data.interaction?.participants, this.data.agentId);
1179
1248
  this.metricsManager.trackEvent(_constants3.METRIC_EVENT_NAMES.TASK_TRANSFER_FAILED, {
@@ -1182,9 +1251,10 @@ class Task extends _events.default {
1182
1251
  destinationType: failedDestinationType,
1183
1252
  isConsultTransfer: true,
1184
1253
  error: error.toString(),
1254
+ ...taskErrorProps,
1185
1255
  ..._MetricsManager.default.getCommonTrackingFieldForAQMResponseFailed(error.details || {})
1186
1256
  }, ['operational', 'behavioral', 'business']);
1187
- throw detailedError;
1257
+ throw err;
1188
1258
  }
1189
1259
  }
1190
1260
  }