@webex/internal-plugin-metrics 3.0.0-beta.22 → 3.0.0-beta.221

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 (67) hide show
  1. package/dist/call-diagnostic/call-diagnostic-metrics-batcher.js +56 -0
  2. package/dist/call-diagnostic/call-diagnostic-metrics-batcher.js.map +1 -0
  3. package/dist/call-diagnostic/call-diagnostic-metrics-latencies.js +451 -0
  4. package/dist/call-diagnostic/call-diagnostic-metrics-latencies.js.map +1 -0
  5. package/dist/call-diagnostic/call-diagnostic-metrics.js +645 -0
  6. package/dist/call-diagnostic/call-diagnostic-metrics.js.map +1 -0
  7. package/dist/call-diagnostic/call-diagnostic-metrics.util.js +276 -0
  8. package/dist/call-diagnostic/call-diagnostic-metrics.util.js.map +1 -0
  9. package/dist/call-diagnostic/config.js +580 -0
  10. package/dist/call-diagnostic/config.js.map +1 -0
  11. package/dist/call-diagnostic/generated-types-temp/ClientEvent.js +7 -0
  12. package/dist/call-diagnostic/generated-types-temp/ClientEvent.js.map +1 -0
  13. package/dist/call-diagnostic/generated-types-temp/Event.js +7 -0
  14. package/dist/call-diagnostic/generated-types-temp/Event.js.map +1 -0
  15. package/dist/call-diagnostic/generated-types-temp/MediaQualityEvent.js +7 -0
  16. package/dist/call-diagnostic/generated-types-temp/MediaQualityEvent.js.map +1 -0
  17. package/dist/config.js +20 -1
  18. package/dist/config.js.map +1 -1
  19. package/dist/index.js +25 -1
  20. package/dist/index.js.map +1 -1
  21. package/dist/metrics.js +30 -30
  22. package/dist/metrics.js.map +1 -1
  23. package/dist/metrics.types.js +7 -0
  24. package/dist/metrics.types.js.map +1 -0
  25. package/dist/new-metrics.js +249 -0
  26. package/dist/new-metrics.js.map +1 -0
  27. package/dist/types/batcher.d.ts +2 -0
  28. package/dist/types/call-diagnostic/call-diagnostic-metrics-batcher.d.ts +2 -0
  29. package/dist/types/call-diagnostic/call-diagnostic-metrics-latencies.d.ts +189 -0
  30. package/dist/types/call-diagnostic/call-diagnostic-metrics.d.ts +356 -0
  31. package/dist/types/call-diagnostic/call-diagnostic-metrics.util.d.ts +73 -0
  32. package/dist/types/call-diagnostic/config.d.ts +86 -0
  33. package/dist/types/call-diagnostic/generated-types-temp/ClientEvent.d.ts +1112 -0
  34. package/dist/types/call-diagnostic/generated-types-temp/Event.d.ts +4851 -0
  35. package/dist/types/call-diagnostic/generated-types-temp/MediaQualityEvent.d.ts +2121 -0
  36. package/dist/types/client-metrics-batcher.d.ts +2 -0
  37. package/dist/types/config.d.ts +35 -0
  38. package/dist/types/index.d.ts +11 -0
  39. package/dist/types/metrics.d.ts +3 -0
  40. package/dist/types/metrics.types.d.ts +95 -0
  41. package/dist/types/new-metrics.d.ts +119 -0
  42. package/package.json +12 -8
  43. package/src/call-diagnostic/call-diagnostic-metrics-batcher.ts +51 -0
  44. package/src/call-diagnostic/call-diagnostic-metrics-latencies.ts +408 -0
  45. package/src/call-diagnostic/call-diagnostic-metrics.ts +655 -0
  46. package/src/call-diagnostic/call-diagnostic-metrics.util.ts +280 -0
  47. package/src/call-diagnostic/config.ts +578 -0
  48. package/src/call-diagnostic/generated-types-temp/ClientEvent.ts +2395 -0
  49. package/src/call-diagnostic/generated-types-temp/Event.ts +7762 -0
  50. package/src/call-diagnostic/generated-types-temp/MediaQualityEvent.ts +2321 -0
  51. package/src/config.js +19 -0
  52. package/src/index.ts +41 -0
  53. package/src/metrics.js +25 -27
  54. package/src/metrics.types.ts +140 -0
  55. package/src/new-metrics.ts +223 -0
  56. package/test/unit/spec/call-diagnostic/call-diagnostic-metrics-batcher.ts +243 -0
  57. package/test/unit/spec/call-diagnostic/call-diagnostic-metrics-latencies.ts +474 -0
  58. package/test/unit/spec/call-diagnostic/call-diagnostic-metrics.ts +1015 -0
  59. package/test/unit/spec/call-diagnostic/call-diagnostic-metrics.util.ts +454 -0
  60. package/test/unit/spec/metrics.js +65 -97
  61. package/test/unit/spec/new-metrics.ts +155 -0
  62. package/tsconfig.json +6 -0
  63. package/dist/call-diagnostic-events-batcher.js +0 -60
  64. package/dist/call-diagnostic-events-batcher.js.map +0 -1
  65. package/src/call-diagnostic-events-batcher.js +0 -62
  66. package/src/index.js +0 -17
  67. package/test/unit/spec/call-diagnostic-events-batcher.js +0 -195
@@ -0,0 +1,2395 @@
1
+ /* eslint-disable */
2
+ /**
3
+ * This file was automatically generated by json-schema-to-typescript.
4
+ * DO NOT MODIFY IT BY HAND. Instead, modify the source JSONSchema file,
5
+ * and run json-schema-to-typescript to regenerate this file.
6
+ */
7
+
8
+ /**
9
+ * Events from clients
10
+ */
11
+ export interface ClientEvent {
12
+ canProceed: boolean;
13
+ state?: string;
14
+ mediaType?: 'audio' | 'video' | 'share' | 'share_audio' | 'whiteboard' | 'gamestate';
15
+ csi?: number;
16
+ /**
17
+ * media capability for both transmit and receive
18
+ */
19
+ mediaCapabilities?: {
20
+ /**
21
+ * explicit indication of media capabilities. true=supported
22
+ */
23
+ tx: {
24
+ audio: boolean;
25
+ video: boolean;
26
+ share: boolean;
27
+ share_audio: boolean;
28
+ whiteboard: boolean;
29
+ gamestate?: boolean;
30
+ };
31
+ /**
32
+ * explicit indication of media capabilities. true=supported
33
+ */
34
+ rx: {
35
+ audio: boolean;
36
+ video: boolean;
37
+ share: boolean;
38
+ share_audio: boolean;
39
+ whiteboard: boolean;
40
+ gamestate?: boolean;
41
+ };
42
+ };
43
+ mediaLines?: {
44
+ mediaType: 'audio' | 'video' | 'share' | 'share_audio' | 'whiteboard' | 'gamestate';
45
+ remoteIP?: string;
46
+ localIP?: string;
47
+ localNetworkPrefix?: string;
48
+ localPort?: number;
49
+ remotePort?: number;
50
+ protocol: 'udp' | 'tcp' | 'xtls' | 'unknown';
51
+ direction: 'sendrecv' | 'sendonly' | 'recvonly' | 'inactive';
52
+ clusterName?: string;
53
+ status?: 'succeeded' | 'in-progress' | 'failed';
54
+ failureReason?: 'network' | 'transport' | 'rejected' | 'timeout' | 'notstarted' | 'succeeded';
55
+ errorCode?: number;
56
+ mediaLineData?: {};
57
+ }[];
58
+ /**
59
+ * allows client to specify media preferences
60
+ */
61
+ clientMediaPreferences?: {
62
+ preferTranscoding: boolean;
63
+ };
64
+ pstnAudioType?: 'dial-in' | 'dial-out';
65
+ success?: boolean;
66
+ isTranscoded?: boolean;
67
+ isGatewayed?: boolean;
68
+ isComposed?: boolean;
69
+ /**
70
+ * determine how the events are processed as well as how the reports are aggregated and sliced
71
+ */
72
+ registrationMode?: 'SIP' | 'Cloud' | 'CloudAware';
73
+ /**
74
+ * protocols used to help determine how the events are processed as well as how the reports are aggregated and sliced
75
+ */
76
+ protocol?: 'SIP' | 'H323' | 'Locus' | 'WebRTC';
77
+ /**
78
+ * The underlying service provider of the call.
79
+ */
80
+ meetingPlatform?: 'MsTeams' | 'GoogleMeet' | 'Zoom' | 'Webex';
81
+ labels?: string[];
82
+ webexServiceType?: 'MC' | 'EC' | 'SC' | 'TC' | 'AA' | 'RA' | 'NBR' | 'WRF' | 'HOL';
83
+ /**
84
+ * this defines the sub service type
85
+ */
86
+ webexSubServiceType?:
87
+ | 'PMR'
88
+ | 'Event'
89
+ | 'Training'
90
+ | 'ScheduleMeeting'
91
+ | 'ScheduledMeeting'
92
+ | 'Webinar'
93
+ | 'others';
94
+ ivrDialogType?:
95
+ | 'MEDIA_ON_HOLD'
96
+ | 'ANNOUNCEMENT'
97
+ | 'TONE'
98
+ | 'COLLECT_PIN'
99
+ | 'PROMPT'
100
+ | 'MEDIA_SERVICE_AGENT'
101
+ | 'COLLECT';
102
+ ivrDialogResult?:
103
+ | 'SUCCESS'
104
+ | 'FAILURE'
105
+ | 'HOST_PIN_MATCH'
106
+ | 'GUEST_PIN_MATCH'
107
+ | 'PANELIST_PIN_MATCH'
108
+ | 'NO_MATCH'
109
+ | 'INVALID_PIN';
110
+ callType?:
111
+ | 'VIDEO_DIALIN'
112
+ | 'VIDEO_DIALOUT'
113
+ | 'CASCADE'
114
+ | 'HYBRID_CASCADE'
115
+ | 'PSTN_SIP'
116
+ | 'PSTN_DIALIN'
117
+ | 'PSTN_DIALOUT'
118
+ | 'PSTN_ONLY_DIALIN'
119
+ | 'PSTN_ONLY_DIALOUT'
120
+ | 'H323'
121
+ | 'H323_IP'
122
+ | 'SIP_ENTERPRISE'
123
+ | 'SIP_MOBILE'
124
+ | 'SIP_NATIONAL'
125
+ | 'SIP_INTERNATIONAL'
126
+ | 'SIP_EMERGENCY'
127
+ | 'SIP_OPERATOR'
128
+ | 'SIP_SHORTCODE'
129
+ | 'SIP_TOLLFREE'
130
+ | 'SIP_PREMIUM'
131
+ | 'SIP_URI'
132
+ | 'SIP_INBOUND'
133
+ | 'UNKNOWN'
134
+ | 'ZTM'
135
+ | 'SIP_MEETING';
136
+ eventData?: {};
137
+ derivedSipClientType?:
138
+ | 'SIP_CE_SINGLE_SCREEN'
139
+ | 'SIP_CE_MULTI_SCREEN'
140
+ | 'SIP_JABBER'
141
+ | 'SIP_TIP_SINGLE_SCREEN'
142
+ | 'SIP_TIP_THREE_SCREEN'
143
+ | 'SIP_PSTN'
144
+ | 'SIP_OTHER'
145
+ | 'SIP_WEBEX_CASCADE'
146
+ | 'SIP_NONE';
147
+ /**
148
+ * this defines the major client types
149
+ */
150
+ derivedClientType?:
151
+ | 'MEETING_CENTER'
152
+ | 'EVENT_CENTER'
153
+ | 'TRAINING_CENTER'
154
+ | 'TEAMS_CLIENT'
155
+ | 'TEAMS_DEVICE'
156
+ | 'TEAMS_SHARE'
157
+ | 'SIP'
158
+ | 'RECORDING'
159
+ | 'CLOUD_AWARE_SIP'
160
+ | 'TEAMS_WXC_CLIENT'
161
+ | 'WXC_CLIENT'
162
+ | 'WXC_DEVICE'
163
+ | 'WEBEX_JS_SDK'
164
+ | 'VOICEA_CLIENT'
165
+ | 'CISCO_SIP_GW'
166
+ | 'WEBEX_SDK'
167
+ | 'CPAAS_THIRD_PARTY_SDK'
168
+ | 'WXC_THIRD_PARTY';
169
+ /**
170
+ * this defines the sub types of clients
171
+ */
172
+ derivedSubClientType?:
173
+ | 'DESKTOP_APP'
174
+ | 'DESKTOP_APP_VDI'
175
+ | 'DEVICE_CURRENT'
176
+ | 'DEVICE_LEGACY_2020'
177
+ | 'HVDI_APP'
178
+ | 'MOBILE_APP'
179
+ | 'VDI_APP'
180
+ | 'WEB_APP'
181
+ | 'MOBILE_NETWORK'
182
+ | 'HOLOGRAM_HEADSET_APP';
183
+ serverRole?:
184
+ | 'CONFERENCE'
185
+ | 'TRANSCODER'
186
+ | 'WHITEBOARD_INJECTOR'
187
+ | 'MS_TEAMS_CONFERENCE'
188
+ | 'RECORDING'
189
+ | 'GATEWAY'
190
+ | 'GATEWAY_CLIENT_SIDE'
191
+ | 'UNKNOWN'
192
+ | 'HOLOGRAM_RENDER';
193
+ reconnect?: boolean;
194
+ retryCount?: number;
195
+ meetSimple?: boolean;
196
+ /**
197
+ * represents media quality status report such as no media or drop out
198
+ */
199
+ mediaStatus?: {
200
+ mediaType?: 'audio' | 'video' | 'share' | 'share_audio' | 'whiteboard';
201
+ mediaSuccess?: boolean;
202
+ shareType?:
203
+ | 'cb-normal-share'
204
+ | 'ce-airplay-share'
205
+ | 'ce-direct-share'
206
+ | 'ce-gui-loopback-share'
207
+ | 'ce-input-source-share'
208
+ | 'ce-input-source-share-hdmi'
209
+ | 'ce-input-source-share-usbc'
210
+ | 'ce-jpg-share'
211
+ | 'ce-miracast-share'
212
+ | 'mcs-normal-share'
213
+ | 'mcs-normal-audio-share'
214
+ | 'mcs-hfps-share'
215
+ | 'mcs-hfps-audio-share';
216
+ isTransmitter?: boolean;
217
+ audioJoinType?:
218
+ | 'phone-call-in'
219
+ | 'phone-call-back'
220
+ | 'voip'
221
+ | 'device-call-back'
222
+ | 'never-join-audio'
223
+ | 'tried-but-never-join';
224
+ /**
225
+ * indicates transport type used
226
+ */
227
+ transportType?: 'UDP' | 'TCP' | 'xTLS' | 'TLS';
228
+ additionalData?: {};
229
+ };
230
+ shareInstanceId?: string;
231
+ hologramStreamId?: string;
232
+ /**
233
+ * represents all of the properities that could cause delay during media setup process.
234
+ */
235
+ audioSetupDelay?: {
236
+ floorReqSentReceived?: number;
237
+ floorRespSentReceived?: number;
238
+ mediaType?: 'audio' | 'video' | 'share' | 'share_audio' | 'whiteboard';
239
+ txReqFloorGranted?: number;
240
+ txSessionCreateConfirm?: number;
241
+ txApeEnrollConfirm?: number;
242
+ txUIDelay?: number;
243
+ txScreenCaptureDelay?: number;
244
+ txScreenCaptureDelayReasonCode?: number;
245
+ txShareStartOverallDelay?: number;
246
+ rx1stPacket2RenderDelay?: number;
247
+ rxGranted2RenderDelay?: number;
248
+ rxFailFrameNumB4Success?: number;
249
+ e2eFirstFrameDelay?: number;
250
+ CBSessionRespToLocusFloorGrantDelay?: number;
251
+ CBShareReceiveToServerShareTransmitDelay?: number;
252
+ CBShareReceiveToTPGWFirstKeyFrameDelay?: number;
253
+ TPGWFirstKeyFrameToServerShareTransmitDelay?: number;
254
+ MCSSessionActivateToLocusFloorGrantDelay?: number;
255
+ ServerShareInitiateToLocusFloorGrantDelay?: number;
256
+ LocusFloorGrantToCBSessionStartDelay?: number;
257
+ ServerShareReceiveToTPGWFirstKeyFrameDelay?: number;
258
+ LocusFloorGrantToTPGWFloorGrantDelay?: number;
259
+ LocusFloorGrantToReceiverNotificationDelay?: number;
260
+ CBShareSessionRespDelay?: number;
261
+ LocusShareFloorGrantRespDelay?: number;
262
+ ServerShareFloorGrantRespDelay?: number;
263
+ joinRespRxStart?: number;
264
+ joinRespTxStart?: number;
265
+ maxRemoteLossRate?: number;
266
+ media2SignalDelay?: number;
267
+ warholDownloadTime?: number;
268
+ contentDownloadTime?: number;
269
+ boardCreationTime?: number;
270
+ totalBoardServiceRespDelay?: number;
271
+ };
272
+ /**
273
+ * represents all of the properities that could cause delay during media setup process.
274
+ */
275
+ videoSetupDelay?: {
276
+ floorReqSentReceived?: number;
277
+ floorRespSentReceived?: number;
278
+ mediaType?: 'audio' | 'video' | 'share' | 'share_audio' | 'whiteboard';
279
+ txReqFloorGranted?: number;
280
+ txSessionCreateConfirm?: number;
281
+ txApeEnrollConfirm?: number;
282
+ txUIDelay?: number;
283
+ txScreenCaptureDelay?: number;
284
+ txScreenCaptureDelayReasonCode?: number;
285
+ txShareStartOverallDelay?: number;
286
+ rx1stPacket2RenderDelay?: number;
287
+ rxGranted2RenderDelay?: number;
288
+ rxFailFrameNumB4Success?: number;
289
+ e2eFirstFrameDelay?: number;
290
+ CBSessionRespToLocusFloorGrantDelay?: number;
291
+ CBShareReceiveToServerShareTransmitDelay?: number;
292
+ CBShareReceiveToTPGWFirstKeyFrameDelay?: number;
293
+ TPGWFirstKeyFrameToServerShareTransmitDelay?: number;
294
+ MCSSessionActivateToLocusFloorGrantDelay?: number;
295
+ ServerShareInitiateToLocusFloorGrantDelay?: number;
296
+ LocusFloorGrantToCBSessionStartDelay?: number;
297
+ ServerShareReceiveToTPGWFirstKeyFrameDelay?: number;
298
+ LocusFloorGrantToTPGWFloorGrantDelay?: number;
299
+ LocusFloorGrantToReceiverNotificationDelay?: number;
300
+ CBShareSessionRespDelay?: number;
301
+ LocusShareFloorGrantRespDelay?: number;
302
+ ServerShareFloorGrantRespDelay?: number;
303
+ joinRespRxStart?: number;
304
+ joinRespTxStart?: number;
305
+ maxRemoteLossRate?: number;
306
+ media2SignalDelay?: number;
307
+ warholDownloadTime?: number;
308
+ contentDownloadTime?: number;
309
+ boardCreationTime?: number;
310
+ totalBoardServiceRespDelay?: number;
311
+ };
312
+ /**
313
+ * represents all of the properities that could cause delay during media setup process.
314
+ */
315
+ shareSetupDelay?: {
316
+ floorReqSentReceived?: number;
317
+ floorRespSentReceived?: number;
318
+ mediaType?: 'audio' | 'video' | 'share' | 'share_audio' | 'whiteboard';
319
+ txReqFloorGranted?: number;
320
+ txSessionCreateConfirm?: number;
321
+ txApeEnrollConfirm?: number;
322
+ txUIDelay?: number;
323
+ txScreenCaptureDelay?: number;
324
+ txScreenCaptureDelayReasonCode?: number;
325
+ txShareStartOverallDelay?: number;
326
+ rx1stPacket2RenderDelay?: number;
327
+ rxGranted2RenderDelay?: number;
328
+ rxFailFrameNumB4Success?: number;
329
+ e2eFirstFrameDelay?: number;
330
+ CBSessionRespToLocusFloorGrantDelay?: number;
331
+ CBShareReceiveToServerShareTransmitDelay?: number;
332
+ CBShareReceiveToTPGWFirstKeyFrameDelay?: number;
333
+ TPGWFirstKeyFrameToServerShareTransmitDelay?: number;
334
+ MCSSessionActivateToLocusFloorGrantDelay?: number;
335
+ ServerShareInitiateToLocusFloorGrantDelay?: number;
336
+ LocusFloorGrantToCBSessionStartDelay?: number;
337
+ ServerShareReceiveToTPGWFirstKeyFrameDelay?: number;
338
+ LocusFloorGrantToTPGWFloorGrantDelay?: number;
339
+ LocusFloorGrantToReceiverNotificationDelay?: number;
340
+ CBShareSessionRespDelay?: number;
341
+ LocusShareFloorGrantRespDelay?: number;
342
+ ServerShareFloorGrantRespDelay?: number;
343
+ joinRespRxStart?: number;
344
+ joinRespTxStart?: number;
345
+ maxRemoteLossRate?: number;
346
+ media2SignalDelay?: number;
347
+ warholDownloadTime?: number;
348
+ contentDownloadTime?: number;
349
+ boardCreationTime?: number;
350
+ totalBoardServiceRespDelay?: number;
351
+ };
352
+ /**
353
+ * represents all of the properities that could cause delay during media setup process.
354
+ */
355
+ shareAudioSetupDelay?: {
356
+ floorReqSentReceived?: number;
357
+ floorRespSentReceived?: number;
358
+ mediaType?: 'audio' | 'video' | 'share' | 'share_audio' | 'whiteboard';
359
+ txReqFloorGranted?: number;
360
+ txSessionCreateConfirm?: number;
361
+ txApeEnrollConfirm?: number;
362
+ txUIDelay?: number;
363
+ txScreenCaptureDelay?: number;
364
+ txScreenCaptureDelayReasonCode?: number;
365
+ txShareStartOverallDelay?: number;
366
+ rx1stPacket2RenderDelay?: number;
367
+ rxGranted2RenderDelay?: number;
368
+ rxFailFrameNumB4Success?: number;
369
+ e2eFirstFrameDelay?: number;
370
+ CBSessionRespToLocusFloorGrantDelay?: number;
371
+ CBShareReceiveToServerShareTransmitDelay?: number;
372
+ CBShareReceiveToTPGWFirstKeyFrameDelay?: number;
373
+ TPGWFirstKeyFrameToServerShareTransmitDelay?: number;
374
+ MCSSessionActivateToLocusFloorGrantDelay?: number;
375
+ ServerShareInitiateToLocusFloorGrantDelay?: number;
376
+ LocusFloorGrantToCBSessionStartDelay?: number;
377
+ ServerShareReceiveToTPGWFirstKeyFrameDelay?: number;
378
+ LocusFloorGrantToTPGWFloorGrantDelay?: number;
379
+ LocusFloorGrantToReceiverNotificationDelay?: number;
380
+ CBShareSessionRespDelay?: number;
381
+ LocusShareFloorGrantRespDelay?: number;
382
+ ServerShareFloorGrantRespDelay?: number;
383
+ joinRespRxStart?: number;
384
+ joinRespTxStart?: number;
385
+ maxRemoteLossRate?: number;
386
+ media2SignalDelay?: number;
387
+ warholDownloadTime?: number;
388
+ contentDownloadTime?: number;
389
+ boardCreationTime?: number;
390
+ totalBoardServiceRespDelay?: number;
391
+ };
392
+ /**
393
+ * represents all of the properities that could cause delay during media setup process.
394
+ */
395
+ whiteboardSetupDelay?: {
396
+ floorReqSentReceived?: number;
397
+ floorRespSentReceived?: number;
398
+ mediaType?: 'audio' | 'video' | 'share' | 'share_audio' | 'whiteboard';
399
+ txReqFloorGranted?: number;
400
+ txSessionCreateConfirm?: number;
401
+ txApeEnrollConfirm?: number;
402
+ txUIDelay?: number;
403
+ txScreenCaptureDelay?: number;
404
+ txScreenCaptureDelayReasonCode?: number;
405
+ txShareStartOverallDelay?: number;
406
+ rx1stPacket2RenderDelay?: number;
407
+ rxGranted2RenderDelay?: number;
408
+ rxFailFrameNumB4Success?: number;
409
+ e2eFirstFrameDelay?: number;
410
+ CBSessionRespToLocusFloorGrantDelay?: number;
411
+ CBShareReceiveToServerShareTransmitDelay?: number;
412
+ CBShareReceiveToTPGWFirstKeyFrameDelay?: number;
413
+ TPGWFirstKeyFrameToServerShareTransmitDelay?: number;
414
+ MCSSessionActivateToLocusFloorGrantDelay?: number;
415
+ ServerShareInitiateToLocusFloorGrantDelay?: number;
416
+ LocusFloorGrantToCBSessionStartDelay?: number;
417
+ ServerShareReceiveToTPGWFirstKeyFrameDelay?: number;
418
+ LocusFloorGrantToTPGWFloorGrantDelay?: number;
419
+ LocusFloorGrantToReceiverNotificationDelay?: number;
420
+ CBShareSessionRespDelay?: number;
421
+ LocusShareFloorGrantRespDelay?: number;
422
+ ServerShareFloorGrantRespDelay?: number;
423
+ joinRespRxStart?: number;
424
+ joinRespTxStart?: number;
425
+ maxRemoteLossRate?: number;
426
+ media2SignalDelay?: number;
427
+ warholDownloadTime?: number;
428
+ contentDownloadTime?: number;
429
+ boardCreationTime?: number;
430
+ totalBoardServiceRespDelay?: number;
431
+ };
432
+ isFocus?: boolean;
433
+ processingDelay?: number;
434
+ shareType?:
435
+ | 'cb-normal-share'
436
+ | 'ce-airplay-share'
437
+ | 'ce-direct-share'
438
+ | 'ce-gui-loopback-share'
439
+ | 'ce-input-source-share'
440
+ | 'ce-input-source-share-hdmi'
441
+ | 'ce-input-source-share-usbc'
442
+ | 'ce-jpg-share'
443
+ | 'ce-miracast-share'
444
+ | 'mcs-normal-share'
445
+ | 'mcs-normal-audio-share'
446
+ | 'mcs-hfps-share'
447
+ | 'mcs-hfps-audio-share';
448
+ isShareBeingTakenOver?: boolean;
449
+ floorBeneficiaryUpdated?: boolean;
450
+ meetingJoinedTime?: string;
451
+ meetingScheduledTime?: string;
452
+ e2eeKeyEpoch?: number;
453
+ e2eeDecompressRatio?: number;
454
+ keyResponses?: {
455
+ gotKeyTime?: number;
456
+ useKeyTime?: number;
457
+ cacheKeyTime?: number;
458
+ }[];
459
+ e2eeVersion?: 'E2EEV1' | 'E2EEV2' | 'E2EEV3';
460
+ isConvergedArchitectureEnabled?: boolean;
461
+ callingServiceType?: 'CUCM' | 'WEBEXCALLING' | 'BROADWORKS' | 'LOCUS';
462
+ inLobby?: boolean;
463
+ isVIPMeeting?: boolean;
464
+ webexAppEntrypoint?: string;
465
+ firstParticipant?: boolean;
466
+ isImmersiveShare?: boolean;
467
+ /**
468
+ * Request/Response Time for Internal Services
469
+ */
470
+ registeredTimestamps?: {
471
+ locusCreateConfluenceRequestTime?: string;
472
+ locusCreateConfluenceResponseTime?: string;
473
+ locusCreateVenueRequestTime?: string;
474
+ locusCreateVenueResponseTime?: string;
475
+ };
476
+ skipInterstitialWindow?: boolean;
477
+ callDurationSecs?: number;
478
+ /**
479
+ * Details associated with a breakout move
480
+ */
481
+ breakout?: {
482
+ moveType?: 'between_breakout' | 'to_breakout' | 'to_main';
483
+ trigger?: 'assignment_changed' | 'client_initiated' | 'session_ended' | 'session_started';
484
+ startState?: 'joined' | 'lobby';
485
+ endState?: 'joined' | 'lobby';
486
+ };
487
+ /**
488
+ * Latency values associated with breakout session
489
+ */
490
+ breakoutLatency?: {
491
+ boBreakoutMoveProcessed?: number;
492
+ boBreakoutMoveResp?: number;
493
+ boLocusBreakoutMoveResp?: number;
494
+ locusBreakoutMoveResp?: number;
495
+ orpheusConfluenceMoveReqResp?: number;
496
+ };
497
+ /**
498
+ * two-way whiteboard related info
499
+ */
500
+ whiteboard?: {
501
+ action?: 'open' | 'create';
502
+ type?: 'whiteboard' | 'annotation';
503
+ capability?: 'one_way' | 'two_way';
504
+ granted?: 'one_way' | 'two_way';
505
+ };
506
+ name:
507
+ | 'client.alert.displayed'
508
+ | 'client.alert.removed'
509
+ | 'client.application.validate'
510
+ | 'client.audio.noise.removal'
511
+ | 'client.breakout-session.join.request'
512
+ | 'client.breakout-session.join.response'
513
+ | 'client.breakout-session.leave'
514
+ | 'client.breakout-session.move.request'
515
+ | 'client.breakout-session.move.response'
516
+ | 'client.call.aborted'
517
+ | 'client.call.declined'
518
+ | 'client.call.displayed'
519
+ | 'client.call.initiated'
520
+ | 'client.call.leave'
521
+ | 'client.call.move-media'
522
+ | 'client.call.remote-ended'
523
+ | 'client.call.remote-started'
524
+ | 'client.call.skip-locus-join'
525
+ | 'client.conversation.request'
526
+ | 'client.conversation.response'
527
+ | 'client.click.pre-join'
528
+ | 'client.crash'
529
+ | 'client.daemon.join.begin'
530
+ | 'client.daemon.job.done'
531
+ | 'client.daemon.launch-meeting-process'
532
+ | 'client.daemon.pending-on-existing-upgrade-job'
533
+ | 'client.daemon.query-site-info'
534
+ | 'client.daemon.upgrade-and-join'
535
+ | 'client.daemon.wakeup-meeting-client'
536
+ | 'client.device.resource-room.joined'
537
+ | 'client.e2ee.join.response'
538
+ | 'client.embedded-object-info'
539
+ | 'client.entering-background'
540
+ | 'client.entering-foreground'
541
+ | 'client.exit.app'
542
+ | 'client.gesture.recognition'
543
+ | 'client.hologram.initiated'
544
+ | 'client.hologram.stopped'
545
+ | 'client.hologram.remote.initiated'
546
+ | 'client.hologram.remote.stopped'
547
+ | 'client.ice.end'
548
+ | 'client.ice.start'
549
+ | 'client.installer.start'
550
+ | 'client.installer.end'
551
+ | 'client.interstitial-window.launched'
552
+ | 'client.ivr.join.request'
553
+ | 'client.ivr.join.response'
554
+ | 'client.ivr.leave.request'
555
+ | 'client.ivr.leave.response'
556
+ | 'client.ivr.notify.request'
557
+ | 'client.ivr.notify.response'
558
+ | 'client.lobby.entered'
559
+ | 'client.lobby.exited'
560
+ | 'client.locus.decline.request'
561
+ | 'client.locus.join.request'
562
+ | 'client.locus.join.response'
563
+ | 'client.locus.leave.request'
564
+ | 'client.locus.leave.response'
565
+ | 'client.locus.media.request'
566
+ | 'client.locus.media.response'
567
+ | 'client.media-engine.crash'
568
+ | 'client.media-engine.lost'
569
+ | 'client.media-engine.local-sdp-generated'
570
+ | 'client.media-engine.ready'
571
+ | 'client.media-engine.remote-sdp-received'
572
+ | 'client.media-status'
573
+ | 'client.media.capabilities'
574
+ | 'client.media.reachability'
575
+ | 'client.media.reconnecting'
576
+ | 'client.media.recovered'
577
+ | 'client.media.render.start'
578
+ | 'client.media.render.stop'
579
+ | 'client.media.rx.start'
580
+ | 'client.media.rx.stop'
581
+ | 'client.media.share.csi.changed'
582
+ | 'client.media.tx.start'
583
+ | 'client.media.tx.stop'
584
+ | 'client.meetinginfo.request'
585
+ | 'client.meetinginfo.response'
586
+ | 'client.meetingmanagersdk.ipc.run'
587
+ | 'client.meeting.app-loaded'
588
+ | 'client.meeting.breakout-session.action'
589
+ | 'client.meeting.breakout-session.summary'
590
+ | 'client.meeting.browser-plugin.started'
591
+ | 'client.meeting.click.joinbutton'
592
+ | 'client.meeting.closed'
593
+ | 'client.meeting.disclaimer-window.accepted'
594
+ | 'client.meeting.disclaimer-window.closed'
595
+ | 'client.meeting.disclaimer-window.showed'
596
+ | 'client.meeting.docshow.request'
597
+ | 'client.meeting.docshow.response'
598
+ | 'client.meeting.e2e.u2c.response'
599
+ | 'client.meeting.e2e.wca.response'
600
+ | 'client.meeting.e2e.key.response'
601
+ | 'client.meeting.e2ee.u2c.response'
602
+ | 'client.meeting.e2ee.wca.response'
603
+ | 'client.meeting.e2ee.key.response'
604
+ | 'client.meeting.gpc.download'
605
+ | 'client.meeting.gpcparameter.request'
606
+ | 'client.meeting.gpcparameter.response'
607
+ | 'client.meeting.interstitial-window.closed'
608
+ | 'client.meeting.interstitial-window.showed'
609
+ | 'client.meeting.join.request'
610
+ | 'client.meeting.key-information'
611
+ | 'client.meeting.launched'
612
+ | 'client.meeting.login-window.clicked'
613
+ | 'client.meeting.login-window.closed'
614
+ | 'client.meeting.login-window.showed'
615
+ | 'client.meeting.login.response'
616
+ | 'client.meeting.people-insights.check.response'
617
+ | 'client.meeting.people-insights.query.response'
618
+ | 'client.meeting.ping.request'
619
+ | 'client.meeting.ping.response'
620
+ | 'client.meeting.plugin-extension.started'
621
+ | 'client.meeting.resume'
622
+ | 'client.meeting.report-log'
623
+ | 'client.meeting.session.connected'
624
+ | 'client.meeting.start-webexapp'
625
+ | 'client.meeting.start-launch'
626
+ | 'client.meeting.summary'
627
+ | 'client.meeting.user-action'
628
+ | 'client.meeting.validated'
629
+ | 'client.meeting.VDI.detect.plugin.response'
630
+ | 'client.meeting.VDI.connect.plugin.response'
631
+ | 'client.mercury.connection.lost'
632
+ | 'client.mercury.connection.restored'
633
+ | 'client.multistream.sca.rx'
634
+ | 'client.multistream.sca.tx'
635
+ | 'client.multistream.scr.rx'
636
+ | 'client.multistream.scr.tx'
637
+ | 'client.muted'
638
+ | 'client.network.changed'
639
+ | 'client.notification.received'
640
+ | 'client.pin.collected'
641
+ | 'client.pin.prompt'
642
+ | 'client.post.meeting.hook'
643
+ | 'client.pstnaudio.attempt.finish'
644
+ | 'client.pstnaudio.attempt.skip'
645
+ | 'client.pstnaudio.attempt.start'
646
+ | 'client.roap-message.received'
647
+ | 'client.roap-message.sent'
648
+ | 'client.share.floor-accept.notification'
649
+ | 'client.share.floor-grant.cancel-request'
650
+ | 'client.share.floor-grant.notification'
651
+ | 'client.share.floor-grant.request'
652
+ | 'client.share.floor-granted.local'
653
+ | 'client.share.initiated'
654
+ | 'client.share.layout.displayed'
655
+ | 'client.share.paused'
656
+ | 'client.share.selected-app'
657
+ | 'client.share.stopped'
658
+ | 'client.started-after-shutdown'
659
+ | 'client.started-from-crash'
660
+ | 'client.stuntrace.failed'
661
+ | 'client.switch.app'
662
+ | 'client.unmuted'
663
+ | 'client.webexapp.launched'
664
+ | 'client.login.start'
665
+ | 'client.login.end'
666
+ | 'client.switch.environment'
667
+ | 'client.warhol.downloaded'
668
+ | 'client.whiteboard.loaded'
669
+ | 'meeting.initiated'
670
+ | 'meeting.joined'
671
+ | 'page.click.pre-join'
672
+ | 'page.meeting.browser-reset'
673
+ | 'page.meeting.close-browser'
674
+ | 'page.meeting.extension.started'
675
+ | 'page.meeting.launch-thinclient'
676
+ | 'page.meeting.loading'
677
+ | 'page.meeting.run-plugin'
678
+ | 'page.meeting.testing-plugin'
679
+ | 'page.meeting.testing-plugin.finished'
680
+ | 'page.meeting.tfs.start-download'
681
+ | 'page.meeting.urlprotocol.detect'
682
+ | 'page.meeting.waiting.user-action';
683
+ /**
684
+ * Base type for the various identifiers used to connect the dots.
685
+ * In general, these should be populated whenever possible. Subtypes may make a particular key required.
686
+ *
687
+ */
688
+ identifiers: {
689
+ attendeeId?: string;
690
+ breakoutGroupId?: string;
691
+ breakoutMoveId?: string;
692
+ breakoutSessionId?: string;
693
+ confluenceId?: string;
694
+ /**
695
+ * Set of identifiers dedicated to CPaaS clients
696
+ * In general, these should be populated whenever possible. Subtypes may make a particular key required.
697
+ *
698
+ */
699
+ cpaasIdentifiers?: {
700
+ imiTenantId: string;
701
+ devClientId: string;
702
+ imiServiceId: string;
703
+ imiAppId: string;
704
+ sessionId: string;
705
+ sessionInstanceId: string;
706
+ };
707
+ csdmDeviceUrl?: string;
708
+ destinationBreakoutSessionId?: string;
709
+ destinationLocusSessionId?: string;
710
+ destinationLocusUrl?: string;
711
+ destinationVenueId?: string;
712
+ deviceId?: string;
713
+ ivrCallId?: string;
714
+ ivrDialogId?: string;
715
+ ivrId?: string;
716
+ locusId?: string;
717
+ locusSessionId?: string;
718
+ locusStartTime?: string;
719
+ locusUrl?: string;
720
+ mediaAgentAlias?: string;
721
+ mediaAgentGroupId?: string;
722
+ meetClusterName?: string;
723
+ meetingLookupUrl?: string;
724
+ meetingOrgId?: string;
725
+ msteamsTenantGuid?: string;
726
+ msteamsConferenceId?: string;
727
+ oauth2ClientId?: string;
728
+ orgId?: string;
729
+ roomId?: string;
730
+ sipCallId?: string;
731
+ sipSessionId?: {
732
+ local?: string;
733
+ remote?: string;
734
+ };
735
+ sipUri?: string;
736
+ subConfId?: string;
737
+ tenantId?: string;
738
+ trackingId?: string;
739
+ userId?: string;
740
+ venueId?: string;
741
+ venueUrl?: string;
742
+ whiteboardUrl?: string;
743
+ webexConferenceId?: number;
744
+ webexClusterName?: string;
745
+ webexConferenceIdStr?: string;
746
+ webexDataCenter?: string;
747
+ webexGuestId?: number;
748
+ webexMeetingId?: number;
749
+ webexNodeId?: number;
750
+ webexSiteId?: number;
751
+ webexSiteName?: string;
752
+ webexUserId?: number;
753
+ webexWebDomain?: string;
754
+ correlationId: string;
755
+ };
756
+ errors?: {
757
+ fatal: boolean;
758
+ category: 'signaling' | 'media' | 'other' | 'expected';
759
+ errorDescription?: string;
760
+ errorCode?: number;
761
+ errorCodeStr?: string;
762
+ httpCode?: number;
763
+ errorData?: {};
764
+ shownToUser: boolean;
765
+ serviceErrorCode?: number;
766
+ name:
767
+ | 'media-engine'
768
+ | 'ice.failed'
769
+ | 'locus.response'
770
+ | 'locus.leave'
771
+ | 'client.leave'
772
+ | 'media-device'
773
+ | 'media-sca'
774
+ | 'other';
775
+ }[];
776
+ /**
777
+ * media quality error report such as no media or drop out
778
+ */
779
+ clientMediaError?: {
780
+ mediaType?: 'audio' | 'video' | 'share' | 'share_audio' | 'whiteboard';
781
+ mediaFailureType?: 'noMedia' | 'mediaDrop' | 'mediaEvent';
782
+ isDropAtStart?: boolean;
783
+ isJMF?: boolean;
784
+ txError?:
785
+ | 'NO_ERROR'
786
+ | 'DEVICE_ERROR'
787
+ | 'LOAD_LIBRARY_ERROR'
788
+ | 'MCS_SESSION_CONNECT_ERROR'
789
+ | 'CB_SESSION_CREATE_ERROR'
790
+ | 'NO_FRAME_DECODE_ERROR'
791
+ | 'NO_PACKET_RECV_ERROR'
792
+ | 'LOW_VOLUME_ERROR'
793
+ | 'INITIAL_MEMORY_ERROR'
794
+ | 'MAC_VIRTUAL_AUDIO_DRV_ERROR'
795
+ | 'MMP_SESSION_CONNECT_ERROR'
796
+ | 'MEDIA_PROCESS_CRASH_ERROR'
797
+ | 'HEARTBEAT_LOST_WITH_MEDIA_PROCESS_ERROR'
798
+ | 'MEDIA_SERVER_CONNECT_ERROR'
799
+ | 'LOCUS_SESSION_CONNECT_ERROR'
800
+ | 'NO_PACKET_SEND_ERROR'
801
+ | 'NETWORK_LOST_ERROR'
802
+ | 'MEDIA_NOT_AVAILABLE';
803
+ rxError?:
804
+ | 'NO_ERROR'
805
+ | 'DEVICE_ERROR'
806
+ | 'LOAD_LIBRARY_ERROR'
807
+ | 'MCS_SESSION_CONNECT_ERROR'
808
+ | 'CB_SESSION_CREATE_ERROR'
809
+ | 'NO_FRAME_DECODE_ERROR'
810
+ | 'NO_PACKET_RECV_ERROR'
811
+ | 'LOW_VOLUME_ERROR'
812
+ | 'INITIAL_MEMORY_ERROR'
813
+ | 'MAC_VIRTUAL_AUDIO_DRV_ERROR'
814
+ | 'MMP_SESSION_CONNECT_ERROR'
815
+ | 'MEDIA_PROCESS_CRASH_ERROR'
816
+ | 'HEARTBEAT_LOST_WITH_MEDIA_PROCESS_ERROR'
817
+ | 'MEDIA_SERVER_CONNECT_ERROR'
818
+ | 'LOCUS_SESSION_CONNECT_ERROR'
819
+ | 'NO_PACKET_SEND_ERROR'
820
+ | 'NETWORK_LOST_ERROR'
821
+ | 'MEDIA_NOT_AVAILABLE';
822
+ txDeviceErrorCode?: number;
823
+ rxDeviceErrorCode?: number;
824
+ sessionConnectErrorCode?: number;
825
+ firstDropTime?: string;
826
+ totalDropCount?: number;
827
+ failureDuration?: number;
828
+ txMoreError?: string;
829
+ rxMoreError?: string;
830
+ totalUserWhenCBStartError?: number;
831
+ sessionConnectExtErrorCode?: number;
832
+ sessionConnectErrorType?: 'unknown' | 'MCC_error' | 'MCS_error' | 'Tahoe_error';
833
+ txSystemErrorCode?: number;
834
+ rxSystemErrorCode?: number;
835
+ errorDetails?: {};
836
+ };
837
+ trigger?:
838
+ | 'bricklet'
839
+ | 'call-history'
840
+ | 'companion-join'
841
+ | 'contact-profile'
842
+ | 'dialpad'
843
+ | 'loci-update'
844
+ | 'media-engine-event'
845
+ | 'meetbutton-click'
846
+ | 'meetings-tab'
847
+ | 'message-click'
848
+ | 'mercury-event'
849
+ | 'obtp'
850
+ | 'onboarding-page'
851
+ | 'other'
852
+ | 'pairing'
853
+ | 'protocol'
854
+ | 'search'
855
+ | 'signaling'
856
+ | 'space-share'
857
+ | 'timeout'
858
+ | 'toast'
859
+ | 'user-interaction'
860
+ | 'wireless-share';
861
+ leaveReason?: 'paired-leave' | 'one-to-one' | 'ended-by-locus';
862
+ displayLocation?:
863
+ | 'toast'
864
+ | 'room-list'
865
+ | 'call-pane'
866
+ | 'call-view'
867
+ | 'room'
868
+ | 'meeting-list'
869
+ | 'meeting'
870
+ | 'personal-meeting-room'
871
+ | 'intents'
872
+ | 'external-link'
873
+ | 'automation'
874
+ | 'meeting-information'
875
+ | 'contact-card'
876
+ | 'control-center'
877
+ | 'search-result'
878
+ | 'other';
879
+ displayType?: 'scheduled';
880
+ dialedDomain?: string;
881
+ isScheduled?: boolean;
882
+ guestModeShare?: boolean;
883
+ highFpsModeShare?: boolean;
884
+ contentAudioShare?: boolean;
885
+ pairingState?: 'paired' | 'observing' | 'challenging';
886
+ pairedDevice?: {
887
+ deviceType?: string;
888
+ deviceId?: string;
889
+ deviceURL?: string;
890
+ modelNumber?: string;
891
+ productName?: string;
892
+ tempSipUri?: string;
893
+ };
894
+ /**
895
+ * Information about the sender of the event
896
+ */
897
+ oldOrigin?: {
898
+ name:
899
+ | 'antares'
900
+ | 'beech'
901
+ | 'breakout'
902
+ | 'cb'
903
+ | 'cloudproxy'
904
+ | 'edonus'
905
+ | 'endpoint'
906
+ | 'givr'
907
+ | 'hecate'
908
+ | 'hedge'
909
+ | 'hesiod'
910
+ | 'homer'
911
+ | 'superhomer'
912
+ | 'l2sip'
913
+ | 'linus'
914
+ | 'locus'
915
+ | 'mcc'
916
+ | 'mcs'
917
+ | 'mercury'
918
+ | 'mes'
919
+ | 'mjs'
920
+ | 'mmp'
921
+ | 'mygdon'
922
+ | 'orpheus'
923
+ | 'page'
924
+ | 'poros'
925
+ | 'rhesos'
926
+ | 'terminus'
927
+ | 'tpgw'
928
+ | 'ucc'
929
+ | 'wdm'
930
+ | 'webexivr';
931
+ userAgent: string;
932
+ buildType?: 'debug' | 'test' | 'prod' | 'tap' | 'analyzer-test';
933
+ /**
934
+ * Will be used as a label for client software status
935
+ */
936
+ upgradeChannel?: string;
937
+ /**
938
+ * Identifier for a particular instance of a service, such as a particular linus
939
+ */
940
+ instanceId?: string;
941
+ networkType: 'wifi' | 'ethernet' | 'cellular' | 'unknown';
942
+ localIP?: string;
943
+ usingProxy?: boolean;
944
+ mediaEngineSoftwareVersion?: string;
945
+ environment?: string;
946
+ newEnvironment?: string;
947
+ /**
948
+ * Details of client environment
949
+ */
950
+ clientInfo?: {
951
+ os: 'windows' | 'mac' | 'linux' | 'ios' | 'android' | 'chrome' | 'uwp-arm64' | 'other';
952
+ osVersion: string;
953
+ localIP?: string;
954
+ gatewayIP?: string;
955
+ macAddress?: string;
956
+ localNetworkPrefix?: string;
957
+ publicNetworkPrefix?: string;
958
+ browserLaunchMethod?:
959
+ | 'activex'
960
+ | 'npapi'
961
+ | 'extension'
962
+ | 'cwsapi'
963
+ | 'java'
964
+ | 'tfs'
965
+ | 'webacd'
966
+ | 'url-handler'
967
+ | 'thinclient';
968
+ clientLaunchMethod?:
969
+ | 'url-handler'
970
+ | 'universal-link'
971
+ | 'voice-command'
972
+ | 'notification'
973
+ | 'manual'
974
+ | 'teams-cross-launch';
975
+ browser?: string;
976
+ browserVersion?: string;
977
+ /**
978
+ * this defines the major client types
979
+ */
980
+ clientType?:
981
+ | 'MEETING_CENTER'
982
+ | 'EVENT_CENTER'
983
+ | 'TRAINING_CENTER'
984
+ | 'TEAMS_CLIENT'
985
+ | 'TEAMS_DEVICE'
986
+ | 'TEAMS_SHARE'
987
+ | 'SIP'
988
+ | 'RECORDING'
989
+ | 'CLOUD_AWARE_SIP'
990
+ | 'TEAMS_WXC_CLIENT'
991
+ | 'WXC_CLIENT'
992
+ | 'WXC_DEVICE'
993
+ | 'WEBEX_JS_SDK'
994
+ | 'VOICEA_CLIENT'
995
+ | 'CISCO_SIP_GW'
996
+ | 'WEBEX_SDK'
997
+ | 'CPAAS_THIRD_PARTY_SDK'
998
+ | 'WXC_THIRD_PARTY';
999
+ /**
1000
+ * this defines the sub types of clients
1001
+ */
1002
+ subClientType?:
1003
+ | 'DESKTOP_APP'
1004
+ | 'DESKTOP_APP_VDI'
1005
+ | 'DEVICE_CURRENT'
1006
+ | 'DEVICE_LEGACY_2020'
1007
+ | 'HVDI_APP'
1008
+ | 'MOBILE_APP'
1009
+ | 'VDI_APP'
1010
+ | 'WEB_APP'
1011
+ | 'MOBILE_NETWORK'
1012
+ | 'HOLOGRAM_HEADSET_APP';
1013
+ clientVersion?: string;
1014
+ localClientVersion?: string;
1015
+ modelNumber?: string;
1016
+ joinFirstUpdateLater?: 'ep-enabled' | 'sp-enabled' | 'not-enabled';
1017
+ standbyUsed?: boolean;
1018
+ prefetchDocShowUsed?: boolean;
1019
+ fastJoinUsed?: boolean;
1020
+ clientDownloadSize?: number;
1021
+ clientDownloadFileCount?: number;
1022
+ nodeId?: number;
1023
+ machineInfo?: string;
1024
+ parentAppName?: string;
1025
+ parentAppInPermitList?: boolean;
1026
+ meetingSiteType?: 'train' | 'webex-11' | 'orion';
1027
+ CDNEnabled?: boolean;
1028
+ clientMajorVersion?: string;
1029
+ majorVersion?: number;
1030
+ minorVersion?: number;
1031
+ revision?: number;
1032
+ isValidClientVersion?: boolean;
1033
+ /**
1034
+ * This object defines the fields related to the CPU being used by the emitter of the event
1035
+ */
1036
+ cpuInfo?: {
1037
+ description: string;
1038
+ clockSpeedGigaHertz: number;
1039
+ numberOfCores: number;
1040
+ architecture: 'intel32' | 'intel64' | 'amd32' | 'amd64' | 'arm32' | 'arm64' | 'unknown';
1041
+ staticPerformance?: string;
1042
+ };
1043
+ shareType?:
1044
+ | 'cb-normal-share'
1045
+ | 'ce-airplay-share'
1046
+ | 'ce-direct-share'
1047
+ | 'ce-gui-loopback-share'
1048
+ | 'ce-input-source-share'
1049
+ | 'ce-input-source-share-hdmi'
1050
+ | 'ce-input-source-share-usbc'
1051
+ | 'ce-jpg-share'
1052
+ | 'ce-miracast-share'
1053
+ | 'mcs-normal-share'
1054
+ | 'mcs-normal-audio-share'
1055
+ | 'mcs-hfps-share'
1056
+ | 'mcs-hfps-audio-share';
1057
+ /**
1058
+ * Video display mode currently in use
1059
+ */
1060
+ videoDisplayMode?: 'grid-view' | 'active-speaker-view';
1061
+ videoLayoutType?:
1062
+ | 'stack'
1063
+ | 'stackWithShare'
1064
+ | 'sideBySide'
1065
+ | 'sideBySideWithShare'
1066
+ | 'grid'
1067
+ | 'floatingActive'
1068
+ | 'floatingThumbnail'
1069
+ | 'floatingGrid'
1070
+ | 'overlay'
1071
+ | 'focus'
1072
+ | 'prominent'
1073
+ | 'focusWithShare'
1074
+ | 'prominentWithShare'
1075
+ | 'equal'
1076
+ | 'equalWithShare';
1077
+ /**
1078
+ * this defines the video render type of meetings
1079
+ */
1080
+ videoRenderType?: 'wme' | 'client_d3d' | 'client_gdi';
1081
+ vdiInfo?: unknown;
1082
+ is64BitsClient?: boolean;
1083
+ webexAppVersion?: string;
1084
+ /**
1085
+ * this defines launch 32 bits client reason
1086
+ */
1087
+ launch32BitsReason?:
1088
+ | 'forcewin32'
1089
+ | 'disablewin64'
1090
+ | 'platform_win32'
1091
+ | 'platform_arm'
1092
+ | 'platform_unknown'
1093
+ | 'version_below_41.11';
1094
+ inMeetingUpdate?: boolean;
1095
+ mtaVersion?: string;
1096
+ isWarholOpening?: boolean;
1097
+ };
1098
+ isHybridMedia?: boolean;
1099
+ originData?: {};
1100
+ };
1101
+ reachabilityStatus?: 'none' | 'all-false' | 'partial-success' | 'all-success';
1102
+ recoveredBy?: 'retry' | 'new';
1103
+ joinType?: 'auto' | 'no-locus-join';
1104
+ audioJoinType?:
1105
+ | 'phone-call-in'
1106
+ | 'phone-call-back'
1107
+ | 'voip'
1108
+ | 'device-call-back'
1109
+ | 'never-join-audio';
1110
+ isVideoMuted?: boolean;
1111
+ /**
1112
+ * phrased HTTP timing
1113
+ */
1114
+ joinHttpTiming?: {
1115
+ connect?: number;
1116
+ dnsLookup?: number;
1117
+ sendRequest?: number;
1118
+ compressRequest?: number;
1119
+ receiveResponse?: number;
1120
+ extractJson?: number;
1121
+ verifyCert?: number;
1122
+ refreshToken?: number;
1123
+ };
1124
+ icePhase?: 'JOIN_MEETING_FINAL' | 'JOIN_MEETING_RETRY' | 'IN_MEETING';
1125
+ userType?: 'host' | 'attendee' | 'cohost' | 'panelist';
1126
+ updateType?: 'new-user' | 'update-user' | 'return-user';
1127
+ isRoapCallEnabled?: boolean;
1128
+ isFirstTimeUser?: boolean;
1129
+ responseCode?: number;
1130
+ /**
1131
+ * Join Meeting Time
1132
+ */
1133
+ joinTimes?: {
1134
+ totalJmt?: number;
1135
+ pageJmt?: number;
1136
+ pluginJmt?: number;
1137
+ clientJmt?: number;
1138
+ cbJmt?: number;
1139
+ clickToInterstitial?: number;
1140
+ interstitialToJoinOK?: number;
1141
+ getPCParametersTime?: number;
1142
+ getGPCParametersTime?: number;
1143
+ getDocShowTime?: number;
1144
+ guestTokenRetrievalTime?: number;
1145
+ showInterstitialTime?: number;
1146
+ clientDownloadTime?: number;
1147
+ clientDecompressTime?: number;
1148
+ GLAJmt?: number;
1149
+ pingJmt?: number;
1150
+ joinConfJmt?: number;
1151
+ announceJmt?: number;
1152
+ launchAppJmt?: number;
1153
+ networkLatency?: number;
1154
+ meetingInfoReqResp?: number;
1155
+ joinReqResp?: number;
1156
+ callInitJoinReq?: number;
1157
+ JMTDetail?: string;
1158
+ localSDPGenRemoteSDPRecv?: number;
1159
+ locusJoinReqResp?: number;
1160
+ joinReqSentReceived?: number;
1161
+ joinRespSentReceived?: number;
1162
+ locusBreakoutSessionMoveReqResp?: number;
1163
+ ICESetupTime?: number;
1164
+ callInitMediaEngineReady?: number;
1165
+ getU2CTime?: number;
1166
+ getWCATime?: number;
1167
+ gotKeyTime?: number;
1168
+ useKeyTime?: number;
1169
+ cacheKeyTime?: number;
1170
+ detectVDITime?: number;
1171
+ connectVDITime?: number;
1172
+ mmpPreConnected?: boolean;
1173
+ audioMCCJMT?: number;
1174
+ audioMCSJMT?: number;
1175
+ audioCBJMT?: number;
1176
+ audioTAJMT?: number;
1177
+ audioPstnJMT?: number;
1178
+ clientPstnDialOutJMT?: number;
1179
+ pstnDialInReferL2SIPJoinReq?: number;
1180
+ pstnDialInReferL2SIPRoapOk?: number;
1181
+ videoMCCJMT?: number;
1182
+ videoMCSJMT?: number;
1183
+ videoCBJMT?: number;
1184
+ videoJMT?: number;
1185
+ WDMRegistrationTime?: number;
1186
+ audioVOIPJMT?: number;
1187
+ audioCallbackJMT?: number;
1188
+ deviceCallbackJMT?: number;
1189
+ deviceParingJMT?: number;
1190
+ exchangeCITokenJMT?: number;
1191
+ registerWDMDeviceJMT?: number;
1192
+ interstitialToMediaOKJMT?: number;
1193
+ clickToMediaOKJMT?: number;
1194
+ stayLobbyTime?: number;
1195
+ totalMediaJMT?: number;
1196
+ loginTime?: number;
1197
+ loggedToInterstitial?: number;
1198
+ audioICESetupTime?: number;
1199
+ videoICESetupTime?: number;
1200
+ shareICESetupTime?: number;
1201
+ initializeCameraTime?: number;
1202
+ installerJmt?: number;
1203
+ getAppMetadataTime?: number;
1204
+ downloadMsiTime?: number;
1205
+ installAppTime?: number;
1206
+ downloadTime?: number;
1207
+ decompressTime?: number;
1208
+ roapOfferRespTime?: number;
1209
+ roapAnswerTime?: number;
1210
+ roapOkTime?: number;
1211
+ roapOfferReqToOkTime?: number;
1212
+ };
1213
+ /**
1214
+ * ROAP message details
1215
+ */
1216
+ roap?: {
1217
+ type?:
1218
+ | 'ANSWER'
1219
+ | 'ERROR'
1220
+ | 'OFFER'
1221
+ | 'OFFER_REQUEST'
1222
+ | 'OFFER_RESPONSE'
1223
+ | 'OK'
1224
+ | 'TURN_DISCOVERY_REQUEST'
1225
+ | 'TURN_DISCOVERY_RESPONSE';
1226
+ messageType?:
1227
+ | 'ANSWER'
1228
+ | 'ERROR'
1229
+ | 'OFFER'
1230
+ | 'OFFER_REQUEST'
1231
+ | 'OFFER_RESPONSE'
1232
+ | 'OK'
1233
+ | 'TURN_DISCOVERY_REQUEST'
1234
+ | 'TURN_DISCOVERY_RESPONSE';
1235
+ error?: string;
1236
+ duration?: number;
1237
+ };
1238
+ /**
1239
+ * metadata associated with emitter of the event. This data is included only in the first emitted for a given call and does not need to be repeated with each event.
1240
+ */
1241
+ mediaMetadata?: {
1242
+ mediaEngineSoftwareType: string;
1243
+ mediaEngineSoftwareVersion: string;
1244
+ applicationSoftwareType: string;
1245
+ applicationSoftwareVersion: string;
1246
+ hardwareType?: string;
1247
+ clientRegion?: string;
1248
+ serverRegion?: string;
1249
+ serverOrg?: string;
1250
+ serverGroup?: string;
1251
+ serverAlias?: string;
1252
+ serverDeployType?: 'private' | 'public';
1253
+ startTime: string;
1254
+ endTime?: string;
1255
+ csi?: number[];
1256
+ isCascade?: boolean;
1257
+ isHybridMedia?: boolean;
1258
+ videoMeshClusterName?: string;
1259
+ videoMeshServerName?: string;
1260
+ isTIP?: boolean;
1261
+ isMARI?: boolean;
1262
+ has264Checksum?: boolean;
1263
+ intervalPeriod?: number;
1264
+ cascadePeerRegion?: string;
1265
+ cascadePeerOrg?: string;
1266
+ cascadePeerGroup?: string;
1267
+ cascadePeerAlias?: string;
1268
+ cascadePeerServerType?:
1269
+ | 'CB'
1270
+ | 'CMS'
1271
+ | 'HESIOD'
1272
+ | 'LINUS'
1273
+ | 'MCC'
1274
+ | 'MCS'
1275
+ | 'MES'
1276
+ | 'MJS'
1277
+ | 'MRS'
1278
+ | 'MYGDONUS'
1279
+ | 'MZM'
1280
+ | 'TERMINUS'
1281
+ | 'TPGW'
1282
+ | 'TA'
1283
+ | 'HOMER'
1284
+ | 'SUPERHOMER'
1285
+ | 'U2C'
1286
+ | 'WCA'
1287
+ | 'MSE'
1288
+ | 'UNKNOWN';
1289
+ cascadePeerDeployType?: 'private' | 'public';
1290
+ };
1291
+ /**
1292
+ * Details of server environment
1293
+ */
1294
+ serverInfo?: {
1295
+ serverType:
1296
+ | 'CB'
1297
+ | 'CMS'
1298
+ | 'HESIOD'
1299
+ | 'LINUS'
1300
+ | 'MCC'
1301
+ | 'MCS'
1302
+ | 'MES'
1303
+ | 'MJS'
1304
+ | 'MRS'
1305
+ | 'MYGDONUS'
1306
+ | 'MZM'
1307
+ | 'TERMINUS'
1308
+ | 'TPGW'
1309
+ | 'TA'
1310
+ | 'HOMER'
1311
+ | 'SUPERHOMER'
1312
+ | 'U2C'
1313
+ | 'WCA'
1314
+ | 'MSE'
1315
+ | 'UNKNOWN';
1316
+ serverAddress?: string;
1317
+ };
1318
+ /**
1319
+ * Details of client connect session
1320
+ */
1321
+ videoSession?: {
1322
+ mediaSessionType?:
1323
+ | 'AUDIO_CALLBACK'
1324
+ | 'AUDIO_VOIP'
1325
+ | 'DEVICE_CALLBACK'
1326
+ | 'DEVICE_PAIRING'
1327
+ | 'VIDEO';
1328
+ isSuccess?: boolean;
1329
+ signalingServerType?:
1330
+ | 'CB'
1331
+ | 'CMS'
1332
+ | 'HESIOD'
1333
+ | 'LINUS'
1334
+ | 'MCC'
1335
+ | 'MCS'
1336
+ | 'MES'
1337
+ | 'MJS'
1338
+ | 'MRS'
1339
+ | 'MYGDONUS'
1340
+ | 'MZM'
1341
+ | 'TERMINUS'
1342
+ | 'TPGW'
1343
+ | 'TA'
1344
+ | 'HOMER'
1345
+ | 'SUPERHOMER'
1346
+ | 'U2C'
1347
+ | 'WCA'
1348
+ | 'MSE'
1349
+ | 'UNKNOWN';
1350
+ signalingServerAddress?: string;
1351
+ mediaServerType?:
1352
+ | 'CB'
1353
+ | 'CMS'
1354
+ | 'HESIOD'
1355
+ | 'LINUS'
1356
+ | 'MCC'
1357
+ | 'MCS'
1358
+ | 'MES'
1359
+ | 'MJS'
1360
+ | 'MRS'
1361
+ | 'MYGDONUS'
1362
+ | 'MZM'
1363
+ | 'TERMINUS'
1364
+ | 'TPGW'
1365
+ | 'TA'
1366
+ | 'HOMER'
1367
+ | 'SUPERHOMER'
1368
+ | 'U2C'
1369
+ | 'WCA'
1370
+ | 'MSE'
1371
+ | 'UNKNOWN';
1372
+ mediaServerAddress?: string;
1373
+ errorDescription?: string;
1374
+ errorCode?: number;
1375
+ mediaErrorType?:
1376
+ | 'NO_ERROR'
1377
+ | 'DEVICE_ERROR'
1378
+ | 'LOAD_LIBRARY_ERROR'
1379
+ | 'MCS_SESSION_CONNECT_ERROR'
1380
+ | 'CB_SESSION_CREATE_ERROR'
1381
+ | 'NO_FRAME_DECODE_ERROR'
1382
+ | 'NO_PACKET_RECV_ERROR'
1383
+ | 'LOW_VOLUME_ERROR'
1384
+ | 'INITIAL_MEMORY_ERROR'
1385
+ | 'MAC_VIRTUAL_AUDIO_DRV_ERROR'
1386
+ | 'MMP_SESSION_CONNECT_ERROR'
1387
+ | 'MEDIA_PROCESS_CRASH_ERROR'
1388
+ | 'HEARTBEAT_LOST_WITH_MEDIA_PROCESS_ERROR'
1389
+ | 'MEDIA_SERVER_CONNECT_ERROR'
1390
+ | 'LOCUS_SESSION_CONNECT_ERROR'
1391
+ | 'NO_PACKET_SEND_ERROR'
1392
+ | 'NETWORK_LOST_ERROR'
1393
+ | 'MEDIA_NOT_AVAILABLE';
1394
+ isJoinAtStart?: boolean;
1395
+ };
1396
+ /**
1397
+ * Details of client connect session
1398
+ */
1399
+ audioVOIPSession?: {
1400
+ mediaSessionType?:
1401
+ | 'AUDIO_CALLBACK'
1402
+ | 'AUDIO_VOIP'
1403
+ | 'DEVICE_CALLBACK'
1404
+ | 'DEVICE_PAIRING'
1405
+ | 'VIDEO';
1406
+ isSuccess?: boolean;
1407
+ signalingServerType?:
1408
+ | 'CB'
1409
+ | 'CMS'
1410
+ | 'HESIOD'
1411
+ | 'LINUS'
1412
+ | 'MCC'
1413
+ | 'MCS'
1414
+ | 'MES'
1415
+ | 'MJS'
1416
+ | 'MRS'
1417
+ | 'MYGDONUS'
1418
+ | 'MZM'
1419
+ | 'TERMINUS'
1420
+ | 'TPGW'
1421
+ | 'TA'
1422
+ | 'HOMER'
1423
+ | 'SUPERHOMER'
1424
+ | 'U2C'
1425
+ | 'WCA'
1426
+ | 'MSE'
1427
+ | 'UNKNOWN';
1428
+ signalingServerAddress?: string;
1429
+ mediaServerType?:
1430
+ | 'CB'
1431
+ | 'CMS'
1432
+ | 'HESIOD'
1433
+ | 'LINUS'
1434
+ | 'MCC'
1435
+ | 'MCS'
1436
+ | 'MES'
1437
+ | 'MJS'
1438
+ | 'MRS'
1439
+ | 'MYGDONUS'
1440
+ | 'MZM'
1441
+ | 'TERMINUS'
1442
+ | 'TPGW'
1443
+ | 'TA'
1444
+ | 'HOMER'
1445
+ | 'SUPERHOMER'
1446
+ | 'U2C'
1447
+ | 'WCA'
1448
+ | 'MSE'
1449
+ | 'UNKNOWN';
1450
+ mediaServerAddress?: string;
1451
+ errorDescription?: string;
1452
+ errorCode?: number;
1453
+ mediaErrorType?:
1454
+ | 'NO_ERROR'
1455
+ | 'DEVICE_ERROR'
1456
+ | 'LOAD_LIBRARY_ERROR'
1457
+ | 'MCS_SESSION_CONNECT_ERROR'
1458
+ | 'CB_SESSION_CREATE_ERROR'
1459
+ | 'NO_FRAME_DECODE_ERROR'
1460
+ | 'NO_PACKET_RECV_ERROR'
1461
+ | 'LOW_VOLUME_ERROR'
1462
+ | 'INITIAL_MEMORY_ERROR'
1463
+ | 'MAC_VIRTUAL_AUDIO_DRV_ERROR'
1464
+ | 'MMP_SESSION_CONNECT_ERROR'
1465
+ | 'MEDIA_PROCESS_CRASH_ERROR'
1466
+ | 'HEARTBEAT_LOST_WITH_MEDIA_PROCESS_ERROR'
1467
+ | 'MEDIA_SERVER_CONNECT_ERROR'
1468
+ | 'LOCUS_SESSION_CONNECT_ERROR'
1469
+ | 'NO_PACKET_SEND_ERROR'
1470
+ | 'NETWORK_LOST_ERROR'
1471
+ | 'MEDIA_NOT_AVAILABLE';
1472
+ isJoinAtStart?: boolean;
1473
+ };
1474
+ /**
1475
+ * Details of client connect session
1476
+ */
1477
+ audioCallbackSession?: {
1478
+ mediaSessionType?:
1479
+ | 'AUDIO_CALLBACK'
1480
+ | 'AUDIO_VOIP'
1481
+ | 'DEVICE_CALLBACK'
1482
+ | 'DEVICE_PAIRING'
1483
+ | 'VIDEO';
1484
+ isSuccess?: boolean;
1485
+ signalingServerType?:
1486
+ | 'CB'
1487
+ | 'CMS'
1488
+ | 'HESIOD'
1489
+ | 'LINUS'
1490
+ | 'MCC'
1491
+ | 'MCS'
1492
+ | 'MES'
1493
+ | 'MJS'
1494
+ | 'MRS'
1495
+ | 'MYGDONUS'
1496
+ | 'MZM'
1497
+ | 'TERMINUS'
1498
+ | 'TPGW'
1499
+ | 'TA'
1500
+ | 'HOMER'
1501
+ | 'SUPERHOMER'
1502
+ | 'U2C'
1503
+ | 'WCA'
1504
+ | 'MSE'
1505
+ | 'UNKNOWN';
1506
+ signalingServerAddress?: string;
1507
+ mediaServerType?:
1508
+ | 'CB'
1509
+ | 'CMS'
1510
+ | 'HESIOD'
1511
+ | 'LINUS'
1512
+ | 'MCC'
1513
+ | 'MCS'
1514
+ | 'MES'
1515
+ | 'MJS'
1516
+ | 'MRS'
1517
+ | 'MYGDONUS'
1518
+ | 'MZM'
1519
+ | 'TERMINUS'
1520
+ | 'TPGW'
1521
+ | 'TA'
1522
+ | 'HOMER'
1523
+ | 'SUPERHOMER'
1524
+ | 'U2C'
1525
+ | 'WCA'
1526
+ | 'MSE'
1527
+ | 'UNKNOWN';
1528
+ mediaServerAddress?: string;
1529
+ errorDescription?: string;
1530
+ errorCode?: number;
1531
+ mediaErrorType?:
1532
+ | 'NO_ERROR'
1533
+ | 'DEVICE_ERROR'
1534
+ | 'LOAD_LIBRARY_ERROR'
1535
+ | 'MCS_SESSION_CONNECT_ERROR'
1536
+ | 'CB_SESSION_CREATE_ERROR'
1537
+ | 'NO_FRAME_DECODE_ERROR'
1538
+ | 'NO_PACKET_RECV_ERROR'
1539
+ | 'LOW_VOLUME_ERROR'
1540
+ | 'INITIAL_MEMORY_ERROR'
1541
+ | 'MAC_VIRTUAL_AUDIO_DRV_ERROR'
1542
+ | 'MMP_SESSION_CONNECT_ERROR'
1543
+ | 'MEDIA_PROCESS_CRASH_ERROR'
1544
+ | 'HEARTBEAT_LOST_WITH_MEDIA_PROCESS_ERROR'
1545
+ | 'MEDIA_SERVER_CONNECT_ERROR'
1546
+ | 'LOCUS_SESSION_CONNECT_ERROR'
1547
+ | 'NO_PACKET_SEND_ERROR'
1548
+ | 'NETWORK_LOST_ERROR'
1549
+ | 'MEDIA_NOT_AVAILABLE';
1550
+ isJoinAtStart?: boolean;
1551
+ };
1552
+ /**
1553
+ * Details of client connect session
1554
+ */
1555
+ devicePairingSession?: {
1556
+ mediaSessionType?:
1557
+ | 'AUDIO_CALLBACK'
1558
+ | 'AUDIO_VOIP'
1559
+ | 'DEVICE_CALLBACK'
1560
+ | 'DEVICE_PAIRING'
1561
+ | 'VIDEO';
1562
+ isSuccess?: boolean;
1563
+ signalingServerType?:
1564
+ | 'CB'
1565
+ | 'CMS'
1566
+ | 'HESIOD'
1567
+ | 'LINUS'
1568
+ | 'MCC'
1569
+ | 'MCS'
1570
+ | 'MES'
1571
+ | 'MJS'
1572
+ | 'MRS'
1573
+ | 'MYGDONUS'
1574
+ | 'MZM'
1575
+ | 'TERMINUS'
1576
+ | 'TPGW'
1577
+ | 'TA'
1578
+ | 'HOMER'
1579
+ | 'SUPERHOMER'
1580
+ | 'U2C'
1581
+ | 'WCA'
1582
+ | 'MSE'
1583
+ | 'UNKNOWN';
1584
+ signalingServerAddress?: string;
1585
+ mediaServerType?:
1586
+ | 'CB'
1587
+ | 'CMS'
1588
+ | 'HESIOD'
1589
+ | 'LINUS'
1590
+ | 'MCC'
1591
+ | 'MCS'
1592
+ | 'MES'
1593
+ | 'MJS'
1594
+ | 'MRS'
1595
+ | 'MYGDONUS'
1596
+ | 'MZM'
1597
+ | 'TERMINUS'
1598
+ | 'TPGW'
1599
+ | 'TA'
1600
+ | 'HOMER'
1601
+ | 'SUPERHOMER'
1602
+ | 'U2C'
1603
+ | 'WCA'
1604
+ | 'MSE'
1605
+ | 'UNKNOWN';
1606
+ mediaServerAddress?: string;
1607
+ errorDescription?: string;
1608
+ errorCode?: number;
1609
+ mediaErrorType?:
1610
+ | 'NO_ERROR'
1611
+ | 'DEVICE_ERROR'
1612
+ | 'LOAD_LIBRARY_ERROR'
1613
+ | 'MCS_SESSION_CONNECT_ERROR'
1614
+ | 'CB_SESSION_CREATE_ERROR'
1615
+ | 'NO_FRAME_DECODE_ERROR'
1616
+ | 'NO_PACKET_RECV_ERROR'
1617
+ | 'LOW_VOLUME_ERROR'
1618
+ | 'INITIAL_MEMORY_ERROR'
1619
+ | 'MAC_VIRTUAL_AUDIO_DRV_ERROR'
1620
+ | 'MMP_SESSION_CONNECT_ERROR'
1621
+ | 'MEDIA_PROCESS_CRASH_ERROR'
1622
+ | 'HEARTBEAT_LOST_WITH_MEDIA_PROCESS_ERROR'
1623
+ | 'MEDIA_SERVER_CONNECT_ERROR'
1624
+ | 'LOCUS_SESSION_CONNECT_ERROR'
1625
+ | 'NO_PACKET_SEND_ERROR'
1626
+ | 'NETWORK_LOST_ERROR'
1627
+ | 'MEDIA_NOT_AVAILABLE';
1628
+ isJoinAtStart?: boolean;
1629
+ };
1630
+ /**
1631
+ * Details of client connect session
1632
+ */
1633
+ deviceCallbackSession?: {
1634
+ mediaSessionType?:
1635
+ | 'AUDIO_CALLBACK'
1636
+ | 'AUDIO_VOIP'
1637
+ | 'DEVICE_CALLBACK'
1638
+ | 'DEVICE_PAIRING'
1639
+ | 'VIDEO';
1640
+ isSuccess?: boolean;
1641
+ signalingServerType?:
1642
+ | 'CB'
1643
+ | 'CMS'
1644
+ | 'HESIOD'
1645
+ | 'LINUS'
1646
+ | 'MCC'
1647
+ | 'MCS'
1648
+ | 'MES'
1649
+ | 'MJS'
1650
+ | 'MRS'
1651
+ | 'MYGDONUS'
1652
+ | 'MZM'
1653
+ | 'TERMINUS'
1654
+ | 'TPGW'
1655
+ | 'TA'
1656
+ | 'HOMER'
1657
+ | 'SUPERHOMER'
1658
+ | 'U2C'
1659
+ | 'WCA'
1660
+ | 'MSE'
1661
+ | 'UNKNOWN';
1662
+ signalingServerAddress?: string;
1663
+ mediaServerType?:
1664
+ | 'CB'
1665
+ | 'CMS'
1666
+ | 'HESIOD'
1667
+ | 'LINUS'
1668
+ | 'MCC'
1669
+ | 'MCS'
1670
+ | 'MES'
1671
+ | 'MJS'
1672
+ | 'MRS'
1673
+ | 'MYGDONUS'
1674
+ | 'MZM'
1675
+ | 'TERMINUS'
1676
+ | 'TPGW'
1677
+ | 'TA'
1678
+ | 'HOMER'
1679
+ | 'SUPERHOMER'
1680
+ | 'U2C'
1681
+ | 'WCA'
1682
+ | 'MSE'
1683
+ | 'UNKNOWN';
1684
+ mediaServerAddress?: string;
1685
+ errorDescription?: string;
1686
+ errorCode?: number;
1687
+ mediaErrorType?:
1688
+ | 'NO_ERROR'
1689
+ | 'DEVICE_ERROR'
1690
+ | 'LOAD_LIBRARY_ERROR'
1691
+ | 'MCS_SESSION_CONNECT_ERROR'
1692
+ | 'CB_SESSION_CREATE_ERROR'
1693
+ | 'NO_FRAME_DECODE_ERROR'
1694
+ | 'NO_PACKET_RECV_ERROR'
1695
+ | 'LOW_VOLUME_ERROR'
1696
+ | 'INITIAL_MEMORY_ERROR'
1697
+ | 'MAC_VIRTUAL_AUDIO_DRV_ERROR'
1698
+ | 'MMP_SESSION_CONNECT_ERROR'
1699
+ | 'MEDIA_PROCESS_CRASH_ERROR'
1700
+ | 'HEARTBEAT_LOST_WITH_MEDIA_PROCESS_ERROR'
1701
+ | 'MEDIA_SERVER_CONNECT_ERROR'
1702
+ | 'LOCUS_SESSION_CONNECT_ERROR'
1703
+ | 'NO_PACKET_SEND_ERROR'
1704
+ | 'NETWORK_LOST_ERROR'
1705
+ | 'MEDIA_NOT_AVAILABLE';
1706
+ isJoinAtStart?: boolean;
1707
+ };
1708
+ /**
1709
+ * report when client crash
1710
+ */
1711
+ crashReport?: {
1712
+ /**
1713
+ * data define for background noise removal event
1714
+ */
1715
+ eventData?: {
1716
+ crashType?: 'client' | 'other' | 'thirdparty' | 'wme' | 'mta';
1717
+ processName?: string;
1718
+ moduleName?: string;
1719
+ threadInfo?: string;
1720
+ crashFrame?: string;
1721
+ crashStack?: string;
1722
+ exceptionType?: 'unset' | 'crash' | 'freeze' | 'disappear';
1723
+ lastAction?: string;
1724
+ forTrace?: boolean;
1725
+ registerInfo?: string;
1726
+ extData?: string;
1727
+ };
1728
+ };
1729
+ clientCrashCallStack?: string;
1730
+ /**
1731
+ * Details of breakout session information, sent after end of breakout session
1732
+ */
1733
+ breakoutSessionSummaryInfo?: {
1734
+ duration: number;
1735
+ subConferenceCount: number;
1736
+ totalAttendeeCount: number;
1737
+ participantCount: number;
1738
+ assignedparticipantCount: number;
1739
+ cohostCount: number;
1740
+ averageAttendeeCountPerSubConference: number;
1741
+ totalHostJoinedCount: number;
1742
+ isBoStarted: boolean;
1743
+ isBoEnabled: boolean;
1744
+ isPreAssigned: boolean;
1745
+ boStartedTimers: number;
1746
+ createType: 'pre-meeting' | 'in-meeting';
1747
+ enableType: 'pre-meeting' | 'in-meeting';
1748
+ };
1749
+ breakoutSessionAction?:
1750
+ | 'add'
1751
+ | 'assign'
1752
+ | 'ask-for-help'
1753
+ | 'breakout-session-open'
1754
+ | 'breakout-session-close'
1755
+ | 'breakout-session-mute-all'
1756
+ | 'breakout-session-unmute-all'
1757
+ | 'broadcast-open'
1758
+ | 'broadcast-send'
1759
+ | 'cancel-automatic-close'
1760
+ | 'create'
1761
+ | 'delete'
1762
+ | 'disable'
1763
+ | 'dynamic-assign'
1764
+ | 'dynamic-exchange'
1765
+ | 'end'
1766
+ | 'enable'
1767
+ | 'exchange'
1768
+ | 'join'
1769
+ | 'leave'
1770
+ | 'lock-all-sessions'
1771
+ | 'lock-this-sessions'
1772
+ | 'moveto'
1773
+ | 'mute-all'
1774
+ | 'mute-all-set'
1775
+ | 'recreate'
1776
+ | 'remove'
1777
+ | 'rename'
1778
+ | 'search'
1779
+ | 'select-all'
1780
+ | 'show-all-sessions'
1781
+ | 'start'
1782
+ | 'unmute-all'
1783
+ | 'unlock-all-sessions'
1784
+ | 'unlock-this-sessions'
1785
+ | 'allow-leave-session'
1786
+ | 'allow-join-session-later'
1787
+ | 'auto-end-sessions'
1788
+ | 'time-before-leave-session';
1789
+ clientAction?:
1790
+ | 'changeVolume'
1791
+ | 'disableHardMute'
1792
+ | 'enableHardMute'
1793
+ | 'gesture'
1794
+ | 'joinMeetingWithPairedDevice'
1795
+ | 'muteAll'
1796
+ | 'mutePairedDevice'
1797
+ | 'muteSipDevice'
1798
+ | 'reaction'
1799
+ | 'requestUnmute'
1800
+ | 'setLanguage'
1801
+ | 'unifyRaiseHand'
1802
+ | 'unmuteAll'
1803
+ | 'unmutePairedDevice'
1804
+ | 'unmuteSipDevice';
1805
+ clientActionFrom?:
1806
+ | 'actionBar'
1807
+ | 'auto'
1808
+ | 'breakoutAssignDialog'
1809
+ | 'breakoutPopupDialog'
1810
+ | 'fitMenu'
1811
+ | 'hardMuteMoreOptionsDialog'
1812
+ | 'initAction'
1813
+ | 'mainMenu'
1814
+ | 'plist'
1815
+ | 'plistContextMenu'
1816
+ | 'plistToolBar'
1817
+ | 'videoThumbnail'
1818
+ | 'muteAllAction'
1819
+ | 'reactionPopupDialog'
1820
+ | 'unmuteAllAction';
1821
+ clientActionTime?: number;
1822
+ /**
1823
+ * Details of client action
1824
+ */
1825
+ clientActionInfo?: {
1826
+ clientAction:
1827
+ | 'changeVolume'
1828
+ | 'disableHardMute'
1829
+ | 'enableHardMute'
1830
+ | 'gesture'
1831
+ | 'joinMeetingWithPairedDevice'
1832
+ | 'muteAll'
1833
+ | 'mutePairedDevice'
1834
+ | 'muteSipDevice'
1835
+ | 'reaction'
1836
+ | 'requestUnmute'
1837
+ | 'setLanguage'
1838
+ | 'unifyRaiseHand'
1839
+ | 'unmuteAll'
1840
+ | 'unmutePairedDevice'
1841
+ | 'unmuteSipDevice';
1842
+ actionFrom?:
1843
+ | 'actionBar'
1844
+ | 'auto'
1845
+ | 'breakoutAssignDialog'
1846
+ | 'breakoutPopupDialog'
1847
+ | 'fitMenu'
1848
+ | 'hardMuteMoreOptionsDialog'
1849
+ | 'initAction'
1850
+ | 'mainMenu'
1851
+ | 'plist'
1852
+ | 'plistContextMenu'
1853
+ | 'plistToolBar'
1854
+ | 'videoThumbnail'
1855
+ | 'muteAllAction'
1856
+ | 'reactionPopupDialog'
1857
+ | 'unmuteAllAction';
1858
+ actionRole?: 'host' | 'attendee' | 'presenter' | 'cohost' | 'self';
1859
+ duration?: number;
1860
+ fromValue?: string;
1861
+ toValue?: string;
1862
+ gestureType?: 'clap' | 'none' | 'raiseHand' | 'thumpUp' | 'thumbDown';
1863
+ languageAction?:
1864
+ | 'openLanguageDialog'
1865
+ | 'subscribeTransLanguage'
1866
+ | 'unsubscribeTransLanguage'
1867
+ | 'changeSpeakLanguage'
1868
+ | 'transcriptTurnOnWebexAssistantDialog'
1869
+ | 'transcriptTurnOffWebexAssistantDialog'
1870
+ | 'transcriptTurnOnWebexAssistantMenu'
1871
+ | 'transcriptTurn0ffWebexAssistantMenu'
1872
+ | 'transcriptViewHighlightPanel'
1873
+ | 'transcriptViewHighlightPanelViaCloseCaption'
1874
+ | 'transcriptViewHighlightPanelViaPanelOption'
1875
+ | 'transcriptViewHighlightPanelViaWebexAssistant'
1876
+ | 'transcriptEnableCloseCaptionDialog'
1877
+ | 'transcriptDisableCloseCaptionDialog'
1878
+ | 'transcriptDisableCloseCaptionDialogForActiveCCOpen'
1879
+ | 'transcriptDisableCloseCaptionDialogViaCCButton'
1880
+ | 'transcriptDisableCloseCaptionDialogViaCCDialog'
1881
+ | 'transcriptEnableCloseCaptionMenu'
1882
+ | 'transcriptDisableCloseCaptionMenu'
1883
+ | 'transcriptTabToCaptions'
1884
+ | 'transcriptTabToHighlights'
1885
+ | 'transcriptCreateHighlight'
1886
+ | 'transcriptDeleteHighlightInHighlight'
1887
+ | 'transcriptDeleteHighlightInCaptions'
1888
+ | 'transcriptChangeFontSize'
1889
+ | 'transcriptBackToDefaultPosition'
1890
+ | 'transcriptChangeModeToDark'
1891
+ | 'transcriptChangeModeToLight';
1892
+ fromLanguage?:
1893
+ | 'lan_af'
1894
+ | 'lan_sq'
1895
+ | 'lan_am'
1896
+ | 'lan_ar'
1897
+ | 'lan_hy'
1898
+ | 'lan_az'
1899
+ | 'lan_eu'
1900
+ | 'lan_be'
1901
+ | 'lan_bn'
1902
+ | 'lan_bs'
1903
+ | 'lan_bg'
1904
+ | 'lan_ca'
1905
+ | 'lan_ceb'
1906
+ | 'lan_zh'
1907
+ | 'lan_zh-TW'
1908
+ | 'lan_co'
1909
+ | 'lan_hr'
1910
+ | 'lan_cs'
1911
+ | 'lan_da'
1912
+ | 'lan_nl'
1913
+ | 'lan_en'
1914
+ | 'lan_en-GB'
1915
+ | 'lan_eo'
1916
+ | 'lan_et'
1917
+ | 'lan_fi'
1918
+ | 'lan_fr'
1919
+ | 'lan_fr-CA'
1920
+ | 'lan_fy'
1921
+ | 'lan_gl'
1922
+ | 'lan_ka'
1923
+ | 'lan_de'
1924
+ | 'lan_el'
1925
+ | 'lan_gu'
1926
+ | 'lan_ht'
1927
+ | 'lan_ha'
1928
+ | 'lan_haw'
1929
+ | 'lan_he'
1930
+ | 'lan_hi'
1931
+ | 'lan_hmn'
1932
+ | 'lan_hu'
1933
+ | 'lan_is'
1934
+ | 'lan_ig'
1935
+ | 'lan_id'
1936
+ | 'lan_ga'
1937
+ | 'lan_it'
1938
+ | 'lan_ja'
1939
+ | 'lan_jv'
1940
+ | 'lan_kn'
1941
+ | 'lan_kk'
1942
+ | 'lan_km'
1943
+ | 'lan_rw'
1944
+ | 'lan_ko'
1945
+ | 'lan_ku'
1946
+ | 'lan_ky'
1947
+ | 'lan_lo'
1948
+ | 'lan_la'
1949
+ | 'lan_lv'
1950
+ | 'lan_lt'
1951
+ | 'lan_lb'
1952
+ | 'lan_mk'
1953
+ | 'lan_mg'
1954
+ | 'lan_ms'
1955
+ | 'lan_ml'
1956
+ | 'lan_mt'
1957
+ | 'lan_mi'
1958
+ | 'lan_mr'
1959
+ | 'lan_mn'
1960
+ | 'lan_my'
1961
+ | 'lan_ne'
1962
+ | 'lan_no'
1963
+ | 'lan_ny'
1964
+ | 'lan_or'
1965
+ | 'lan_ps'
1966
+ | 'lan_fa'
1967
+ | 'lan_pl'
1968
+ | 'lan_pt'
1969
+ | 'lan_pa'
1970
+ | 'lan_ro'
1971
+ | 'lan_ru'
1972
+ | 'lan_sm'
1973
+ | 'lan_gd'
1974
+ | 'lan_sr'
1975
+ | 'lan_st'
1976
+ | 'lan_sn'
1977
+ | 'lan_sd'
1978
+ | 'lan_si'
1979
+ | 'lan_sk'
1980
+ | 'lan_sl'
1981
+ | 'lan_so'
1982
+ | 'lan_es'
1983
+ | 'lan_es-ES'
1984
+ | 'lan_su'
1985
+ | 'lan_sw'
1986
+ | 'lan_sv'
1987
+ | 'lan_tl'
1988
+ | 'lan_tg'
1989
+ | 'lan_ta'
1990
+ | 'lan_tt'
1991
+ | 'lan_te'
1992
+ | 'lan_th'
1993
+ | 'lan_tr'
1994
+ | 'lan_tk'
1995
+ | 'lan_uk'
1996
+ | 'lan_ur'
1997
+ | 'lan_ug'
1998
+ | 'lan_uz'
1999
+ | 'lan_vi'
2000
+ | 'lan_cy'
2001
+ | 'lan_xh'
2002
+ | 'lan_yi'
2003
+ | 'lan_yo'
2004
+ | 'lan_zu';
2005
+ toLanguage?:
2006
+ | 'lan_af'
2007
+ | 'lan_sq'
2008
+ | 'lan_am'
2009
+ | 'lan_ar'
2010
+ | 'lan_hy'
2011
+ | 'lan_az'
2012
+ | 'lan_eu'
2013
+ | 'lan_be'
2014
+ | 'lan_bn'
2015
+ | 'lan_bs'
2016
+ | 'lan_bg'
2017
+ | 'lan_ca'
2018
+ | 'lan_ceb'
2019
+ | 'lan_zh'
2020
+ | 'lan_zh-TW'
2021
+ | 'lan_co'
2022
+ | 'lan_hr'
2023
+ | 'lan_cs'
2024
+ | 'lan_da'
2025
+ | 'lan_nl'
2026
+ | 'lan_en'
2027
+ | 'lan_en-GB'
2028
+ | 'lan_eo'
2029
+ | 'lan_et'
2030
+ | 'lan_fi'
2031
+ | 'lan_fr'
2032
+ | 'lan_fr-CA'
2033
+ | 'lan_fy'
2034
+ | 'lan_gl'
2035
+ | 'lan_ka'
2036
+ | 'lan_de'
2037
+ | 'lan_el'
2038
+ | 'lan_gu'
2039
+ | 'lan_ht'
2040
+ | 'lan_ha'
2041
+ | 'lan_haw'
2042
+ | 'lan_he'
2043
+ | 'lan_hi'
2044
+ | 'lan_hmn'
2045
+ | 'lan_hu'
2046
+ | 'lan_is'
2047
+ | 'lan_ig'
2048
+ | 'lan_id'
2049
+ | 'lan_ga'
2050
+ | 'lan_it'
2051
+ | 'lan_ja'
2052
+ | 'lan_jv'
2053
+ | 'lan_kn'
2054
+ | 'lan_kk'
2055
+ | 'lan_km'
2056
+ | 'lan_rw'
2057
+ | 'lan_ko'
2058
+ | 'lan_ku'
2059
+ | 'lan_ky'
2060
+ | 'lan_lo'
2061
+ | 'lan_la'
2062
+ | 'lan_lv'
2063
+ | 'lan_lt'
2064
+ | 'lan_lb'
2065
+ | 'lan_mk'
2066
+ | 'lan_mg'
2067
+ | 'lan_ms'
2068
+ | 'lan_ml'
2069
+ | 'lan_mt'
2070
+ | 'lan_mi'
2071
+ | 'lan_mr'
2072
+ | 'lan_mn'
2073
+ | 'lan_my'
2074
+ | 'lan_ne'
2075
+ | 'lan_no'
2076
+ | 'lan_ny'
2077
+ | 'lan_or'
2078
+ | 'lan_ps'
2079
+ | 'lan_fa'
2080
+ | 'lan_pl'
2081
+ | 'lan_pt'
2082
+ | 'lan_pa'
2083
+ | 'lan_ro'
2084
+ | 'lan_ru'
2085
+ | 'lan_sm'
2086
+ | 'lan_gd'
2087
+ | 'lan_sr'
2088
+ | 'lan_st'
2089
+ | 'lan_sn'
2090
+ | 'lan_sd'
2091
+ | 'lan_si'
2092
+ | 'lan_sk'
2093
+ | 'lan_sl'
2094
+ | 'lan_so'
2095
+ | 'lan_es'
2096
+ | 'lan_es-ES'
2097
+ | 'lan_su'
2098
+ | 'lan_sw'
2099
+ | 'lan_sv'
2100
+ | 'lan_tl'
2101
+ | 'lan_tg'
2102
+ | 'lan_ta'
2103
+ | 'lan_tt'
2104
+ | 'lan_te'
2105
+ | 'lan_th'
2106
+ | 'lan_tr'
2107
+ | 'lan_tk'
2108
+ | 'lan_uk'
2109
+ | 'lan_ur'
2110
+ | 'lan_ug'
2111
+ | 'lan_uz'
2112
+ | 'lan_vi'
2113
+ | 'lan_cy'
2114
+ | 'lan_xh'
2115
+ | 'lan_yi'
2116
+ | 'lan_yo'
2117
+ | 'lan_zu';
2118
+ reactionType?:
2119
+ | 'celebrate'
2120
+ | 'clap'
2121
+ | 'haha'
2122
+ | 'love'
2123
+ | 'sad'
2124
+ | 'smile'
2125
+ | 'thumbUp'
2126
+ | 'thumbDown'
2127
+ | 'wow'
2128
+ | 'collapse'
2129
+ | 'disable'
2130
+ | 'enable'
2131
+ | 'disableGestures'
2132
+ | 'enableGestures'
2133
+ | 'expand'
2134
+ | 'openMenu';
2135
+ unifyRaiseHand?: 'lowerHand' | 'lowerAllHand' | 'raiseHand';
2136
+ };
2137
+ clientEventType?: 'normal-event' | 'user-action';
2138
+ /**
2139
+ * Audio background noise removal
2140
+ */
2141
+ audioNoiseRemoval?: {
2142
+ /**
2143
+ * background noise removal action data
2144
+ */
2145
+ actionData?: {
2146
+ bnrActionType: 'turn-on-bnr' | 'turn-off-bnr';
2147
+ };
2148
+ /**
2149
+ * background noise removal event data
2150
+ */
2151
+ eventData?: {
2152
+ bnrEventType: 'bnr-on' | 'bnr-off';
2153
+ };
2154
+ };
2155
+ /**
2156
+ * Details of client action
2157
+ */
2158
+ gestureRecognition?: {
2159
+ supportedMachine?: boolean;
2160
+ gestureType?: 'clap' | 'none' | 'raiseHand' | 'thumpUp' | 'thumbDown';
2161
+ duration?: number;
2162
+ };
2163
+ /**
2164
+ * post meeting hook report
2165
+ */
2166
+ postMeetingHook?: {
2167
+ /**
2168
+ * data define for background noise removal action
2169
+ */
2170
+ actionData?: {
2171
+ pmhActionType: 'share' | 'view-details' | 'close';
2172
+ pmhActionResult?: string;
2173
+ };
2174
+ /**
2175
+ * data define for background noise removal event
2176
+ */
2177
+ eventData?: {
2178
+ pmhEventType: 'used' | 'not-show-again';
2179
+ };
2180
+ };
2181
+ breakoutSessionJoinType?: 'any-one-can-join' | 'auto' | 'manual' | 'preassign-rest';
2182
+ breakoutSessionActionClickFrom?:
2183
+ | 'actionbar'
2184
+ | 'assign-dialog'
2185
+ | 'auto'
2186
+ | 'breakout-session-list'
2187
+ | 'contextmenu'
2188
+ | 'menu'
2189
+ | 'plist'
2190
+ | 'popup-dialog';
2191
+ broadcastSendType?:
2192
+ | 'all-sessions-all-participants'
2193
+ | 'all-sessions-all-cohost-and-presenters'
2194
+ | 'one-session-all-participants'
2195
+ | 'one-session-one-participant';
2196
+ breakoutSessionDialogOpenTime?: number;
2197
+ breakoutSessionDialogAssignTime?: number;
2198
+ /**
2199
+ * call embedded browser object result, if failed, will populate error at Error item
2200
+ */
2201
+ embeddedBrowserObject?: {
2202
+ browserType: 'IE' | 'WebView2';
2203
+ version?: string;
2204
+ callFrom?: string;
2205
+ };
2206
+ /**
2207
+ * data define for download detail data
2208
+ */
2209
+ downloadInfo?: {
2210
+ percentCompleted?: number;
2211
+ packageName?: string;
2212
+ timestamp?: string;
2213
+ clientDownloadFileCount?: number;
2214
+ clientDownloadSize?: number;
2215
+ clientDownloadTime?: number;
2216
+ clientDecompressTime?: number;
2217
+ CDNEnabled?: boolean;
2218
+ updateFlag?: 'preMeeting' | 'inMeeting' | 'postMeeting';
2219
+ epSP?: boolean;
2220
+ isEPUpdate?: boolean;
2221
+ spDifferent?: number;
2222
+ spVersionDelta?: number;
2223
+ deltaUpdate?: boolean;
2224
+ deltaListDownloadTime?: number;
2225
+ deltaPackageDownloadTime?: number;
2226
+ deltaCachePackageCopyTime?: number;
2227
+ deltaApplyTime?: number;
2228
+ deltaPackageUncompressTime?: number;
2229
+ deltaDuration?: number;
2230
+ deltaVersion?: string;
2231
+ deltaDownloadFullPackage?: boolean;
2232
+ deltaFileSize?: number;
2233
+ deltaUpdateEnabled?: boolean;
2234
+ deltaFullpackageDownloadEnabled?: boolean;
2235
+ deltaUpdateErrorType?: string;
2236
+ deltaUpdateSuccess?: string;
2237
+ deltaFullpackageDownloadVersion?: string;
2238
+ deltaFullpackageDownloadSuccess?: string;
2239
+ deltaUpdateCorrelationId?: string;
2240
+ deltaFullpackageDownloadCorrelationId?: string;
2241
+ deltaTargetVersion?: string;
2242
+ deltaLocalFullPackageVersions?: string;
2243
+ deltaUpdateFailReason?: string;
2244
+ deltaUpdateTimeStamp?: string;
2245
+ };
2246
+ isInstallWebView2?: boolean;
2247
+ loginType?:
2248
+ | 'no-login'
2249
+ | 'login-page'
2250
+ | 'reuse-ci-token'
2251
+ | 'reuse-site-token'
2252
+ | 'login-ci'
2253
+ | 'login-site'
2254
+ | 'unverified-guest';
2255
+ loginCrossSite?: boolean;
2256
+ crossBrowserLogin?: boolean;
2257
+ isMultiSiteUser?: boolean;
2258
+ /**
2259
+ * The metadata associated with the emitter of the event. This data is separate from the source metadata and must be emitted with every event.
2260
+ */
2261
+ mediaQualityMetadata?: {
2262
+ peerReflexiveIP?: string;
2263
+ maskedPeerReflexiveIP?: string;
2264
+ remoteMediaIP?: string;
2265
+ maskedRemoteMediaIP?: string;
2266
+ staticPerformanceLevel?: number;
2267
+ processAverageCPU?: number;
2268
+ processMaximumCPU?: number;
2269
+ systemAverageCPU?: number;
2270
+ systemMaximumCPU?: number;
2271
+ systemAverageGPU?: number;
2272
+ systemMaximumGPU?: number;
2273
+ /**
2274
+ * this object defines the memory related fields that are tracked in media quality events and reports
2275
+ */
2276
+ memoryUsage?: {
2277
+ processAverageMemoryUsage: number;
2278
+ processMaximumMemoryUsage: number;
2279
+ systemAverageMemoryUsage: number;
2280
+ systemMaximumMemoryUsage: number;
2281
+ processMaximumMemoryBytes: number;
2282
+ mainProcessMaximumMemoryBytes: number;
2283
+ osBitWidth: number;
2284
+ cpuBitWidth: number;
2285
+ };
2286
+ peripherals?: {
2287
+ name: 'camera' | 'microphone' | 'speaker';
2288
+ information: string;
2289
+ driver?: string;
2290
+ errorCode?: string;
2291
+ connectionType?: unknown;
2292
+ bluetoothMode?: unknown;
2293
+ }[];
2294
+ /**
2295
+ * information object for the peripheral
2296
+ */
2297
+ cameraInfo?: {
2298
+ name: 'camera' | 'microphone' | 'speaker';
2299
+ information: string;
2300
+ driver?: string;
2301
+ errorCode?: string;
2302
+ connectionType?: unknown;
2303
+ bluetoothMode?: unknown;
2304
+ };
2305
+ /**
2306
+ * information object for the peripheral
2307
+ */
2308
+ microphoneInfo?: {
2309
+ name: 'camera' | 'microphone' | 'speaker';
2310
+ information: string;
2311
+ driver?: string;
2312
+ errorCode?: string;
2313
+ connectionType?: unknown;
2314
+ bluetoothMode?: unknown;
2315
+ };
2316
+ /**
2317
+ * information object for the peripheral
2318
+ */
2319
+ speakerInfo?: {
2320
+ name: 'camera' | 'microphone' | 'speaker';
2321
+ information: string;
2322
+ driver?: string;
2323
+ errorCode?: string;
2324
+ connectionType?: unknown;
2325
+ bluetoothMode?: unknown;
2326
+ };
2327
+ /**
2328
+ * This object defines the fields related to the CPU being used by the emitter of the event
2329
+ */
2330
+ cpuInfo?: {
2331
+ description: string;
2332
+ clockSpeedGigaHertz: number;
2333
+ numberOfCores: number;
2334
+ architecture: 'intel32' | 'intel64' | 'amd32' | 'amd64' | 'arm32' | 'arm64' | 'unknown';
2335
+ staticPerformance?: string;
2336
+ };
2337
+ /**
2338
+ * Thread level cpu performance insights
2339
+ */
2340
+ cpuDataDetail?: {
2341
+ processesData?: unknown[];
2342
+ coresCpuData?: unknown[];
2343
+ coreVariance?: number;
2344
+ };
2345
+ /**
2346
+ * This object defines the fields related to the GPU being used by the emitter of the event
2347
+ */
2348
+ defaultGpuInfo?: {
2349
+ description: string;
2350
+ memoryMegaBytes: number;
2351
+ };
2352
+ otherGpuInfo?: {
2353
+ description: string;
2354
+ memoryMegaBytes: number;
2355
+ }[];
2356
+ dpcRecord?: string[];
2357
+ mediaLabels?: string[];
2358
+ screenResolution?: number;
2359
+ appWindowSize?: number;
2360
+ appWindowHeight?: number;
2361
+ appWindowWidth?: number;
2362
+ meetingUserCount?: number;
2363
+ videoUserCount?: number;
2364
+ numScreens?: number;
2365
+ configuredBitrate?: number;
2366
+ };
2367
+ sessionType?:
2368
+ | 'AD_HOC'
2369
+ | 'ADHOC_UNIFIED_SPACE_MEETING'
2370
+ | 'ANSWERED_ELSEWHERE'
2371
+ | 'BUTLER'
2372
+ | 'CFNA'
2373
+ | 'CMR_MEETING'
2374
+ | 'DPC_CONTROL'
2375
+ | 'EVENT_CENTER_MEETING'
2376
+ | 'HALF_ZTM'
2377
+ | 'JABBER'
2378
+ | 'MEDIA'
2379
+ | 'MS_TEAMS'
2380
+ | 'NO_JOINS'
2381
+ | 'SINGLE_PARTICIPANT'
2382
+ | 'SIP_CALL'
2383
+ | 'SIP_MEETING'
2384
+ | 'SPACE_MEETING'
2385
+ | 'SPACE_SHARE'
2386
+ | 'SPARK_CALL'
2387
+ | 'SPARK_MEETING'
2388
+ | 'SPARK_SIP_CALL'
2389
+ | 'SPARK_SIP_MEETING'
2390
+ | 'UNIFIED_SPACE_MEETING'
2391
+ | 'UNKNOWN'
2392
+ | 'WHITEBOARD_ONLY_SHARE'
2393
+ | 'WIRELESS_SHARE'
2394
+ | 'ZTM';
2395
+ }