Als Markdown anzeigen

SDKs und Bibliotheken

Proctorio bietet offizielle Client-Bibliotheken und Tools für die Integration mit der API.

Offizielle SDKs

.NET SDK

Die offizielle Proctorio .NET-Client-Bibliothek für C#-Anwendungen.

Installation

dotnet add package Proctorio.Client

Oder über den Package Manager:

Install-Package Proctorio.Client

Links

Anforderungen: .NET 8.0 oder höher


Observe.js

Observe.js ist ein JavaScript SDK zur Echtzeitüberwachung von Proctorio-Prüfungsereignissen. Es ermöglicht Lernplattformen, wichtige Lebenszyklusereignisse während der Prüfungsdurchführung zu abonnieren und benutzerdefinierte Logik zu implementieren.

Installation

Über npm:

npm install @proctorio/observe

Über CDN:

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

Verwendung

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

Unterstützte Ereignisse

EreignisBeschreibung
startExamWird ausgelöst, wenn die beaufsichtigte Prüfung beginnt
endExamWird ausgelöst, wenn die Prüfung endet
flagsWird ausgelöst, wenn Sicherheitswarnungen erkannt werden
proctorInterruptedLive-Aufsicht hat die Prüfung unterbrochen
proctorResumedPrüfung nach Unterbrechung fortgesetzt
proctorKickoutKandidat wurde von der Live-Aufsicht entfernt
deskScanSchreibtischscan abgeschlossen
breakStartKandidat hat eine Pause begonnen
breakEndKandidat ist von der Pause zurückgekehrt

Links


Codebeispiele

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