This demo shows how to integrate the Proview into your application.
// Initialize Proview
const config = {
dsn: "your-dsn-here",
attendee_identifier: "optional-attendee-id",
workflow_identifier: "optional-workflow-id",
};
// Initialize and get success status
const success = await Proview.init(config);
if (success) {
console.log("Proview initialized successfully!");
}
// Set attendee information
Proview.setAttendee({
identifier: "attendee-identifier", // Required
first_name: "John", // Optional
last_name: "Doe", // Optional
email: "john.doe@example.com", // Optional
phone: "+1-555-123-4567", // Optional
country: "United States" // Optional
});
// Set workflow information
Proview.setWorkflow({
identifier: "workflow-identifier", // Required
name: "Demo Exam", // Optional
proctoringType: "REMOTE_INVIGILATION", // Required
flow_id: 123 // Optional
});
// Get current locale
const currentLocale = Proview.getLocale();
console.log("Current locale:", currentLocale);
// Set language
const effectiveLanguage = Proview.locale.setLanguage("es");
console.log("Language set to:", effectiveLanguage);
// Limit available languages
Proview.locale.limitLanguages(["en", "es", "fr"]);
// Get available languages
const languages = Proview.locale.getLanguages();
console.log("Available languages:", languages);
// Start a session
Proview.session.start((result) => {
console.log("Session started:", result);
});
// Stop a session
Proview.session.stop((result) => {
console.log("Session stopped:", result);
});
// Complete a session
Proview.session.complete((result) => {
console.log("Session completed:", result);
});
// Pause a session
Proview.session.pause((result) => {
console.log("Session paused:", result);
});
// Resume a session
Proview.session.resume("Resume reason", (result, error) => {
if (error) {
console.error("Failed to resume:", error);
return;
}
console.log("Session resumed:", result);
});