miva-proctor-sdk 0.0.4 → 0.0.6

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.
@@ -15,8 +15,8 @@ declare class ProctoringManager {
15
15
  private violationsTracker?;
16
16
  private env;
17
17
  private currentSessionId;
18
- constructor(config: IProctoringManagerConfig, trackingSession?: TrackingSession, violationsTracker?: ViolationsTracker);
19
- static getInstance(config: IProctoringManagerConfig, trackingSession?: TrackingSession, violationsTracker?: ViolationsTracker): ProctoringManager;
18
+ constructor(config: IProctoringManagerConfig);
19
+ static getInstance(config: IProctoringManagerConfig): ProctoringManager;
20
20
  getRequestPermissions(): Promise<{
21
21
  camera: boolean;
22
22
  audio: boolean;
@@ -24,7 +24,7 @@ declare class ProctoringManager {
24
24
  }>;
25
25
  startTracking(showFullscreenModal?: (cb: () => Promise<void>) => Promise<void>): Promise<void>;
26
26
  stopTracking(): Promise<void>;
27
- initializeSession(params: IStartSessionParams): Promise<any>;
27
+ initializeSession(params: IStartSessionParams, trackingSession: TrackingSession, violationsTracker: ViolationsTracker, showFullscreenModal?: (cb: () => Promise<void>) => Promise<void>): Promise<any>;
28
28
  getSessions(params: IGetSessionsParams): Promise<any>;
29
29
  getCurrentSession(): Promise<any>;
30
30
  startSession(params: IStartSessionParams): Promise<any>;
@@ -4,18 +4,16 @@ exports.ProctoringManager = void 0;
4
4
  const core_1 = require("../core");
5
5
  const mediaPermission_1 = require("../core/proctor/mediaPermission");
6
6
  class ProctoringManager {
7
- constructor(config, trackingSession, violationsTracker) {
7
+ constructor(config) {
8
8
  this.currentSessionId = '';
9
9
  this.userId = config.userId;
10
10
  this.userEmail = config.userEmail;
11
11
  this.env = config.env;
12
12
  this.proctorMetricService = new core_1.ProctorMetricService(this.env);
13
- this.session = trackingSession;
14
- this.violationsTracker = violationsTracker;
15
13
  }
16
- static getInstance(config, trackingSession, violationsTracker) {
14
+ static getInstance(config) {
17
15
  if (!ProctoringManager.instance) {
18
- ProctoringManager.instance = new ProctoringManager(config, trackingSession, violationsTracker);
16
+ ProctoringManager.instance = new ProctoringManager(config);
19
17
  }
20
18
  return ProctoringManager.instance;
21
19
  }
@@ -53,14 +51,19 @@ class ProctoringManager {
53
51
  }
54
52
  this.violationsTracker.stop();
55
53
  }
56
- async initializeSession(params) {
54
+ async initializeSession(params, trackingSession, violationsTracker, showFullscreenModal) {
55
+ this.session = trackingSession;
56
+ this.violationsTracker = violationsTracker;
57
+ if (this.violationsTracker) {
58
+ this.violationsTracker.start(showFullscreenModal);
59
+ }
57
60
  const startSessionResponse = await this.proctorMetricService.startSession({
58
61
  courseId: params.courseId,
59
62
  examId: params.examId,
60
63
  studentId: this.userId,
61
64
  timestamp: params.timestamp,
62
65
  });
63
- this.currentSessionId = startSessionResponse.data.sessionId;
66
+ this.currentSessionId = startSessionResponse.data.id;
64
67
  return startSessionResponse;
65
68
  }
66
69
  async getSessions(params) {
@@ -70,13 +73,21 @@ class ProctoringManager {
70
73
  return this.proctorMetricService.getActiveSessions(this.userId);
71
74
  }
72
75
  async startSession(params) {
76
+ if (!this.session || !this.violationsTracker) {
77
+ throw new Error('Session or violations tracker is not initialized');
78
+ }
79
+ const getActiveSessionsResponse = await this.proctorMetricService.getActiveSessions(this.userId);
80
+ if (getActiveSessionsResponse.data.length > 0) {
81
+ this.currentSessionId = getActiveSessionsResponse.data[0].id;
82
+ return getActiveSessionsResponse;
83
+ }
73
84
  const startSessionResponse = await this.proctorMetricService.startSession({
74
85
  courseId: params.courseId,
75
86
  examId: params.examId,
76
87
  studentId: this.userId,
77
88
  timestamp: params.timestamp,
78
89
  });
79
- this.currentSessionId = startSessionResponse.data.sessionId;
90
+ this.currentSessionId = startSessionResponse.data.id;
80
91
  return startSessionResponse;
81
92
  }
82
93
  async endSession() {
@@ -85,6 +96,9 @@ class ProctoringManager {
85
96
  if (this.violationsTracker) {
86
97
  await this.violationsTracker.stop();
87
98
  }
99
+ if (this.session) {
100
+ this.session = undefined;
101
+ }
88
102
  }
89
103
  onReceiveViolationTracker(violation, evidence) {
90
104
  if (!this.session) {
@@ -107,4 +121,4 @@ class ProctoringManager {
107
121
  }
108
122
  }
109
123
  exports.ProctoringManager = ProctoringManager;
110
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUHJvY3RvcmluZ01hbmFnZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvbW9kdWxlcy9Qcm9jdG9yaW5nTWFuYWdlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFDQSxrQ0FPaUI7QUFFakIscUVBQW1FO0FBUW5FLE1BQU0saUJBQWlCO0lBVXJCLFlBQ0UsTUFBZ0MsRUFDaEMsZUFBaUMsRUFDakMsaUJBQXFDO1FBRXJDLElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxFQUFFLENBQUM7UUFDM0IsSUFBSSxDQUFDLE1BQU0sR0FBRyxNQUFNLENBQUMsTUFBTSxDQUFDO1FBQzVCLElBQUksQ0FBQyxTQUFTLEdBQUcsTUFBTSxDQUFDLFNBQVMsQ0FBQztRQUNsQyxJQUFJLENBQUMsR0FBRyxHQUFHLE1BQU0sQ0FBQyxHQUFHLENBQUM7UUFDdEIsSUFBSSxDQUFDLG9CQUFvQixHQUFHLElBQUksMkJBQW9CLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQy9ELElBQUksQ0FBQyxPQUFPLEdBQUcsZUFBZSxDQUFDO1FBQy9CLElBQUksQ0FBQyxpQkFBaUIsR0FBRyxpQkFBaUIsQ0FBQztJQUM3QyxDQUFDO0lBRU0sTUFBTSxDQUFDLFdBQVcsQ0FDdkIsTUFBZ0MsRUFDaEMsZUFBaUMsRUFDakMsaUJBQXFDO1FBRXJDLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxRQUFRLEVBQUU7WUFDL0IsaUJBQWlCLENBQUMsUUFBUSxHQUFHLElBQUksaUJBQWlCLENBQ2hELE1BQU0sRUFDTixlQUFlLEVBQ2YsaUJBQWlCLENBQ2xCLENBQUM7U0FDSDtRQUNELE9BQU8saUJBQWlCLENBQUMsUUFBUSxDQUFDO0lBQ3BDLENBQUM7SUFFTSxLQUFLLENBQUMscUJBQXFCO1FBQ2hDLElBQUksVUFBVSxHQUFHO1lBQ2IsTUFBTSxFQUFFLEtBQUs7WUFDYixLQUFLLEVBQUUsS0FBSztZQUNaLE1BQU0sRUFBRSxLQUFLO1NBQ2hCLENB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
124
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUHJvY3RvcmluZ01hbmFnZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvbW9kdWxlcy9Qcm9jdG9yaW5nTWFuYWdlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFDQSxrQ0FPaUI7QUFFakIscUVBQW1FO0FBUW5FLE1BQU0saUJBQWlCO0lBVXJCLFlBQ0UsTUFBZ0M7UUFFaEMsSUFBSSxDQUFDLGdCQUFnQixHQUFHLEVBQUUsQ0FBQztRQUMzQixJQUFJLENBQUMsTUFBTSxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUM7UUFDNUIsSUFBSSxDQUFDLFNBQVMsR0FBRyxNQUFNLENBQUMsU0FBUyxDQUFDO1FBQ2xDLElBQUksQ0FBQyxHQUFHLEdBQUcsTUFBTSxDQUFDLEdBQUcsQ0FBQztRQUN0QixJQUFJLENBQUMsb0JBQW9CLEdBQUcsSUFBSSwyQkFBb0IsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7SUFDakUsQ0FBQztJQUVNLE1BQU0sQ0FBQyxXQUFXLENBQ3ZCLE1BQWdDO1FBRWhDLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxRQUFRLEVBQUU7WUFDL0IsaUJBQWlCLENBQUMsUUFBUSxHQUFHLElBQUksaUJBQWlCLENBQ2hELE1BQU0sQ0FDUCxDQUFDO1NBQ0g7UUFDRCxPQUFPLGlCQUFpQixDQUFDLFFBQVEsQ0FBQztJQUNwQyxDQUFDO0lBRU0sS0FBSyxDQUFDLHFCQUFxQjtRQUtoQyxJQUFJLFVBQVUsR0FBRztZQUNmLE1BQU0sRUFBRSxLQUFLO1lBQ2IsS0FBSyxFQUFFLEtBQUs7WUFDWixNQUFNLEVBQUUsS0FBSztTQUNkLENBQUM7UUFDRixNQUFNLGdCQUFnQixHQUFHLGtDQUFnQixDQUFDLFdBQVcsRUFBRSxDQUFDO1FBQ3hELE1BQU0sZUFBZSxHQUFHLGdCQUFnQixDQUFDLGtCQUFrQixFQUFFLENBQUM7UUFDOUQsSUFBSSxlQUFlLElBQUksZUFBZSxLQUFLLElBQUksRUFBRTtZQUMvQyxP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
@@ -15,8 +15,8 @@ declare class ProctoringManager {
15
15
  private violationsTracker?;
16
16
  private env;
17
17
  private currentSessionId;
18
- constructor(config: IProctoringManagerConfig, trackingSession?: TrackingSession, violationsTracker?: ViolationsTracker);
19
- static getInstance(config: IProctoringManagerConfig, trackingSession?: TrackingSession, violationsTracker?: ViolationsTracker): ProctoringManager;
18
+ constructor(config: IProctoringManagerConfig);
19
+ static getInstance(config: IProctoringManagerConfig): ProctoringManager;
20
20
  getRequestPermissions(): Promise<{
21
21
  camera: boolean;
22
22
  audio: boolean;
@@ -24,7 +24,7 @@ declare class ProctoringManager {
24
24
  }>;
25
25
  startTracking(showFullscreenModal?: (cb: () => Promise<void>) => Promise<void>): Promise<void>;
26
26
  stopTracking(): Promise<void>;
27
- initializeSession(params: IStartSessionParams): Promise<any>;
27
+ initializeSession(params: IStartSessionParams, trackingSession: TrackingSession, violationsTracker: ViolationsTracker, showFullscreenModal?: (cb: () => Promise<void>) => Promise<void>): Promise<any>;
28
28
  getSessions(params: IGetSessionsParams): Promise<any>;
29
29
  getCurrentSession(): Promise<any>;
30
30
  startSession(params: IStartSessionParams): Promise<any>;
@@ -1,18 +1,16 @@
1
1
  import { ProctorMetricService, } from '../core';
2
2
  import { MediaPermissions } from '../core/proctor/mediaPermission';
3
3
  class ProctoringManager {
4
- constructor(config, trackingSession, violationsTracker) {
4
+ constructor(config) {
5
5
  this.currentSessionId = '';
6
6
  this.userId = config.userId;
7
7
  this.userEmail = config.userEmail;
8
8
  this.env = config.env;
9
9
  this.proctorMetricService = new ProctorMetricService(this.env);
10
- this.session = trackingSession;
11
- this.violationsTracker = violationsTracker;
12
10
  }
13
- static getInstance(config, trackingSession, violationsTracker) {
11
+ static getInstance(config) {
14
12
  if (!ProctoringManager.instance) {
15
- ProctoringManager.instance = new ProctoringManager(config, trackingSession, violationsTracker);
13
+ ProctoringManager.instance = new ProctoringManager(config);
16
14
  }
17
15
  return ProctoringManager.instance;
18
16
  }
@@ -50,14 +48,19 @@ class ProctoringManager {
50
48
  }
51
49
  this.violationsTracker.stop();
52
50
  }
53
- async initializeSession(params) {
51
+ async initializeSession(params, trackingSession, violationsTracker, showFullscreenModal) {
52
+ this.session = trackingSession;
53
+ this.violationsTracker = violationsTracker;
54
+ if (this.violationsTracker) {
55
+ this.violationsTracker.start(showFullscreenModal);
56
+ }
54
57
  const startSessionResponse = await this.proctorMetricService.startSession({
55
58
  courseId: params.courseId,
56
59
  examId: params.examId,
57
60
  studentId: this.userId,
58
61
  timestamp: params.timestamp,
59
62
  });
60
- this.currentSessionId = startSessionResponse.data.sessionId;
63
+ this.currentSessionId = startSessionResponse.data.id;
61
64
  return startSessionResponse;
62
65
  }
63
66
  async getSessions(params) {
@@ -67,13 +70,21 @@ class ProctoringManager {
67
70
  return this.proctorMetricService.getActiveSessions(this.userId);
68
71
  }
69
72
  async startSession(params) {
73
+ if (!this.session || !this.violationsTracker) {
74
+ throw new Error('Session or violations tracker is not initialized');
75
+ }
76
+ const getActiveSessionsResponse = await this.proctorMetricService.getActiveSessions(this.userId);
77
+ if (getActiveSessionsResponse.data.length > 0) {
78
+ this.currentSessionId = getActiveSessionsResponse.data[0].id;
79
+ return getActiveSessionsResponse;
80
+ }
70
81
  const startSessionResponse = await this.proctorMetricService.startSession({
71
82
  courseId: params.courseId,
72
83
  examId: params.examId,
73
84
  studentId: this.userId,
74
85
  timestamp: params.timestamp,
75
86
  });
76
- this.currentSessionId = startSessionResponse.data.sessionId;
87
+ this.currentSessionId = startSessionResponse.data.id;
77
88
  return startSessionResponse;
78
89
  }
79
90
  async endSession() {
@@ -82,6 +93,9 @@ class ProctoringManager {
82
93
  if (this.violationsTracker) {
83
94
  await this.violationsTracker.stop();
84
95
  }
96
+ if (this.session) {
97
+ this.session = undefined;
98
+ }
85
99
  }
86
100
  onReceiveViolationTracker(violation, evidence) {
87
101
  if (!this.session) {
@@ -104,4 +118,4 @@ class ProctoringManager {
104
118
  }
105
119
  }
106
120
  export { ProctoringManager };
107
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUHJvY3RvcmluZ01hbmFnZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvbW9kdWxlcy9Qcm9jdG9yaW5nTWFuYWdlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBSUwsb0JBQW9CLEdBR3JCLE1BQU0sU0FBUyxDQUFDO0FBRWpCLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBUW5FLE1BQU0saUJBQWlCO0lBVXJCLFlBQ0UsTUFBZ0MsRUFDaEMsZUFBaUMsRUFDakMsaUJBQXFDO1FBRXJDLElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxFQUFFLENBQUM7UUFDM0IsSUFBSSxDQUFDLE1BQU0sR0FBRyxNQUFNLENBQUMsTUFBTSxDQUFDO1FBQzVCLElBQUksQ0FBQyxTQUFTLEdBQUcsTUFBTSxDQUFDLFNBQVMsQ0FBQztRQUNsQyxJQUFJLENBQUMsR0FBRyxHQUFHLE1BQU0sQ0FBQyxHQUFHLENBQUM7UUFDdEIsSUFBSSxDQUFDLG9CQUFvQixHQUFHLElBQUksb0JBQW9CLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQy9ELElBQUksQ0FBQyxPQUFPLEdBQUcsZUFBZSxDQUFDO1FBQy9CLElBQUksQ0FBQyxpQkFBaUIsR0FBRyxpQkFBaUIsQ0FBQztJQUM3QyxDQUFDO0lBRU0sTUFBTSxDQUFDLFdBQVcsQ0FDdkIsTUFBZ0MsRUFDaEMsZUFBaUMsRUFDakMsaUJBQXFDO1FBRXJDLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxRQUFRLEVBQUU7WUFDL0IsaUJBQWlCLENBQUMsUUFBUSxHQUFHLElBQUksaUJBQWlCLENBQ2hELE1BQU0sRUFDTixlQUFlLEVBQ2YsaUJBQWlCLENBQ2xCLENBQUM7U0FDSDtRQUNELE9BQU8saUJBQWlCLENBQUMsUUFBUSxDQUFDO0lBQ3BDLENBQUM7SUFFTSxLQUFLLENBQUMscUJBQXFCO1FBQ2hDLElBQUksVUFBVSxHQUFHO1lBQ2IsTUFB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
121
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUHJvY3RvcmluZ01hbmFnZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvbW9kdWxlcy9Qcm9jdG9yaW5nTWFuYWdlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBSUwsb0JBQW9CLEdBR3JCLE1BQU0sU0FBUyxDQUFDO0FBRWpCLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBUW5FLE1BQU0saUJBQWlCO0lBVXJCLFlBQ0UsTUFBZ0M7UUFFaEMsSUFBSSxDQUFDLGdCQUFnQixHQUFHLEVBQUUsQ0FBQztRQUMzQixJQUFJLENBQUMsTUFBTSxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUM7UUFDNUIsSUFBSSxDQUFDLFNBQVMsR0FBRyxNQUFNLENBQUMsU0FBUyxDQUFDO1FBQ2xDLElBQUksQ0FBQyxHQUFHLEdBQUcsTUFBTSxDQUFDLEdBQUcsQ0FBQztRQUN0QixJQUFJLENBQUMsb0JBQW9CLEdBQUcsSUFBSSxvQkFBb0IsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7SUFDakUsQ0FBQztJQUVNLE1BQU0sQ0FBQyxXQUFXLENBQ3ZCLE1BQWdDO1FBRWhDLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxRQUFRLEVBQUU7WUFDL0IsaUJBQWlCLENBQUMsUUFBUSxHQUFHLElBQUksaUJBQWlCLENBQ2hELE1BQU0sQ0FDUCxDQUFDO1NBQ0g7UUFDRCxPQUFPLGlCQUFpQixDQUFDLFFBQVEsQ0FBQztJQUNwQyxDQUFDO0lBRU0sS0FBSyxDQUFDLHFCQUFxQjtRQUtoQyxJQUFJLFVBQVUsR0FBRztZQUNmLE1BQU0sRUFBRSxLQUFLO1lBQ2IsS0FBSyxFQUFFLEtBQUs7WUFDWixNQUFNLEVBQUUsS0FBSztTQUNkLENBQUM7UUFDRixNQUFNLGdCQUFnQixHQUFHLGdCQUFnQixDQUFDLFdBQVcsRUFBRSxDQUFDO1FBQ3hELE1BQU0sZUFBZSxHQUFHLGdCQUFnQixDQUFDLGtCQUFr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
@@ -15,8 +15,8 @@ declare class ProctoringManager {
15
15
  private violationsTracker?;
16
16
  private env;
17
17
  private currentSessionId;
18
- constructor(config: IProctoringManagerConfig, trackingSession?: TrackingSession, violationsTracker?: ViolationsTracker);
19
- static getInstance(config: IProctoringManagerConfig, trackingSession?: TrackingSession, violationsTracker?: ViolationsTracker): ProctoringManager;
18
+ constructor(config: IProctoringManagerConfig);
19
+ static getInstance(config: IProctoringManagerConfig): ProctoringManager;
20
20
  getRequestPermissions(): Promise<{
21
21
  camera: boolean;
22
22
  audio: boolean;
@@ -24,7 +24,7 @@ declare class ProctoringManager {
24
24
  }>;
25
25
  startTracking(showFullscreenModal?: (cb: () => Promise<void>) => Promise<void>): Promise<void>;
26
26
  stopTracking(): Promise<void>;
27
- initializeSession(params: IStartSessionParams): Promise<any>;
27
+ initializeSession(params: IStartSessionParams, trackingSession: TrackingSession, violationsTracker: ViolationsTracker, showFullscreenModal?: (cb: () => Promise<void>) => Promise<void>): Promise<any>;
28
28
  getSessions(params: IGetSessionsParams): Promise<any>;
29
29
  getCurrentSession(): Promise<any>;
30
30
  startSession(params: IStartSessionParams): Promise<any>;