easyproctor 0.0.89 → 1.0.0

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.
@@ -1,12 +1,13 @@
1
1
  import StartProctoringResponse from "../../dtos/StartProctoringResponse";
2
+ import { EnviromentType } from "../../proctoring/proctoring";
2
3
  import { ProctoringSession } from "../proctoring/ProctoringSession";
3
4
  export declare class BackendService {
4
5
  private readonly options;
5
6
  private readonly baseUrl;
6
7
  constructor(options: {
7
- type: string;
8
+ type: EnviromentType;
8
9
  });
9
- selectBaseUrl(type: string): "https://proctoring-api-dev.easyproctor.tech/api" | "https://proctoring-api-hml.easyproctor.tech/api" | "https://proctoring-api.easyproctor.tech/api";
10
+ selectBaseUrl(type: EnviromentType): "https://proctoring-api-dev.easyproctor.tech/api" | "https://proctoring-api-hml.easyproctor.tech/api" | "https://proctoring-api.easyproctor.tech/api";
10
11
  confirmStart(proctoringOptions: {
11
12
  examId: any;
12
13
  clientId: any;
@@ -5,6 +5,8 @@ export declare class ProctoringRecorder {
5
5
  private recorders;
6
6
  constructor(session: ProctoringSession, recorders: IRecorder[]);
7
7
  startAll(): Promise<void>;
8
+ pauseAll(): Promise<void>;
9
+ resumeAll(): Promise<void>;
8
10
  stopAll(): Promise<void>;
9
11
  saveAllOnSession(): Promise<void>;
10
12
  }
@@ -1,6 +1,7 @@
1
1
  export declare enum SessionState {
2
2
  Created = "Created",
3
3
  Recording = "Recording",
4
+ Paused = "Paused",
4
5
  Ended = "Ended",
5
6
  EndConfirmed = "EndConfirmed",
6
7
  Uploaded = "Uploaded",
@@ -43,6 +44,8 @@ export declare class ProctoringSession {
43
44
  get hasSomethingToUpload(): boolean;
44
45
  constructor(id: string);
45
46
  start(): void;
47
+ pause(): void;
48
+ resume(): void;
46
49
  stop(): void;
47
50
  setEndConfirmed(): void;
48
51
  setUploaded(): void;
@@ -4,8 +4,9 @@ import { ProgressCallback } from "../upload/uploadCalback";
4
4
  import { ProctoringSession } from "./ProctoringSession";
5
5
  export declare class ProctoringUploader {
6
6
  private session;
7
+ private proctoringId;
7
8
  private uploadServices;
8
- constructor(session: ProctoringSession, uploadServices: IUploadService[] | IDownloadService[]);
9
+ constructor(session: ProctoringSession, proctoringId: string, uploadServices: IUploadService[] | IDownloadService[]);
9
10
  upload(token: string, progress?: ProgressCallback): Promise<void>;
10
11
  private uploadRecordings;
11
12
  private uploadAllFiles;
@@ -12,6 +12,8 @@ export declare class AlertRecorder implements IRecorder {
12
12
  onFocusCallback: () => void;
13
13
  }, optionsProctoring: ProctoringSessionOptions);
14
14
  startRecording(): Promise<void>;
15
+ pauseRecording(): Promise<void>;
16
+ resumeRecording(): Promise<void>;
15
17
  stopRecording(): Promise<void>;
16
18
  saveOnSession(session: ProctoringSession): Promise<void>;
17
19
  private onLostFocus;
@@ -5,8 +5,14 @@ export declare class AudioRecorder implements IRecorder {
5
5
  private blobs;
6
6
  recorder?: IMicRecorder;
7
7
  constructor();
8
+ recordingStart: () => any;
9
+ recordingStop: () => any;
10
+ recordingPause: () => any;
11
+ recordingResume: () => any;
8
12
  file?: File;
9
13
  startRecording(): Promise<void>;
14
+ pauseRecording(): Promise<void>;
15
+ resumeRecording(): Promise<void>;
10
16
  stopRecording(): Promise<void>;
11
17
  saveOnSession(session: ProctoringSession): Promise<void>;
12
18
  }
@@ -15,8 +15,13 @@ export declare class CameraRecorder implements IRecorder {
15
15
  height: number;
16
16
  });
17
17
  file?: File;
18
+ recordingStart: () => any;
18
19
  recordingStop: () => any;
20
+ recordingPause: () => any;
21
+ recordingResume: () => any;
19
22
  startRecording(): Promise<void>;
20
23
  stopRecording(): Promise<void>;
24
+ pauseRecording(): Promise<void>;
25
+ resumeRecording(): Promise<void>;
21
26
  saveOnSession(session: ProctoringSession): Promise<void>;
22
27
  }
@@ -3,6 +3,8 @@ export declare enum RecordingType {
3
3
  }
4
4
  export interface IRecorder {
5
5
  startRecording(): Promise<void>;
6
+ pauseRecording(): Promise<void>;
7
+ resumeRecording(): Promise<void>;
6
8
  stopRecording(): Promise<void>;
7
9
  saveOnSession(session: ProctoringSession): Promise<void>;
8
10
  }
@@ -3,6 +3,7 @@ import { ProctoringSession } from "../proctoring/ProctoringSession";
3
3
  import { IRecorder } from "./IRecorder";
4
4
  export declare class ScreenRecorder implements IRecorder {
5
5
  private blobs;
6
+ private blobsFinal;
6
7
  private options;
7
8
  recorder: RecordRTCPromisesHandler | undefined;
8
9
  screenStream: MediaStream | undefined;
@@ -12,8 +13,13 @@ export declare class ScreenRecorder implements IRecorder {
12
13
  onStopSharingScreenCallback: () => void;
13
14
  });
14
15
  file?: File;
16
+ recordingStart: () => any;
15
17
  recordingStop: () => any;
18
+ recordingPause: () => any;
19
+ recordingResume: () => any;
16
20
  startRecording(): Promise<void>;
21
+ pauseRecording(): Promise<void>;
22
+ resumeRecording(): Promise<void>;
17
23
  stopRecording(): Promise<void>;
18
24
  saveOnSession(session: ProctoringSession): Promise<void>;
19
25
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "easyproctor",
3
- "version": "0.0.89",
3
+ "version": "1.0.0",
4
4
  "description": "Modulo web de gravação do EasyProctor",
5
5
  "main": "./index.js",
6
6
  "module": "./esm/index.js",
@@ -10,7 +10,9 @@ declare const trackers: {
10
10
  registerStart: (proctoringId: string, success: boolean, description: string) => void;
11
11
  registerFinish: (proctoringId: string, success: boolean, description: string) => void;
12
12
  registerError: (proctoringId: string, description: string) => void;
13
- registerUploadVideo: (proctoringId: string, success: boolean, description: string, serviceType: ServiceType, uploadTime?: number) => void;
13
+ registerUpload: (proctoringId: string, success: boolean, description: string, serviceType: ServiceType, uploadTime?: number) => void;
14
+ registerUploadFile: (proctoringId: string, description: string, fileType: string) => void;
14
15
  registerChangeDevice: (proctoringId: string, inOrOut: string, devicesChanged: DevicesChanged) => void;
16
+ registerStopSharingScreen: (proctoringId: string, description: string) => void;
15
17
  };
16
18
  export { trackers, init };
@@ -1 +1,6 @@
1
- export default function recorder(stream: MediaStream, buffer: Blob[]): () => Promise<void>;
1
+ export default function recorder(stream: MediaStream, buffer: Blob[], audio?: boolean): {
2
+ startRecording: () => Promise<void>;
3
+ stopRecording: () => Promise<void>;
4
+ pauseRecording: () => Promise<void>;
5
+ resumeRecording: () => Promise<void>;
6
+ };
@@ -3,6 +3,7 @@ import { ProctoringVideoOptions } from "./options/ProctoringVideoOptions";
3
3
  export declare class DeviceChecker {
4
4
  private videoOptions;
5
5
  private cameraRecorder;
6
+ private audioRecorder;
6
7
  private screenRecorder;
7
8
  constructor();
8
9
  checkDevices(options: ProctoringSessionOptions | undefined, _videoOptions: Partial<ProctoringVideoOptions>): Promise<void>;
@@ -3,7 +3,7 @@ import { DevicesChanged } from "../interfaces/Devices";
3
3
  import { ProctoringSessionOptions } from "./options/ProctoringOptions";
4
4
  import { ProctoringVideoOptions } from "./options/ProctoringVideoOptions";
5
5
  export interface ProctoringContext {
6
- type: string;
6
+ type: EnviromentType;
7
7
  examId: string;
8
8
  clientId: string;
9
9
  token: string;
@@ -21,6 +21,11 @@ export declare enum ProctoringState {
21
21
  Stopping = "Stopping",
22
22
  Paused = "Paused"
23
23
  }
24
+ export declare enum EnviromentType {
25
+ dev = "dev",
26
+ homol = "homol",
27
+ prod = "prod"
28
+ }
24
29
  export declare enum ServiceType {
25
30
  Download = "Download",
26
31
  Upload = "Upload"
@@ -39,6 +44,7 @@ export declare class Proctoring {
39
44
  private state;
40
45
  private serviceType;
41
46
  private recorder;
47
+ private allRecorders;
42
48
  private onStopSharingScreenCallback;
43
49
  setOnStopSharingScreenCallback(cb: () => void): void;
44
50
  private onLostFocusCallback;
@@ -55,11 +61,9 @@ export declare class Proctoring {
55
61
  private initConfig;
56
62
  private getServerDate;
57
63
  pause(): Promise<void>;
58
- resume(options: ProctoringSessionOptions | undefined, examId: string, _videoOptions?: {
59
- width?: number;
60
- height?: number;
61
- }): Promise<{
64
+ resume(): Promise<{
62
65
  cameraStream: MediaStream;
66
+ audioStream?: MediaStream;
63
67
  _screenStream: MediaStream | undefined;
64
68
  }>;
65
69
  }
@@ -1,10 +1,11 @@
1
1
  import { checkIfhasMultipleMonitors, checkPermissions } from "../modules/checkPermissions";
2
2
  import enumarateDevices from "../modules/enumarateDevices";
3
+ import { EnviromentType } from "./proctoring";
3
4
  export declare function useProctoring(proctoringOptions: {
4
5
  examId: string;
5
6
  clientId: string;
6
7
  token: string;
7
- }, homolConfig?: string): {
8
+ }, enviromentConfig?: EnviromentType): {
8
9
  start: (options?: import("./options/ProctoringOptions").ProctoringSessionOptions, _videoOptions?: Partial<import("./options/ProctoringVideoOptions").ProctoringVideoOptions>) => Promise<import("../dtos/StartProctoringResponse").default>;
9
10
  finish: (options?: import("./proctoring").ProctoringFinisherOptions) => Promise<void>;
10
11
  onFocus: (cb: () => void) => void;
@@ -12,11 +13,9 @@ export declare function useProctoring(proctoringOptions: {
12
13
  onChangeDevices: (options?: import("./proctoring").ProctoringChangeDevicesOptions) => Promise<void>;
13
14
  checkDevices: (options: import("./options/ProctoringOptions").ProctoringSessionOptions | undefined, _videoOptions: Partial<import("./options/ProctoringVideoOptions").ProctoringVideoOptions>) => Promise<void>;
14
15
  pause: () => Promise<void>;
15
- resume: (options: import("./options/ProctoringOptions").ProctoringSessionOptions | undefined, examId: string, _videoOptions?: {
16
- width?: number | undefined;
17
- height?: number | undefined;
18
- }) => Promise<{
16
+ resume: () => Promise<{
19
17
  cameraStream: MediaStream;
18
+ audioStream?: MediaStream | undefined;
20
19
  _screenStream: MediaStream | undefined;
21
20
  }>;
22
21
  enumarateDevices: typeof enumarateDevices;