@project-sunbird/telemetry-sdk 1.3.0 → 2.0.1

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.
@@ -0,0 +1,110 @@
1
+ interface TelemetryConfig {
2
+ pdata: {
3
+ id: string;
4
+ ver: string;
5
+ pid?: string;
6
+ };
7
+ env: string;
8
+ channel: string;
9
+ did?: string;
10
+ authtoken?: string;
11
+ uid?: string;
12
+ sid?: string;
13
+ batchsize?: number;
14
+ mode?: string;
15
+ host?: string;
16
+ endpoint?: string;
17
+ tags?: string[];
18
+ cdata?: Array<{
19
+ type: string;
20
+ id: string;
21
+ }>;
22
+ dispatcher?: {
23
+ dispatch: (event: any) => void;
24
+ };
25
+ enableValidation?: boolean;
26
+ timeDiff?: number;
27
+ runningEnv?: string;
28
+ object?: {
29
+ id: string;
30
+ ver: string;
31
+ rollup?: any;
32
+ };
33
+ rollup?: any;
34
+ }
35
+ declare const defaultConfig: Partial<TelemetryConfig>;
36
+
37
+ declare class Telemetry {
38
+ private static instance;
39
+ private _config;
40
+ private _initialized;
41
+ private _syncManager;
42
+ private _validator;
43
+ private _startData;
44
+ private _globalContext;
45
+ private _globalObject;
46
+ private _currentContext;
47
+ private _currentObject;
48
+ private _currentActor;
49
+ private _currentTags;
50
+ private constructor();
51
+ static getInstance(): Telemetry;
52
+ get isInitialized(): boolean;
53
+ get config(): TelemetryConfig;
54
+ initialize(config: Partial<TelemetryConfig>): void;
55
+ start(config: Partial<TelemetryConfig>, contentId: string, contentVer: string, data: any, options?: any): Promise<void>;
56
+ end(data: any, options?: any): void;
57
+ interact(data: any, options?: any): void;
58
+ impression(data: any, options?: any): void;
59
+ assess(data: any, options?: any): void;
60
+ response(data: any, options?: any): void;
61
+ interrupt(data: any, options?: any): void;
62
+ feedback(data: any, options?: any): void;
63
+ share(data: any, options?: any): void;
64
+ audit(data: any, options?: any): void;
65
+ error(data: any, options?: any): void;
66
+ heartbeat(data: any, options?: any): void;
67
+ log(data: any, options?: any): void;
68
+ search(data: any, options?: any): void;
69
+ metrics(data: any, options?: any): void;
70
+ exdata(data: any, options?: any): void;
71
+ summary(data: any, options?: any): void;
72
+ resetContext(context: any): void;
73
+ resetObject(object: any): void;
74
+ resetActor(actor: any): void;
75
+ resetTags(tags: any[]): void;
76
+ syncEvents(): void;
77
+ private updateValues;
78
+ private getEvent;
79
+ private _dispatch;
80
+ }
81
+
82
+ declare class TelemetrySyncManager {
83
+ private _teleData;
84
+ private _failedBatch;
85
+ private _config;
86
+ private _retryAttempts;
87
+ private _retryTimeout;
88
+ private static readonly MAX_FAILED_BATCH_SIZE;
89
+ private static readonly RETRY_SUCCESS_DELAY_MS;
90
+ private static readonly MAX_BACKOFF_DELAY_MS;
91
+ constructor(config: TelemetryConfig);
92
+ updateConfig(config: TelemetryConfig): void;
93
+ sendTelemetry(event: any): void;
94
+ syncEvents(): Promise<void>;
95
+ private _handleFailedBatch;
96
+ private _retryFailedBatch;
97
+ }
98
+
99
+ declare class DeviceService {
100
+ private static fingerPrintId;
101
+ static getFingerPrint(): Promise<string>;
102
+ }
103
+
104
+ declare class Dispatcher {
105
+ static dispatch(url: string, data: any, headers: Record<string, string>): Promise<any>;
106
+ }
107
+
108
+ declare const $t: Telemetry;
109
+
110
+ export { $t, DeviceService, Dispatcher, Telemetry, type TelemetryConfig, TelemetrySyncManager, defaultConfig };
@@ -0,0 +1,110 @@
1
+ interface TelemetryConfig {
2
+ pdata: {
3
+ id: string;
4
+ ver: string;
5
+ pid?: string;
6
+ };
7
+ env: string;
8
+ channel: string;
9
+ did?: string;
10
+ authtoken?: string;
11
+ uid?: string;
12
+ sid?: string;
13
+ batchsize?: number;
14
+ mode?: string;
15
+ host?: string;
16
+ endpoint?: string;
17
+ tags?: string[];
18
+ cdata?: Array<{
19
+ type: string;
20
+ id: string;
21
+ }>;
22
+ dispatcher?: {
23
+ dispatch: (event: any) => void;
24
+ };
25
+ enableValidation?: boolean;
26
+ timeDiff?: number;
27
+ runningEnv?: string;
28
+ object?: {
29
+ id: string;
30
+ ver: string;
31
+ rollup?: any;
32
+ };
33
+ rollup?: any;
34
+ }
35
+ declare const defaultConfig: Partial<TelemetryConfig>;
36
+
37
+ declare class Telemetry {
38
+ private static instance;
39
+ private _config;
40
+ private _initialized;
41
+ private _syncManager;
42
+ private _validator;
43
+ private _startData;
44
+ private _globalContext;
45
+ private _globalObject;
46
+ private _currentContext;
47
+ private _currentObject;
48
+ private _currentActor;
49
+ private _currentTags;
50
+ private constructor();
51
+ static getInstance(): Telemetry;
52
+ get isInitialized(): boolean;
53
+ get config(): TelemetryConfig;
54
+ initialize(config: Partial<TelemetryConfig>): void;
55
+ start(config: Partial<TelemetryConfig>, contentId: string, contentVer: string, data: any, options?: any): Promise<void>;
56
+ end(data: any, options?: any): void;
57
+ interact(data: any, options?: any): void;
58
+ impression(data: any, options?: any): void;
59
+ assess(data: any, options?: any): void;
60
+ response(data: any, options?: any): void;
61
+ interrupt(data: any, options?: any): void;
62
+ feedback(data: any, options?: any): void;
63
+ share(data: any, options?: any): void;
64
+ audit(data: any, options?: any): void;
65
+ error(data: any, options?: any): void;
66
+ heartbeat(data: any, options?: any): void;
67
+ log(data: any, options?: any): void;
68
+ search(data: any, options?: any): void;
69
+ metrics(data: any, options?: any): void;
70
+ exdata(data: any, options?: any): void;
71
+ summary(data: any, options?: any): void;
72
+ resetContext(context: any): void;
73
+ resetObject(object: any): void;
74
+ resetActor(actor: any): void;
75
+ resetTags(tags: any[]): void;
76
+ syncEvents(): void;
77
+ private updateValues;
78
+ private getEvent;
79
+ private _dispatch;
80
+ }
81
+
82
+ declare class TelemetrySyncManager {
83
+ private _teleData;
84
+ private _failedBatch;
85
+ private _config;
86
+ private _retryAttempts;
87
+ private _retryTimeout;
88
+ private static readonly MAX_FAILED_BATCH_SIZE;
89
+ private static readonly RETRY_SUCCESS_DELAY_MS;
90
+ private static readonly MAX_BACKOFF_DELAY_MS;
91
+ constructor(config: TelemetryConfig);
92
+ updateConfig(config: TelemetryConfig): void;
93
+ sendTelemetry(event: any): void;
94
+ syncEvents(): Promise<void>;
95
+ private _handleFailedBatch;
96
+ private _retryFailedBatch;
97
+ }
98
+
99
+ declare class DeviceService {
100
+ private static fingerPrintId;
101
+ static getFingerPrint(): Promise<string>;
102
+ }
103
+
104
+ declare class Dispatcher {
105
+ static dispatch(url: string, data: any, headers: Record<string, string>): Promise<any>;
106
+ }
107
+
108
+ declare const $t: Telemetry;
109
+
110
+ export { $t, DeviceService, Dispatcher, Telemetry, type TelemetryConfig, TelemetrySyncManager, defaultConfig };