Markdownで表示

SDKとライブラリ

Proctorioは、APIとの統合のための公式クライアントライブラリとツールを提供しています。

公式SDK

.NET SDK

C#アプリケーション向けのProctorio公式.NETクライアントライブラリです。

インストール

dotnet add package Proctorio.Client

またはPackage Manager経由:

Install-Package Proctorio.Client

リンク

要件:.NET 8.0以上


Observe.js

Observe.jsは、Proctorioの試験イベントをリアルタイムで監視するためのJavaScript SDKです。学習プラットフォームが試験管理中の主要なライフサイクルイベントをサブスクライブし、カスタムロジックを実装することを可能にします。

インストール

npm経由:

npm install @proctorio/observe

CDN経由:

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

使用方法

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

対応イベント

イベント説明
startExam監督付き試験が開始されたときに発火します
endExam試験が終了したときに発火します
flagsセキュリティフラグが検出されたときに発火します
proctorInterruptedライブ監督者が試験を中断しました
proctorResumed中断後に試験が再開されました
proctorKickoutライブ監督者により受験者が退出させられました
deskScanデスクスキャンが完了しました
breakStart受験者が休憩を開始しました
breakEnd受験者が休憩から戻りました

リンク


コード例

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