@webex/internal-plugin-metrics 3.0.0-beta.165 → 3.0.0-beta.167
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.
package/dist/metrics.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":[],"sources":["metrics.types.ts"],"sourcesContent":["import {ClientEvent as RawClientEvent} from './call-diagnostic/generated-types-temp/ClientEvent';\nimport {Event as RawEvent} from './call-diagnostic/generated-types-temp/Event';\nimport {MediaQualityEvent as RawMediaQualityEvent} from './call-diagnostic/generated-types-temp/MediaQualityEvent';\n\nexport type Event = Omit<RawEvent, 'event'> & {event: RawClientEvent | RawMediaQualityEvent};\n\nexport type ClientEventError = NonNullable<RawClientEvent['errors']>[0];\n\nexport type SubmitClientEventOptions = {\n meetingId?: string;\n mediaConnections?: any[];\n rawError?: any;\n showToUser?: boolean;\n correlationId?: string;\n};\n\nexport type SubmitMQEOptions = {\n meetingId: string;\n mediaConnections?: any[];\n networkType?: Event['origin']['networkType'];\n};\n\nexport type InternalEvent = {\n name:\n | 'internal.client.meetinginfo.request'\n | 'internal.client.meetinginfo.response'\n | 'internal.reset.join.latencies'\n | 'internal.client.interstitial-window.launched'\n | 'internal.client.meeting.click.joinbutton'\n | 'internal.host.meeting.participant.admitted'\n | 'internal.client.meeting.interstitial-window.showed'\n | 'internal.client.pageJMT.received'\n | 'internal.client.interstitial-window.click.joinbutton';\n payload?: never;\n options?: never;\n};\n\nexport interface ClientEvent {\n name: RawClientEvent['name'];\n payload?: RawClientEvent;\n options: SubmitClientEventOptions;\n}\n\nexport interface BehavioralEvent {\n // TODO: not implemented\n name: 'host.meeting.participant.admitted' | 'sdk.media-flow.started';\n payload?: never;\n options?: never;\n}\n\nexport interface OperationalEvent {\n // TODO: not implemented\n name: never;\n payload?: never;\n options?: never;\n}\n\nexport interface FeatureEvent {\n // TODO: not implemented\n name: never;\n payload?: never;\n options?: never;\n}\n\nexport interface MediaQualityEvent {\n name: RawMediaQualityEvent['name'];\n payload?: RawMediaQualityEvent;\n options: SubmitMQEOptions;\n}\n\nexport type RecursivePartial<T> = {\n [P in keyof T]?: T[P] extends (infer U)[]\n ? RecursivePartial<U>[]\n : T[P] extends object\n ? RecursivePartial<T[P]>\n : T[P];\n};\n\nexport type MetricEventNames =\n | InternalEvent['name']\n | ClientEvent['name']\n | BehavioralEvent['name']\n | OperationalEvent['name']\n | FeatureEvent['name']\n | MediaQualityEvent['name'];\n\nexport type ClientType = NonNullable<RawEvent['origin']['clientInfo']>['clientType'];\nexport type SubClientType = NonNullable<RawEvent['origin']['clientInfo']>['subClientType'];\nexport type NetworkType = RawEvent['origin']['networkType'];\n\nexport type ClientEventPayload = RecursivePartial<ClientEvent['payload']>;\n\nexport type MediaQualityEventAudioSetupDelayPayload
|
|
1
|
+
{"version":3,"names":[],"sources":["metrics.types.ts"],"sourcesContent":["import {ClientEvent as RawClientEvent} from './call-diagnostic/generated-types-temp/ClientEvent';\nimport {Event as RawEvent} from './call-diagnostic/generated-types-temp/Event';\nimport {MediaQualityEvent as RawMediaQualityEvent} from './call-diagnostic/generated-types-temp/MediaQualityEvent';\n\nexport type Event = Omit<RawEvent, 'event'> & {event: RawClientEvent | RawMediaQualityEvent};\n\nexport type ClientEventError = NonNullable<RawClientEvent['errors']>[0];\n\nexport type SubmitClientEventOptions = {\n meetingId?: string;\n mediaConnections?: any[];\n rawError?: any;\n showToUser?: boolean;\n correlationId?: string;\n};\n\nexport type SubmitMQEOptions = {\n meetingId: string;\n mediaConnections?: any[];\n networkType?: Event['origin']['networkType'];\n};\n\nexport type InternalEvent = {\n name:\n | 'internal.client.meetinginfo.request'\n | 'internal.client.meetinginfo.response'\n | 'internal.reset.join.latencies'\n | 'internal.client.interstitial-window.launched'\n | 'internal.client.meeting.click.joinbutton'\n | 'internal.host.meeting.participant.admitted'\n | 'internal.client.meeting.interstitial-window.showed'\n | 'internal.client.pageJMT.received'\n | 'internal.client.interstitial-window.click.joinbutton';\n payload?: never;\n options?: never;\n};\n\nexport interface ClientEvent {\n name: RawClientEvent['name'];\n payload?: RawClientEvent;\n options: SubmitClientEventOptions;\n}\n\nexport interface BehavioralEvent {\n // TODO: not implemented\n name: 'host.meeting.participant.admitted' | 'sdk.media-flow.started';\n payload?: never;\n options?: never;\n}\n\nexport interface OperationalEvent {\n // TODO: not implemented\n name: never;\n payload?: never;\n options?: never;\n}\n\nexport interface FeatureEvent {\n // TODO: not implemented\n name: never;\n payload?: never;\n options?: never;\n}\n\nexport interface MediaQualityEvent {\n name: RawMediaQualityEvent['name'];\n payload?: RawMediaQualityEvent;\n options: SubmitMQEOptions;\n}\n\nexport type RecursivePartial<T> = {\n [P in keyof T]?: T[P] extends (infer U)[]\n ? RecursivePartial<U>[]\n : T[P] extends object\n ? RecursivePartial<T[P]>\n : T[P];\n};\n\nexport type MetricEventNames =\n | InternalEvent['name']\n | ClientEvent['name']\n | BehavioralEvent['name']\n | OperationalEvent['name']\n | FeatureEvent['name']\n | MediaQualityEvent['name'];\n\nexport type ClientType = NonNullable<RawEvent['origin']['clientInfo']>['clientType'];\nexport type SubClientType = NonNullable<RawEvent['origin']['clientInfo']>['subClientType'];\nexport type NetworkType = NonNullable<RawEvent['origin']>['networkType'];\n\nexport type ClientEventPayload = RecursivePartial<ClientEvent['payload']>;\n\nexport type MediaQualityEventAudioSetupDelayPayload = NonNullable<\n MediaQualityEvent['payload']\n>['audioSetupDelay'];\nexport type MediaQualityEventVideoSetupDelayPayload = NonNullable<\n MediaQualityEvent['payload']\n>['videoSetupDelay'];\n\nexport type SubmitMQEPayload = RecursivePartial<MediaQualityEvent['payload']> & {\n intervals: NonNullable<MediaQualityEvent['payload']>['intervals'];\n};\n\nexport type SubmitInternalEvent = (args: {\n name: InternalEvent['name'];\n payload?: RecursivePartial<InternalEvent['payload']>;\n options?: any;\n}) => void;\n\nexport type SubmitBehavioralEvent = (args: {\n name: BehavioralEvent['name'];\n payload?: RecursivePartial<BehavioralEvent['payload']>;\n options?: any;\n}) => void;\n\nexport type SubmitClientEvent = (args: {\n name: ClientEvent['name'];\n payload?: RecursivePartial<ClientEvent['payload']>;\n options: SubmitClientEventOptions;\n}) => void;\n\nexport type SubmitOperationalEvent = (args: {\n name: OperationalEvent['name'];\n payload?: RecursivePartial<OperationalEvent['payload']>;\n options?: any;\n}) => void;\n\nexport type SubmitMQE = (args: {\n name: MediaQualityEvent['name'];\n payload: SubmitMQEPayload;\n options: any;\n}) => void;\n"],"mappings":""}
|
package/dist/new-metrics.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["Metrics","args","callDiagnosticLatencies","CallDiagnosticLatencies","onReady","webex","once","callDiagnosticMetrics","CallDiagnosticMetrics","parent","name","payload","options","clearTimestamps","saveTimestamp","Error","submitMQE","submitClientEvent","WebexPlugin"],"sources":["new-metrics.ts"],"sourcesContent":["/* eslint-disable @typescript-eslint/no-unused-vars */\n/* eslint-disable class-methods-use-this */\n/* eslint-disable valid-jsdoc */\n\n// @ts-ignore\nimport {WebexPlugin} from '@webex/webex-core';\n\nimport CallDiagnosticMetrics from './call-diagnostic/call-diagnostic-metrics';\nimport {\n RecursivePartial,\n ClientEvent,\n FeatureEvent,\n BehavioralEvent,\n OperationalEvent,\n MediaQualityEvent,\n InternalEvent,\n SubmitClientEventOptions,\n} from './metrics.types';\nimport CallDiagnosticLatencies from './call-diagnostic/call-diagnostic-metrics-latencies';\n\n/**\n * Metrics plugin to centralize all types of metrics.\n * @class\n */\nclass Metrics extends WebexPlugin {\n // eslint-disable-next-line no-use-before-define\n static instance: Metrics;\n\n // Call Diagnostic latencies\n callDiagnosticLatencies: CallDiagnosticLatencies;\n // Helper classes to handle the different types of metrics\n callDiagnosticMetrics: CallDiagnosticMetrics;\n\n /**\n * Constructor\n * @param args\n * @constructor\n * @private\n * @returns\n */\n constructor(...args) {\n super(...args);\n\n this.callDiagnosticLatencies = new CallDiagnosticLatencies();\n\n this.onReady();\n }\n\n /**\n * On Ready\n */\n private onReady() {\n // @ts-ignore\n this.webex.once('ready', () => {\n // @ts-ignore\n this.callDiagnosticMetrics = new CallDiagnosticMetrics({}, {parent: this.webex});\n });\n }\n\n /**\n * Used for internal purposes only\n * @param args\n */\n submitInternalEvent({\n name,\n payload,\n options,\n }: {\n name: InternalEvent['name'];\n payload?: RecursivePartial<InternalEvent['payload']>;\n options
|
|
1
|
+
{"version":3,"names":["Metrics","args","callDiagnosticLatencies","CallDiagnosticLatencies","onReady","webex","once","callDiagnosticMetrics","CallDiagnosticMetrics","parent","name","payload","options","clearTimestamps","saveTimestamp","Error","submitMQE","submitClientEvent","WebexPlugin"],"sources":["new-metrics.ts"],"sourcesContent":["/* eslint-disable @typescript-eslint/no-unused-vars */\n/* eslint-disable class-methods-use-this */\n/* eslint-disable valid-jsdoc */\n\n// @ts-ignore\nimport {WebexPlugin} from '@webex/webex-core';\n\nimport CallDiagnosticMetrics from './call-diagnostic/call-diagnostic-metrics';\nimport {\n RecursivePartial,\n ClientEvent,\n FeatureEvent,\n BehavioralEvent,\n OperationalEvent,\n MediaQualityEvent,\n InternalEvent,\n SubmitClientEventOptions,\n} from './metrics.types';\nimport CallDiagnosticLatencies from './call-diagnostic/call-diagnostic-metrics-latencies';\n\n/**\n * Metrics plugin to centralize all types of metrics.\n * @class\n */\nclass Metrics extends WebexPlugin {\n // eslint-disable-next-line no-use-before-define\n static instance: Metrics;\n\n // Call Diagnostic latencies\n callDiagnosticLatencies: CallDiagnosticLatencies;\n // Helper classes to handle the different types of metrics\n callDiagnosticMetrics: CallDiagnosticMetrics;\n\n /**\n * Constructor\n * @param args\n * @constructor\n * @private\n * @returns\n */\n constructor(...args) {\n super(...args);\n\n this.callDiagnosticLatencies = new CallDiagnosticLatencies();\n\n this.onReady();\n }\n\n /**\n * On Ready\n */\n private onReady() {\n // @ts-ignore\n this.webex.once('ready', () => {\n // @ts-ignore\n this.callDiagnosticMetrics = new CallDiagnosticMetrics({}, {parent: this.webex});\n });\n }\n\n /**\n * Used for internal purposes only\n * @param args\n */\n submitInternalEvent({\n name,\n payload,\n options,\n }: {\n name: InternalEvent['name'];\n payload?: RecursivePartial<InternalEvent['payload']>;\n options?: any;\n }) {\n if (name === 'internal.reset.join.latencies') {\n this.callDiagnosticLatencies.clearTimestamps();\n } else {\n this.callDiagnosticLatencies.saveTimestamp(name);\n }\n }\n\n /**\n * Behavioral event\n * @param args\n */\n submitBehavioralEvent({\n name,\n payload,\n options,\n }: {\n name: BehavioralEvent['name'];\n payload?: RecursivePartial<BehavioralEvent['payload']>;\n options?: any;\n }) {\n this.callDiagnosticLatencies.saveTimestamp(name);\n throw new Error('Not implemented.');\n }\n\n /**\n * Operational event\n * @param args\n */\n submitOperationalEvent({\n name,\n payload,\n options,\n }: {\n name: OperationalEvent['name'];\n payload?: RecursivePartial<OperationalEvent['payload']>;\n options?: any;\n }) {\n throw new Error('Not implemented.');\n }\n\n /**\n * Call Analyzer: Media Quality Event\n * @param args\n */\n submitMQE({\n name,\n payload,\n options,\n }: {\n name: MediaQualityEvent['name'];\n payload: RecursivePartial<MediaQualityEvent['payload']> & {\n intervals: MediaQualityEvent['payload']['intervals'];\n };\n options: any;\n }) {\n this.callDiagnosticLatencies.saveTimestamp(name);\n this.callDiagnosticMetrics.submitMQE({name, payload, options});\n }\n\n /**\n * Call Analyzer: Feature Usage Event\n * @param args\n */\n submitFeatureEvent({\n name,\n payload,\n options,\n }: {\n name: FeatureEvent['name'];\n payload?: RecursivePartial<FeatureEvent['payload']>;\n options: any;\n }) {\n throw new Error('Not implemented.');\n }\n\n /**\n * Call Analyzer: Client Event\n * @public\n * @param args\n */\n public submitClientEvent({\n name,\n payload,\n options,\n }: {\n name: ClientEvent['name'];\n payload?: RecursivePartial<ClientEvent['payload']>;\n options: SubmitClientEventOptions;\n }) {\n this.callDiagnosticLatencies.saveTimestamp(name);\n this.callDiagnosticMetrics.submitClientEvent({name, payload, options});\n }\n}\n\nexport default Metrics;\n"],"mappings":";;;;;;;;;;;;;;;;AAKA;AAEA;AAWA;AAA0F;AAAA;AAE1F;AACA;AACA;AACA;AAHA,IAIMA,OAAO;EAAA;EAAA;EACX;;EAGA;;EAEA;;EAGA;AACF;AACA;AACA;AACA;AACA;AACA;EACE,mBAAqB;IAAA;IAAA;IAAA,kCAANC,IAAI;MAAJA,IAAI;IAAA;IACjB,gDAASA,IAAI;IAAE;IAAA;IAEf,MAAKC,uBAAuB,GAAG,IAAIC,uCAAuB,EAAE;IAE5D,MAAKC,OAAO,EAAE;IAAC;EACjB;;EAEA;AACF;AACA;EAFE;IAAA;IAAA,OAGA,mBAAkB;MAAA;MAChB;MACA,IAAI,CAACC,KAAK,CAACC,IAAI,CAAC,OAAO,EAAE,YAAM;QAC7B;QACA,MAAI,CAACC,qBAAqB,GAAG,IAAIC,8BAAqB,CAAC,CAAC,CAAC,EAAE;UAACC,MAAM,EAAE,MAAI,CAACJ;QAAK,CAAC,CAAC;MAClF,CAAC,CAAC;IACJ;;IAEA;AACF;AACA;AACA;EAHE;IAAA;IAAA,OAIA,mCAQG;MAAA,IAPDK,IAAI,QAAJA,IAAI;QACJC,OAAO,QAAPA,OAAO;QACPC,OAAO,QAAPA,OAAO;MAMP,IAAIF,IAAI,KAAK,+BAA+B,EAAE;QAC5C,IAAI,CAACR,uBAAuB,CAACW,eAAe,EAAE;MAChD,CAAC,MAAM;QACL,IAAI,CAACX,uBAAuB,CAACY,aAAa,CAACJ,IAAI,CAAC;MAClD;IACF;;IAEA;AACF;AACA;AACA;EAHE;IAAA;IAAA,OAIA,sCAQG;MAAA,IAPDA,IAAI,SAAJA,IAAI;QACJC,OAAO,SAAPA,OAAO;QACPC,OAAO,SAAPA,OAAO;MAMP,IAAI,CAACV,uBAAuB,CAACY,aAAa,CAACJ,IAAI,CAAC;MAChD,MAAM,IAAIK,KAAK,CAAC,kBAAkB,CAAC;IACrC;;IAEA;AACF;AACA;AACA;EAHE;IAAA;IAAA,OAIA,uCAQG;MAAA,IAPDL,IAAI,SAAJA,IAAI;QACJC,OAAO,SAAPA,OAAO;QACPC,OAAO,SAAPA,OAAO;MAMP,MAAM,IAAIG,KAAK,CAAC,kBAAkB,CAAC;IACrC;;IAEA;AACF;AACA;AACA;EAHE;IAAA;IAAA,OAIA,0BAUG;MAAA,IATDL,IAAI,SAAJA,IAAI;QACJC,OAAO,SAAPA,OAAO;QACPC,OAAO,SAAPA,OAAO;MAQP,IAAI,CAACV,uBAAuB,CAACY,aAAa,CAACJ,IAAI,CAAC;MAChD,IAAI,CAACH,qBAAqB,CAACS,SAAS,CAAC;QAACN,IAAI,EAAJA,IAAI;QAAEC,OAAO,EAAPA,OAAO;QAAEC,OAAO,EAAPA;MAAO,CAAC,CAAC;IAChE;;IAEA;AACF;AACA;AACA;EAHE;IAAA;IAAA,OAIA,mCAQG;MAAA,IAPDF,IAAI,SAAJA,IAAI;QACJC,OAAO,SAAPA,OAAO;QACPC,OAAO,SAAPA,OAAO;MAMP,MAAM,IAAIG,KAAK,CAAC,kBAAkB,CAAC;IACrC;;IAEA;AACF;AACA;AACA;AACA;EAJE;IAAA;IAAA,OAKA,kCAQG;MAAA,IAPDL,IAAI,SAAJA,IAAI;QACJC,OAAO,SAAPA,OAAO;QACPC,OAAO,SAAPA,OAAO;MAMP,IAAI,CAACV,uBAAuB,CAACY,aAAa,CAACJ,IAAI,CAAC;MAChD,IAAI,CAACH,qBAAqB,CAACU,iBAAiB,CAAC;QAACP,IAAI,EAAJA,IAAI;QAAEC,OAAO,EAAPA,OAAO;QAAEC,OAAO,EAAPA;MAAO,CAAC,CAAC;IACxE;EAAC;EAAA;AAAA,EA3ImBM,sBAAW;AAAA,8BAA3BlB,OAAO;AAAA,eA8IEA,OAAO;AAAA"}
|
|
@@ -53,22 +53,22 @@ export type RecursivePartial<T> = {
|
|
|
53
53
|
export type MetricEventNames = InternalEvent['name'] | ClientEvent['name'] | BehavioralEvent['name'] | OperationalEvent['name'] | FeatureEvent['name'] | MediaQualityEvent['name'];
|
|
54
54
|
export type ClientType = NonNullable<RawEvent['origin']['clientInfo']>['clientType'];
|
|
55
55
|
export type SubClientType = NonNullable<RawEvent['origin']['clientInfo']>['subClientType'];
|
|
56
|
-
export type NetworkType = RawEvent['origin']['networkType'];
|
|
56
|
+
export type NetworkType = NonNullable<RawEvent['origin']>['networkType'];
|
|
57
57
|
export type ClientEventPayload = RecursivePartial<ClientEvent['payload']>;
|
|
58
|
-
export type MediaQualityEventAudioSetupDelayPayload = MediaQualityEvent['payload']['audioSetupDelay'];
|
|
59
|
-
export type MediaQualityEventVideoSetupDelayPayload = MediaQualityEvent['payload']['videoSetupDelay'];
|
|
58
|
+
export type MediaQualityEventAudioSetupDelayPayload = NonNullable<MediaQualityEvent['payload']>['audioSetupDelay'];
|
|
59
|
+
export type MediaQualityEventVideoSetupDelayPayload = NonNullable<MediaQualityEvent['payload']>['videoSetupDelay'];
|
|
60
60
|
export type SubmitMQEPayload = RecursivePartial<MediaQualityEvent['payload']> & {
|
|
61
|
-
intervals: MediaQualityEvent['payload']['intervals'];
|
|
61
|
+
intervals: NonNullable<MediaQualityEvent['payload']>['intervals'];
|
|
62
62
|
};
|
|
63
63
|
export type SubmitInternalEvent = (args: {
|
|
64
64
|
name: InternalEvent['name'];
|
|
65
65
|
payload?: RecursivePartial<InternalEvent['payload']>;
|
|
66
|
-
options
|
|
66
|
+
options?: any;
|
|
67
67
|
}) => void;
|
|
68
68
|
export type SubmitBehavioralEvent = (args: {
|
|
69
69
|
name: BehavioralEvent['name'];
|
|
70
70
|
payload?: RecursivePartial<BehavioralEvent['payload']>;
|
|
71
|
-
options
|
|
71
|
+
options?: any;
|
|
72
72
|
}) => void;
|
|
73
73
|
export type SubmitClientEvent = (args: {
|
|
74
74
|
name: ClientEvent['name'];
|
|
@@ -78,12 +78,10 @@ export type SubmitClientEvent = (args: {
|
|
|
78
78
|
export type SubmitOperationalEvent = (args: {
|
|
79
79
|
name: OperationalEvent['name'];
|
|
80
80
|
payload?: RecursivePartial<OperationalEvent['payload']>;
|
|
81
|
-
options
|
|
81
|
+
options?: any;
|
|
82
82
|
}) => void;
|
|
83
83
|
export type SubmitMQE = (args: {
|
|
84
84
|
name: MediaQualityEvent['name'];
|
|
85
|
-
payload:
|
|
86
|
-
intervals: MediaQualityEvent['payload']['intervals'];
|
|
87
|
-
};
|
|
85
|
+
payload: SubmitMQEPayload;
|
|
88
86
|
options: any;
|
|
89
87
|
}) => void;
|
|
@@ -29,7 +29,7 @@ declare class Metrics extends WebexPlugin {
|
|
|
29
29
|
submitInternalEvent({ name, payload, options, }: {
|
|
30
30
|
name: InternalEvent['name'];
|
|
31
31
|
payload?: RecursivePartial<InternalEvent['payload']>;
|
|
32
|
-
options
|
|
32
|
+
options?: any;
|
|
33
33
|
}): void;
|
|
34
34
|
/**
|
|
35
35
|
* Behavioral event
|
|
@@ -38,7 +38,7 @@ declare class Metrics extends WebexPlugin {
|
|
|
38
38
|
submitBehavioralEvent({ name, payload, options, }: {
|
|
39
39
|
name: BehavioralEvent['name'];
|
|
40
40
|
payload?: RecursivePartial<BehavioralEvent['payload']>;
|
|
41
|
-
options
|
|
41
|
+
options?: any;
|
|
42
42
|
}): void;
|
|
43
43
|
/**
|
|
44
44
|
* Operational event
|
|
@@ -47,7 +47,7 @@ declare class Metrics extends WebexPlugin {
|
|
|
47
47
|
submitOperationalEvent({ name, payload, options, }: {
|
|
48
48
|
name: OperationalEvent['name'];
|
|
49
49
|
payload?: RecursivePartial<OperationalEvent['payload']>;
|
|
50
|
-
options
|
|
50
|
+
options?: any;
|
|
51
51
|
}): void;
|
|
52
52
|
/**
|
|
53
53
|
* Call Analyzer: Media Quality Event
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@webex/internal-plugin-metrics",
|
|
3
|
-
"version": "3.0.0-beta.
|
|
3
|
+
"version": "3.0.0-beta.167",
|
|
4
4
|
"description": "",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"main": "dist/index.js",
|
|
@@ -28,12 +28,12 @@
|
|
|
28
28
|
"build": "yarn run -T tsc --declaration true --declarationDir ./dist/types"
|
|
29
29
|
},
|
|
30
30
|
"dependencies": {
|
|
31
|
-
"@webex/common": "3.0.0-beta.
|
|
32
|
-
"@webex/common-timers": "3.0.0-beta.
|
|
33
|
-
"@webex/internal-plugin-device": "3.0.0-beta.
|
|
34
|
-
"@webex/internal-plugin-metrics": "3.0.0-beta.
|
|
35
|
-
"@webex/test-helper-chai": "3.0.0-beta.
|
|
36
|
-
"@webex/test-helper-mock-webex": "3.0.0-beta.
|
|
37
|
-
"@webex/webex-core": "3.0.0-beta.
|
|
31
|
+
"@webex/common": "3.0.0-beta.167",
|
|
32
|
+
"@webex/common-timers": "3.0.0-beta.167",
|
|
33
|
+
"@webex/internal-plugin-device": "3.0.0-beta.167",
|
|
34
|
+
"@webex/internal-plugin-metrics": "3.0.0-beta.167",
|
|
35
|
+
"@webex/test-helper-chai": "3.0.0-beta.167",
|
|
36
|
+
"@webex/test-helper-mock-webex": "3.0.0-beta.167",
|
|
37
|
+
"@webex/webex-core": "3.0.0-beta.167"
|
|
38
38
|
}
|
|
39
39
|
}
|
package/src/metrics.types.ts
CHANGED
|
@@ -86,29 +86,31 @@ export type MetricEventNames =
|
|
|
86
86
|
|
|
87
87
|
export type ClientType = NonNullable<RawEvent['origin']['clientInfo']>['clientType'];
|
|
88
88
|
export type SubClientType = NonNullable<RawEvent['origin']['clientInfo']>['subClientType'];
|
|
89
|
-
export type NetworkType = RawEvent['origin']['networkType'];
|
|
89
|
+
export type NetworkType = NonNullable<RawEvent['origin']>['networkType'];
|
|
90
90
|
|
|
91
91
|
export type ClientEventPayload = RecursivePartial<ClientEvent['payload']>;
|
|
92
92
|
|
|
93
|
-
export type MediaQualityEventAudioSetupDelayPayload =
|
|
94
|
-
MediaQualityEvent['payload']
|
|
95
|
-
|
|
96
|
-
|
|
93
|
+
export type MediaQualityEventAudioSetupDelayPayload = NonNullable<
|
|
94
|
+
MediaQualityEvent['payload']
|
|
95
|
+
>['audioSetupDelay'];
|
|
96
|
+
export type MediaQualityEventVideoSetupDelayPayload = NonNullable<
|
|
97
|
+
MediaQualityEvent['payload']
|
|
98
|
+
>['videoSetupDelay'];
|
|
97
99
|
|
|
98
100
|
export type SubmitMQEPayload = RecursivePartial<MediaQualityEvent['payload']> & {
|
|
99
|
-
intervals: MediaQualityEvent['payload']['intervals'];
|
|
101
|
+
intervals: NonNullable<MediaQualityEvent['payload']>['intervals'];
|
|
100
102
|
};
|
|
101
103
|
|
|
102
104
|
export type SubmitInternalEvent = (args: {
|
|
103
105
|
name: InternalEvent['name'];
|
|
104
106
|
payload?: RecursivePartial<InternalEvent['payload']>;
|
|
105
|
-
options
|
|
107
|
+
options?: any;
|
|
106
108
|
}) => void;
|
|
107
109
|
|
|
108
110
|
export type SubmitBehavioralEvent = (args: {
|
|
109
111
|
name: BehavioralEvent['name'];
|
|
110
112
|
payload?: RecursivePartial<BehavioralEvent['payload']>;
|
|
111
|
-
options
|
|
113
|
+
options?: any;
|
|
112
114
|
}) => void;
|
|
113
115
|
|
|
114
116
|
export type SubmitClientEvent = (args: {
|
|
@@ -120,13 +122,11 @@ export type SubmitClientEvent = (args: {
|
|
|
120
122
|
export type SubmitOperationalEvent = (args: {
|
|
121
123
|
name: OperationalEvent['name'];
|
|
122
124
|
payload?: RecursivePartial<OperationalEvent['payload']>;
|
|
123
|
-
options
|
|
125
|
+
options?: any;
|
|
124
126
|
}) => void;
|
|
125
127
|
|
|
126
128
|
export type SubmitMQE = (args: {
|
|
127
129
|
name: MediaQualityEvent['name'];
|
|
128
|
-
payload:
|
|
129
|
-
intervals: MediaQualityEvent['payload']['intervals'];
|
|
130
|
-
};
|
|
130
|
+
payload: SubmitMQEPayload;
|
|
131
131
|
options: any;
|
|
132
132
|
}) => void;
|
package/src/new-metrics.ts
CHANGED
|
@@ -68,7 +68,7 @@ class Metrics extends WebexPlugin {
|
|
|
68
68
|
}: {
|
|
69
69
|
name: InternalEvent['name'];
|
|
70
70
|
payload?: RecursivePartial<InternalEvent['payload']>;
|
|
71
|
-
options
|
|
71
|
+
options?: any;
|
|
72
72
|
}) {
|
|
73
73
|
if (name === 'internal.reset.join.latencies') {
|
|
74
74
|
this.callDiagnosticLatencies.clearTimestamps();
|
|
@@ -88,7 +88,7 @@ class Metrics extends WebexPlugin {
|
|
|
88
88
|
}: {
|
|
89
89
|
name: BehavioralEvent['name'];
|
|
90
90
|
payload?: RecursivePartial<BehavioralEvent['payload']>;
|
|
91
|
-
options
|
|
91
|
+
options?: any;
|
|
92
92
|
}) {
|
|
93
93
|
this.callDiagnosticLatencies.saveTimestamp(name);
|
|
94
94
|
throw new Error('Not implemented.');
|
|
@@ -105,7 +105,7 @@ class Metrics extends WebexPlugin {
|
|
|
105
105
|
}: {
|
|
106
106
|
name: OperationalEvent['name'];
|
|
107
107
|
payload?: RecursivePartial<OperationalEvent['payload']>;
|
|
108
|
-
options
|
|
108
|
+
options?: any;
|
|
109
109
|
}) {
|
|
110
110
|
throw new Error('Not implemented.');
|
|
111
111
|
}
|