SDKs y bibliotecas
Proctorio ofrece bibliotecas cliente y herramientas oficiales para la integración con la API.
SDKs oficiales
SDK de .NET
La biblioteca cliente oficial de Proctorio para .NET en aplicaciones C#.
Instalación
dotnet add package Proctorio.Client O a través del administrador de paquetes:
Install-Package Proctorio.Client Enlaces
Requisitos: .NET 8.0 o superior
Observe.js
Observe.js es un SDK de JavaScript para monitorear eventos de exámenes de Proctorio en tiempo real. Permite a las plataformas de aprendizaje suscribirse a eventos clave del ciclo de vida durante la administración de exámenes e implementar lógica personalizada.
Instalación
A través de npm:
npm install @proctorio/observe A través de CDN:
<script src="https://cdn.jsdelivr.net/npm/@proctorio/observe@1/lib/index.min.js"></script> Uso
import { Observe } from '@proctorio/observe';
const observe = new Observe();
// Listen for exam start
observe.startExam((data) => {
console.log('Exam started at offset:', data.offset);
});
// Listen for security flags
observe.flags((data) => {
console.log('Security flags detected:', data.flagsData);
});
// Listen for exam end
observe.endExam((data) => {
console.log('Exam ended at offset:', data.offset);
});
// Listen for live proctor events
observe.proctorInterrupted((data) => {
console.log('Exam interrupted at offset:', data.offset);
}); Eventos compatibles
| Evento | Descripción |
|---|---|
startExam | Se activa cuando comienza el examen supervisado |
endExam | Se activa cuando finaliza el examen |
flags | Se activa cuando se detectan alertas de seguridad |
proctorInterrupted | El supervisor en vivo interrumpió el examen |
proctorResumed | El examen se reanudó tras la interrupción |
proctorKickout | Candidato eliminado por el supervisor en vivo |
deskScan | Escaneo del escritorio completado |
breakStart | El candidato inició una pausa |
breakEnd | El candidato regresó de la pausa |
Enlaces
Ejemplos de código
cURL
curl -X POST https://us1.proctorapi.com/v2/candidate/launch \
-H "api_key: YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d @request.json Python (requests)
import requests
response = requests.post(
"https://us1.proctorapi.com/v2/candidate/launch",
headers={"api_key": "YOUR_API_KEY"},
json=payload
)
candidate_url = response.json() Node.js (fetch)
const response = await fetch("https://us1.proctorapi.com/v2/candidate/launch", {
method: "POST",
headers: {
"api_key": process.env.PROCTORIO_API_KEY,
"Content-Type": "application/json"
},
body: JSON.stringify(payload)
});
const candidateUrl = await response.json(); C# (HttpClient)
using var client = new HttpClient();
client.DefaultRequestHeaders.Add("api_key", apiKey);
var content = new StringContent(json, Encoding.UTF8, "application/json");
var response = await client.PostAsync(
"https://us1.proctorapi.com/v2/candidate/launch", content);
var candidateUrl = await response.Content.ReadAsStringAsync();