Modulo web de gravação do EasyProctor
bash
npm install --save easyproctor
`
Via CDN
`html
`
Utilização
Para utilizar o componente será necessário utilizar os seguintes parâmetros:
- examId: identificador do exame
- clientId: identificador do parceiro
- token: token de autenticação biométrica (utilizar SDK biométrico do EasyProctor)
Ao inicializar a sessão de proctoring através do método start do componente você receberá o objeto do tipo StartProctoringDTO que possui o identificador da sessão.
Após finalizar a sessão de proctoring através do método finish você poderá consultar os dados de proctoring através da nossa API.
https://proctoring-api.easyproctor.tech/index.html
Em um bundler
`javascript
import { useProctoring } from "easyproctor";
const {
login,
start,
finish,
checkDevices,
capturePhoto,
checkPermissions,
enumarateDevices,
checkIfhasMultipleMonitors,
onFocus,
onLostFocus,
onChangeDevices,
onRealtimeAlerts,
onBufferSizeError,
onStopSharingScreen,
} = useProctoring({
examId: "00001",
clientId: "000001",
token: "...",
});
`
Via CDN: A função "useProctoring" é injetada para ser utilizada globalmente
`html
`
Exemplo completo
`html
Document
style="height: 100vh; display: flex; align-items: center; justify-content: center;"
>
API
`javascript
const {
// Inicia a gravação da prova
start,
// Finaliza a gravação da prova retornando os arquivos gerados
finish,
// Adiciona uma função callback para ser executada quando o usuário recupera o foco da tela
onFocus,
// Adiciona uma função de callback para ser executada quando ...
onBufferSizeError,
// Adiciona um função de callback para ser executada quando o usuário altera os dispositivos
onChangeDevices,
// Adiciona uma função callback para ser executada quando o usuário perde o foco da tela
onLostFocus,
// Adiciona uma função de callback para ser executada quando ocorrem alertas durante o exame
onRealtimeAlerts,
// Adiciona uma função callback para ser executada quando o usuário cancela o compartilhamento de tela
onStopSharingScreen
// Realiza uma captura de foto do usuário e a utiliza para fazer o resgistro ou login biométrico.
capturePhoto
// Checa se os dispositivos (câmera, microfone, stream da tela) estão funcionando corretamente
checkDevices,
// Checa se existe mais de um monitor
checkIfhasMultipleMonitors,
// Checa as permissões de camera e microfone
checkPermissions,
// Enumera os dispositivos de camera e microfone
enumarateDevices,
} = useProctoring({
examId: "00001",
clientId: "000001",
token: "...",
});
`
Release Note V 2.5.2
- Alteração do nome do callback 'onFinish' para 'onResultAvailable'
- Melhorias no proctoring do tipo REALTIME
Release Note V 2.5.1
- Novos atributos no callback de 'onFinish'
- scoreThreshold: limiar de aprovação da sessão de proctoring
- justification: em caso de reprovação, esse campo traz o resumo das irregularidades
Release Note V 2.5.0
- Callback de 'onFinish' no hook de finish que permite o acesso ao resultado da auditoria de forma imediata
- Melhorias no proctoring em tempo real
- Melhorias no monitoramento ativo durante o exame
- Novos tipos de alertas do onRealtimeAlerts:
- position_detection_on_stream:
- wrong_face_size_detected: Face muito perto da câmera, afaste-se um pouco mais
- wrong_face_position_edge_detected: Face muito próxima da borda, mova-se para o centro da tela
- wrong_face_position_move_right_detected: Face não centralizada, mova-se para a direita
- wrong_face_position_move_top_detected: Face não centralizada, mova-se para cima
- wrong_face_position_move_left_detected: Face não centralizada, mova-se para a esquerda
- wrong_face_position_move_bottom_detected: Face não centralizada, mova-se para baixo
Release Note V 2.4.0
- Compatibilidade com dispositivos móveis
Release Note V 2.3.3
- Correção do reset no startSession
Release Note V 2.3.2
- Melhorias no fluxo da câmera externa (reset e goToExternalCameraPositionStep)
Release Note V 2.3.1
- Implementação da funcionalidade de transmissão com câmera externa
Release Note V 2.3.0
- Implementação da funcionalidade de câmera externa (apenas checagem)
Release Note V 2.2.0
- Retry para stream iniciados com falhas
- Criação da janela para termo de consentimento
- Criação da funcionalidade de varredura de ambiente em busca de cameras espiãs
- Melhorias nos logs
Release Note V 2.1.1
- Escolha automatica do codec suportado (vp8/vp9)
- Não é mais obrigatório passar width e height no check devices
- Melhorias nos logs
Release Note V 2.1.0
- Criação do runCheckDevicesFlow que permite que o usuário receba a lógica do checkDevices() em um modal próprio
Release Note V 2.0.3
- Otimização na gravação de áudio removendo necessidade de download de scripts
Release Note V 2.0.2
- Tratamento para fechamento de streams
- console.log() configuravel
Release Note V 2.0.1
- Tratamento para duplo clique no checkDevices
- Ajuste de CORS no NoiseRecorder
Release Note V 2.0.0
- Remoção do script deprecated AudioProcessor
- Monitoramento ativo durante o exame
- Novos tipos de alertas do onRealtimeAlerts:
- audio_detection_on_stream
- face_detection_on_stream
- mobile_detection_on_stream
- person_detection_on_stream
- position_detection_on_stream
- Nova forma de gravação de áudio
- Remoção das funções pause() e resume()
- Análise de posicionamento da face no modal do checkDevices()
- Novas propriedades adicionadas no retorno do checkDevices():
`ts
{
allowedAmbient: boolean,
allowedMicrophone: boolean,
allowedPositionFace: boolean,
allowedResolution: boolean,
cameraId: string,
michophoneId: string,
volumeRange: number,
faceDetectionAlerts: { status: 'OK' | 'ALERT', type: string, description?: string },
result: boolean,
}
`
Release Note V 1.1.6
- - Adiciona o botão de cancelar captura no capturePhoto()`.