easyproctor-hml 2.5.21 → 2.5.22

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/index.js CHANGED
@@ -30264,7 +30264,10 @@ function validatePartialVideoOptions(options) {
30264
30264
  width: options.width,
30265
30265
  height: options.height,
30266
30266
  minWidth: options.minWidth,
30267
- minHeight: options.minHeight
30267
+ minHeight: options.minHeight,
30268
+ timeSlice: options.timeSlice,
30269
+ videoBitsPerSecond: options.videoBitsPerSecond,
30270
+ mimeType: options.mimeType
30268
30271
  };
30269
30272
  } else {
30270
30273
  return { width: 640, height: 480 };
@@ -30351,7 +30354,7 @@ var proctoringId;
30351
30354
  function setRecorderProctoringId(id) {
30352
30355
  proctoringId = id;
30353
30356
  }
30354
- function recorder(stream4, buffer, onBufferSizeError = false, onBufferSizeErrorCallback, audio = false) {
30357
+ function recorder(stream4, buffer, videoOptions, onBufferSizeError = false, onBufferSizeErrorCallback, audio = false) {
30355
30358
  let resolvePromise;
30356
30359
  let stopped = false;
30357
30360
  let onBufferSizeInterval;
@@ -30361,7 +30364,7 @@ function recorder(stream4, buffer, onBufferSizeError = false, onBufferSizeErrorC
30361
30364
  let recorderOptions = {
30362
30365
  // eslint-disable-next-line no-useless-escape
30363
30366
  mimeType: "video/webm",
30364
- videoBitsPerSecond: 128e3,
30367
+ videoBitsPerSecond: (videoOptions == null ? void 0 : videoOptions.videoBitsPerSecond) || 128e3,
30365
30368
  audioBitsPerSecond: 64 * 1e3
30366
30369
  };
30367
30370
  if (MediaRecorder.isTypeSupported("video/webm;codecs=vp9")) {
@@ -30371,15 +30374,25 @@ function recorder(stream4, buffer, onBufferSizeError = false, onBufferSizeErrorC
30371
30374
  "vp9 codec not supported. Using default mimeType without vp9."
30372
30375
  );
30373
30376
  }
30377
+ if (videoOptions == null ? void 0 : videoOptions.mimeType) {
30378
+ recorderOptions.mimeType = videoOptions == null ? void 0 : videoOptions.mimeType;
30379
+ }
30374
30380
  if (audio) {
30375
30381
  recorderOptions = {
30376
30382
  mimeType: "audio/webm",
30377
30383
  audioBitsPerSecond: 64 * 1e3
30378
30384
  };
30379
30385
  }
30386
+ console.log("recorderOptions bitsPerSecond", recorderOptions.bitsPerSecond);
30380
30387
  const mediaRecorder = new MediaRecorder(stream4, recorderOptions);
30381
30388
  mediaRecorder.ondataavailable = (e3) => {
30382
30389
  bufferSize = bufferSize + e3.data.size;
30390
+ console.log("video tracks length > 0", stream4.getVideoTracks().length > 0);
30391
+ if (stream4.getVideoTracks().length > 0) {
30392
+ const videoTrack = stream4.getVideoTracks()[0];
30393
+ console.log(videoTrack.readyState);
30394
+ console.log(videoTrack.enabled);
30395
+ }
30383
30396
  if (e3.data.size > 0) {
30384
30397
  buffer.push(e3.data);
30385
30398
  }
@@ -30407,14 +30420,10 @@ function recorder(stream4, buffer, onBufferSizeError = false, onBufferSizeErrorC
30407
30420
  function startRecording() {
30408
30421
  return new Promise((resolve) => {
30409
30422
  resolvePromise = resolve;
30410
- mediaRecorder.start();
30423
+ console.log("startRecording", videoOptions == null ? void 0 : videoOptions.timeSlice);
30424
+ mediaRecorder.start((videoOptions == null ? void 0 : videoOptions.timeSlice) || 1e4);
30411
30425
  bufferSize = 0;
30412
30426
  stopped = false;
30413
- if (onBufferSizeError) {
30414
- onBufferSizeInterval = setInterval(async () => {
30415
- await mediaRecorder.requestData();
30416
- }, 3e4);
30417
- }
30418
30427
  });
30419
30428
  }
30420
30429
  function stopRecording() {
@@ -30945,6 +30954,7 @@ var CameraRecorder = class {
30945
30954
  this.cameraStream,
30946
30955
  // streamToRecord,
30947
30956
  this.blobs,
30957
+ this.videoOptions,
30948
30958
  this.options.onBufferSizeError,
30949
30959
  (e3) => this.bufferError(e3),
30950
30960
  false
@@ -32623,9 +32633,7 @@ var CapturePhoto = class {
32623
32633
  );
32624
32634
  await this.cameraRecorder.startRecording();
32625
32635
  cameraContainer.srcObject = this.cameraRecorder.cameraStream;
32626
- cameraContainer.play().catch((e3) => {
32627
- console.warn("Autoplay bloqueado ou erro ao iniciar v\xEDdeo:", e3);
32628
- });
32636
+ cameraContainer.play();
32629
32637
  }
32630
32638
  shot() {
32631
32639
  const cameraContainer = document.querySelector("#cameraStream");
@@ -32718,9 +32726,6 @@ var CapturePhoto = class {
32718
32726
  const video = document.createElement("video");
32719
32727
  video.setAttribute("id", "cameraStream");
32720
32728
  video.muted = true;
32721
- video.setAttribute("playsinline", "true");
32722
- video.setAttribute("webkit-playsinline", "true");
32723
- video.autoplay = true;
32724
32729
  divCamera.style.position = "fixed";
32725
32730
  divCamera.style.top = "0";
32726
32731
  divCamera.style.left = "0";
@@ -32907,8 +32912,8 @@ var CapturePhoto = class {
32907
32912
  }
32908
32913
  };
32909
32914
 
32910
- // src/extension/extensionEasyProctor.ts
32911
- var ExtensionEasyProctor = class {
32915
+ // src/extension/extension.ts
32916
+ var Extension = class {
32912
32917
  constructor() {
32913
32918
  this.hasExtension = false;
32914
32919
  this.tryes = 0;
@@ -32953,89 +32958,6 @@ var ExtensionEasyProctor = class {
32953
32958
  }
32954
32959
  };
32955
32960
 
32956
- // src/extension/extensionEasyCatcher.ts
32957
- var ExtensionEasyCatcher = class {
32958
- constructor(options) {
32959
- this.hasExtension = false;
32960
- this.tryes = 0;
32961
- this.responseStart = false;
32962
- this.options = options || {};
32963
- }
32964
- /**
32965
- * Verifica se a extensão está instalada e ativa.
32966
- * Retorna o número da versão se encontrada, ou lança erro após timeout.
32967
- */
32968
- checkExtensionInstalled(timeoutMs = 2e3) {
32969
- return new Promise((resolve, reject) => {
32970
- let handled = false;
32971
- const handler = (event) => {
32972
- if (event.source === window && event.data.sender === "easyproctor-extension" && event.data.message_name === "version") {
32973
- handled = true;
32974
- window.removeEventListener("message", handler);
32975
- resolve(event.data.message);
32976
- }
32977
- };
32978
- window.addEventListener("message", handler);
32979
- window.postMessage({
32980
- type: "easycatcher",
32981
- func: "verifyExtensionEasycatcher"
32982
- }, "*");
32983
- setTimeout(() => {
32984
- if (!handled) {
32985
- window.removeEventListener("message", handler);
32986
- reject(new Error("Extens\xE3o n\xE3o detectada ou n\xE3o respondeu."));
32987
- }
32988
- }, timeoutMs);
32989
- });
32990
- }
32991
- /**
32992
- * Solicita o JSON da sessão atual capturado pela extensão.
32993
- */
32994
- getSessionData(timeoutMs = 5e3) {
32995
- return new Promise((resolve, reject) => {
32996
- let handled = false;
32997
- const handler = (event) => {
32998
- if (event.source === window && event.data.sender === "easyproctor-extension" && event.data.message_name === "data_response") {
32999
- handled = true;
33000
- window.removeEventListener("message", handler);
33001
- resolve(event.data.payload);
33002
- }
33003
- };
33004
- window.addEventListener("message", handler);
33005
- window.postMessage({
33006
- type: "easycatcher",
33007
- func: "getDataExtensionEasycatcher"
33008
- }, "*");
33009
- setTimeout(() => {
33010
- if (!handled) {
33011
- window.removeEventListener("message", handler);
33012
- reject(new Error("Timeout ao aguardar dados da extens\xE3o."));
33013
- }
33014
- }, timeoutMs);
33015
- });
33016
- }
33017
- start() {
33018
- return new Promise((resolve, reject) => {
33019
- let handled = false;
33020
- const handler = (event) => {
33021
- if (event.source === window && event.data.sender === "easyproctor-extension" && event.data.message_name === "started_confirmed") {
33022
- handled = true;
33023
- window.removeEventListener("message", handler);
33024
- resolve(true);
33025
- }
33026
- };
33027
- window.addEventListener("message", handler);
33028
- window.postMessage({ type: "easycatcher", func: "startExtensionEasycatcher" }, "*");
33029
- setTimeout(() => {
33030
- if (!handled) {
33031
- window.removeEventListener("message", handler);
33032
- reject(new Error("Timeout: Extens\xE3o n\xE3o confirmou o in\xEDcio."));
33033
- }
33034
- }, 3e3);
33035
- });
33036
- }
33037
- };
33038
-
33039
32961
  // src/modules/onChangeDevices.ts
33040
32962
  var onChangeDevices = class {
33041
32963
  constructor(repositoryDevices, proctoringId2, sessionOptions, allRecorders) {
@@ -33472,7 +33394,7 @@ var AudioRecorder = class {
33472
33394
  audio: { deviceId: this.options.microphoneId || "default" }
33473
33395
  };
33474
33396
  this.audioStream = await navigator.mediaDevices.getUserMedia(constraints);
33475
- const { startRecording, stopRecording, pauseRecording, resumeRecording } = recorder(this.audioStream, this.blobs, void 0, void 0, true);
33397
+ const { startRecording, stopRecording, pauseRecording, resumeRecording } = recorder(this.audioStream, this.blobs, null, void 0, void 0, true);
33476
33398
  this.recordingStart = startRecording;
33477
33399
  this.recordingStop = stopRecording;
33478
33400
  this.recordingPause = pauseRecording;
@@ -36063,7 +35985,7 @@ var ScreenRecorder = class {
36063
35985
  });
36064
35986
  throw NOT_SHARED_SCREEN;
36065
35987
  }
36066
- const { startRecording, stopRecording } = recorder(this.screenStream, this.blobs, this.options.onBufferSizeError, onBufferSizeErrorCallback);
35988
+ const { startRecording, stopRecording } = recorder(this.screenStream, this.blobs, null, this.options.onBufferSizeError, onBufferSizeErrorCallback);
36067
35989
  this.recordingStart = startRecording;
36068
35990
  this.recordingStop = stopRecording;
36069
35991
  this.recordingStart();
@@ -36285,7 +36207,6 @@ var _ExternalCameraChecker = class _ExternalCameraChecker {
36285
36207
  this.connection = null;
36286
36208
  this.context = context;
36287
36209
  this.onRealtimeAlertsCallback = onRealtimeAlertsCallback;
36288
- console.log("context -> ", context);
36289
36210
  this.backend = new BackendService({
36290
36211
  type: (context == null ? void 0 : context.type) || "prod",
36291
36212
  token: context.token
@@ -36299,7 +36220,6 @@ var _ExternalCameraChecker = class _ExternalCameraChecker {
36299
36220
  try {
36300
36221
  this.transmissionOk = false;
36301
36222
  const response = await this.backend.externalCameraCheckTransmission("" + this.externalSessionId);
36302
- console.log(response);
36303
36223
  let attempts = 0;
36304
36224
  while (!this.transmissionOk && attempts <= 5) {
36305
36225
  await new Promise((resolve) => setTimeout(resolve, 2e3));
@@ -36316,16 +36236,13 @@ var _ExternalCameraChecker = class _ExternalCameraChecker {
36316
36236
  try {
36317
36237
  this.proctoringId = proctoringId2;
36318
36238
  const response = await this.backend.externalCameraStartTransmission("" + this.externalSessionId, proctoringId2);
36319
- console.log(response);
36320
36239
  } catch (error) {
36321
- console.error("Erro ao iniciar transmiss\xE3o:", error);
36322
36240
  throw new Error("N\xE3o foi poss\xEDvel iniciar a transmiss\xE3o.");
36323
36241
  }
36324
36242
  }
36325
36243
  async goToPositionGuide() {
36326
36244
  try {
36327
36245
  const response = await this.backend.goToExternalCameraPositionStep("" + this.externalSessionId);
36328
- console.log(response);
36329
36246
  } catch (error) {
36330
36247
  console.error("Erro ao enviar comando de Position:", error);
36331
36248
  throw new Error("N\xE3o foi poss\xEDvel enviar comando de Position Guide.");
@@ -36335,7 +36252,6 @@ var _ExternalCameraChecker = class _ExternalCameraChecker {
36335
36252
  if (this.connection) {
36336
36253
  const actionMessage = new ActionMessage();
36337
36254
  actionMessage.command = "Reset";
36338
- console.log("Enviando comando 'Reset' para o aplicativo...");
36339
36255
  this.connection.invoke(
36340
36256
  "SendAction",
36341
36257
  this.externalSessionId,
@@ -36349,7 +36265,6 @@ var _ExternalCameraChecker = class _ExternalCameraChecker {
36349
36265
  this.onTakePictureCallback = onTakePictureCallback;
36350
36266
  const actionMessage = new ActionMessage();
36351
36267
  actionMessage.command = "Capture";
36352
- console.log("Enviando comando 'Capture' para o aplicativo...");
36353
36268
  this.connection.invoke(
36354
36269
  "SendAction",
36355
36270
  this.externalSessionId,
@@ -36368,7 +36283,6 @@ var _ExternalCameraChecker = class _ExternalCameraChecker {
36368
36283
  await this.reset();
36369
36284
  const response = await this.backend.externalCameraStartSession();
36370
36285
  this.externalSessionId = response.externalSessionId;
36371
- console.log(this.externalSessionId);
36372
36286
  this.currentStep = 0 /* STARTED */;
36373
36287
  const pairingObject = {
36374
36288
  externalSessionId: this.externalSessionId,
@@ -36377,7 +36291,6 @@ var _ExternalCameraChecker = class _ExternalCameraChecker {
36377
36291
  };
36378
36292
  const pairingDataString = JSON.stringify(pairingObject);
36379
36293
  this.qrCodeBase64Image = await import_qrcode.default.toDataURL(pairingDataString);
36380
- console.log(this.qrCodeBase64Image);
36381
36294
  return this.qrCodeBase64Image;
36382
36295
  } catch (error) {
36383
36296
  this.disconnectWebSocket();
@@ -36476,7 +36389,6 @@ var _ExternalCameraChecker = class _ExternalCameraChecker {
36476
36389
  var _a2;
36477
36390
  const actionMessage = new ActionMessage();
36478
36391
  actionMessage.command = "Cancel";
36479
- console.log("Enviando comando 'Cancel' para o aplicativo...");
36480
36392
  (_a2 = this.connection) == null ? void 0 : _a2.invoke(
36481
36393
  "SendAction",
36482
36394
  this.externalSessionId,
@@ -36816,8 +36728,6 @@ var _ExternalCameraChecker = class _ExternalCameraChecker {
36816
36728
  this.connection.on(
36817
36729
  "ReceiveMessage",
36818
36730
  (sessionId, messageStr) => {
36819
- console.log("sessionId: ", sessionId);
36820
- console.log("Message: ", messageStr);
36821
36731
  if (sessionId !== this.externalSessionId) {
36822
36732
  console.warn("Sess\xE3o diferente!");
36823
36733
  return;
@@ -36825,7 +36735,6 @@ var _ExternalCameraChecker = class _ExternalCameraChecker {
36825
36735
  try {
36826
36736
  const messageKey = messageStr;
36827
36737
  const message = ExternalCameraStatusEnum[messageKey];
36828
- console.log("Mensagem -> ", message);
36829
36738
  this.handleWebSocketMessage(message);
36830
36739
  } catch (e3) {
36831
36740
  console.error("Erro ao processar mensagem do WebSocket:", e3);
@@ -36835,8 +36744,6 @@ var _ExternalCameraChecker = class _ExternalCameraChecker {
36835
36744
  this.connection.on(
36836
36745
  "ReceiveAction",
36837
36746
  (sessionId, actionMessage) => {
36838
- console.log("sessionId: ", sessionId);
36839
- console.log("Message: ", actionMessage);
36840
36747
  if (sessionId !== this.externalSessionId) {
36841
36748
  console.warn("Sess\xE3o diferente!");
36842
36749
  return;
@@ -36850,7 +36757,6 @@ var _ExternalCameraChecker = class _ExternalCameraChecker {
36850
36757
  );
36851
36758
  try {
36852
36759
  await this.connection.start();
36853
- console.log("Conectado ao Hub SignalR com sucesso!");
36854
36760
  } catch (err) {
36855
36761
  console.error("Falha ao conectar ou entrar no grupo do SignalR: ", err);
36856
36762
  throw new Error("N\xE3o foi poss\xEDvel conectar ao servi\xE7o em tempo real.");
@@ -36977,7 +36883,6 @@ var _ExternalCameraChecker = class _ExternalCameraChecker {
36977
36883
  if (this.connection) {
36978
36884
  try {
36979
36885
  await this.connection.stop();
36980
- console.log("Desconectado do SignalR.");
36981
36886
  } catch (err) {
36982
36887
  console.error("Erro ao desconectar do SignalR:", err);
36983
36888
  } finally {
@@ -37011,7 +36916,6 @@ var Proctoring = class {
37011
36916
  constructor(context) {
37012
36917
  this.context = context;
37013
36918
  this.deviceData = null;
37014
- this.sessionStartTime = 0;
37015
36919
  this.paramsConfig = {
37016
36920
  audioBehaviourParameters: {
37017
36921
  recordingBitrate: 128,
@@ -37235,7 +37139,10 @@ var Proctoring = class {
37235
37139
  width: this.videoOptions.width,
37236
37140
  height: this.videoOptions.height,
37237
37141
  minWidth: this.videoOptions.minWidth,
37238
- minHeight: this.videoOptions.minHeight
37142
+ minHeight: this.videoOptions.minHeight,
37143
+ timeSlice: this.videoOptions.timeSlice,
37144
+ videoBitsPerSecond: this.videoOptions.videoBitsPerSecond,
37145
+ mimeType: this.videoOptions.mimeType
37239
37146
  },
37240
37147
  this.paramsConfig,
37241
37148
  this.backend,
@@ -37286,10 +37193,7 @@ var Proctoring = class {
37286
37193
  if (this.context.token === void 0) {
37287
37194
  throw TOKEN_MISSING;
37288
37195
  }
37289
- if (options.useChallenge) {
37290
- this.extensionEasycatcher = new ExtensionEasyCatcher();
37291
- }
37292
- this.extension = new ExtensionEasyProctor();
37196
+ this.extension = new Extension();
37293
37197
  this.extension.addEventListener();
37294
37198
  const baseURL = this.backend.selectBaseUrl(this.context.type);
37295
37199
  const devices = await enumarateDevices();
@@ -37338,7 +37242,6 @@ var Proctoring = class {
37338
37242
  } catch (error) {
37339
37243
  throw EXTERNAL_CAMERA_NOT_STARTED;
37340
37244
  }
37341
- this.sessionStartTime = Date.now();
37342
37245
  this.allRecorders.cameraRecorder.setProctoringId(this.proctoringId);
37343
37246
  this.allRecorders.noiseRecorder.setProctoringId(this.proctoringId);
37344
37247
  this.proctoringSession.setProctoringId(this.proctoringId);
@@ -37514,7 +37417,6 @@ Upload Services: ${uploaderServices}`,
37514
37417
  });
37515
37418
  if (this.appChecker) {
37516
37419
  const externalSessionId = this.appChecker.getExternalCameraSessionId();
37517
- console.log("externalSessionId -> ", externalSessionId);
37518
37420
  if (externalSessionId != "null") {
37519
37421
  await this.backend.externalCameraFinish(externalSessionId);
37520
37422
  }
@@ -37637,59 +37539,6 @@ Error: ` + error
37637
37539
  _screenStream: (_a2 = this.allRecorders.screenRecorder) == null ? void 0 : _a2.screenStream
37638
37540
  };
37639
37541
  }
37640
- async startChallenge(templateId) {
37641
- if (!this.sessionOptions.useChallenge) {
37642
- throw new Error("useChallenge is set as false on start method");
37643
- }
37644
- await this.extensionEasycatcher.checkExtensionInstalled().catch((err) => {
37645
- throw new Error("EasyCatcher Extension is not installed");
37646
- });
37647
- this.extensionEasycatcher.start();
37648
- const start = Date.now() - this.sessionStartTime;
37649
- await this.backend.startChallenge({
37650
- proctoringId: this.proctoringId,
37651
- templateId,
37652
- start
37653
- }).then((resp) => {
37654
- console.log(resp);
37655
- this.challengeId = resp.id;
37656
- }).catch((reason) => {
37657
- trackers.registerError(
37658
- this.proctoringId,
37659
- "N\xE3o foi poss\xEDvel iniciar desafio!"
37660
- );
37661
- throw reason;
37662
- });
37663
- this.isChallengeRunning = true;
37664
- }
37665
- async stopChallenge() {
37666
- if (!this.isChallengeRunning) {
37667
- throw new Error("Challenge not started");
37668
- }
37669
- try {
37670
- const sessionData = await this.extensionEasycatcher.getSessionData();
37671
- const end = Date.now() - this.sessionStartTime;
37672
- await this.backend.stopChallenge(
37673
- this.challengeId,
37674
- {
37675
- end,
37676
- data: sessionData
37677
- }
37678
- ).catch((reason) => {
37679
- trackers.registerError(
37680
- this.proctoringId,
37681
- "N\xE3o foi poss\xEDvel finalizar o desafio no backend!"
37682
- );
37683
- return void 0;
37684
- });
37685
- this.isChallengeRunning = false;
37686
- } catch (error) {
37687
- trackers.registerError(
37688
- this.proctoringId,
37689
- "Erro ao recuperar dados da extens\xE3o: " + error.message
37690
- );
37691
- }
37692
- }
37693
37542
  };
37694
37543
 
37695
37544
  // src/proctoring/SignTerm.ts
@@ -37917,8 +37766,6 @@ function useProctoring(proctoringOptions, enviromentConfig = "prod") {
37917
37766
  return originalStart(parameters2, videoOptions);
37918
37767
  };
37919
37768
  const finish = proctoring.finish.bind(proctoring);
37920
- const startChallenge = proctoring.startChallenge.bind(proctoring);
37921
- const stopChallenge = proctoring.stopChallenge.bind(proctoring);
37922
37769
  const pause = proctoring.pause.bind(proctoring);
37923
37770
  const resume = proctoring.resume.bind(proctoring);
37924
37771
  const onFocus = proctoring.setOnFocusCallback.bind(proctoring);
@@ -37941,8 +37788,6 @@ function useProctoring(proctoringOptions, enviromentConfig = "prod") {
37941
37788
  login,
37942
37789
  start,
37943
37790
  finish,
37944
- startChallenge,
37945
- stopChallenge,
37946
37791
  onFocus,
37947
37792
  onLostFocus,
37948
37793
  onChangeDevices: onChangeDevices2,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "easyproctor-hml",
3
- "version": "2.5.21",
3
+ "version": "2.5.22",
4
4
  "description": "Modulo web de gravação do EasyProctor",
5
5
  "main": "./index.js",
6
6
  "module": "./esm/index.js",
@@ -1,5 +1,6 @@
1
+ import { ProctoringVideoOptions } from "../proctoring/options/ProctoringVideoOptions";
1
2
  export declare function setRecorderProctoringId(id: string): void;
2
- export default function recorder(stream: MediaStream, buffer: Blob[], onBufferSizeError?: boolean, onBufferSizeErrorCallback?: (e?: any) => void, audio?: boolean): {
3
+ export default function recorder(stream: MediaStream, buffer: Blob[], videoOptions: ProctoringVideoOptions | null, onBufferSizeError?: boolean, onBufferSizeErrorCallback?: (e?: any) => void, audio?: boolean): {
3
4
  startRecording: () => Promise<void>;
4
5
  stopRecording: () => Promise<void>;
5
6
  pauseRecording: () => Promise<void>;
@@ -3,6 +3,9 @@ export interface ProctoringVideoOptions {
3
3
  height: number;
4
4
  minWidth?: number;
5
5
  minHeight?: number;
6
+ timeSlice?: number;
7
+ videoBitsPerSecond?: number;
8
+ mimeType?: string;
6
9
  }
7
10
  export declare function validatePartialVideoOptions(options: Partial<ProctoringVideoOptions>): ProctoringVideoOptions;
8
11
  export declare const getDefaultProctoringVideoOptions: ProctoringVideoOptions;
@@ -41,9 +41,7 @@ export declare class Proctoring {
41
41
  private readonly repository;
42
42
  private readonly repositoryDevices;
43
43
  private extension;
44
- private extensionEasycatcher;
45
44
  private deviceData;
46
- private sessionStartTime;
47
45
  private paramsConfig;
48
46
  private proctoringId;
49
47
  private insights?;
@@ -94,8 +92,4 @@ export declare class Proctoring {
94
92
  audioStream?: MediaStream;
95
93
  _screenStream: MediaStream | undefined;
96
94
  }>;
97
- private isChallengeRunning;
98
- private challengeId;
99
- startChallenge(templateId: string): Promise<void>;
100
- stopChallenge(): Promise<void>;
101
95
  }
@@ -5,8 +5,6 @@ export declare function useProctoring(proctoringOptions: ProctoringContext, envi
5
5
  login: () => Promise<void>;
6
6
  start: (parameters: any, videoOptions: any) => Promise<import("../dtos/StartProctoringResponse").default>;
7
7
  finish: (options?: import("./proctoring").ProctoringFinisherOptions) => Promise<void>;
8
- startChallenge: (templateId: string) => Promise<void>;
9
- stopChallenge: () => Promise<void>;
10
8
  onFocus: (cb: () => void) => Promise<void>;
11
9
  onLostFocus: (cb: () => void) => Promise<void>;
12
10
  onChangeDevices: (options?: import("./proctoring").ProctoringChangeDevicesOptions) => Promise<void>;