Weergeven als Markdown

SDKs en bibliotheken

Proctorio biedt officiële clientbibliotheken en tools voor integratie met de API.

Officiële SDKs

.NET SDK

De officiële Proctorio .NET-clientbibliotheek voor C#-toepassingen.

Installatie

dotnet add package Proctorio.Client

Of via Package Manager:

Install-Package Proctorio.Client

Links

Vereisten: .NET 8.0 of hoger


Observe.js

Observe.js is een JavaScript SDK voor het realtime monitoren van Proctorio-examengebeurtenissen. Het stelt leerplatformen in staat om zich te abonneren op belangrijke levenscyclusgebeurtenissen tijdens het afnemen van examens en aangepaste logica te implementeren.

Installatie

Via npm:

npm install @proctorio/observe

Via CDN:

<script src="https://cdn.jsdelivr.net/npm/@proctorio/observe@1/lib/index.min.js"></script>

Gebruik

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);
});

Ondersteunde gebeurtenissen

GebeurtenisBeschrijving
startExamWordt geactiveerd wanneer het gesuperviseerde examen begint
endExamWordt geactiveerd wanneer het examen eindigt
flagsWordt geactiveerd wanneer beveiligingswaarschuwingen worden gedetecteerd
proctorInterruptedLive supervisor heeft het examen onderbroken
proctorResumedExamen hervat na onderbreking
proctorKickoutKandidaat verwijderd door live supervisor
deskScanBureauscan voltooid
breakStartKandidaat is begonnen met een pauze
breakEndKandidaat is teruggekeerd van pauze

Links


Codevoorbeelden

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();