Integration with D2L Brightspace LMS
Brightspace by D2L is an innovative online learning platform that transforms the educational experience. With its intuitive interface and powerful content creation tools, Brightspace helps educators and students interact more effectively. The platform supports personalized learning, allowing each student to learn at their own pace and in their own style. Brightspace also ensures high levels of security and data privacy, making it a reliable choice for educational institutions worldwide. With Brightspace, learning becomes engaging and impactful!
Exclusive exam integrity features of proctoring software have been proven to be helpful at any type of the Corporate Online Assessment or Higher Education Exams.
Instruction for Integration with D2L Brightspace LMS
1. How it works
2. Setting up a quiz element
3. Upload the proctoring script
<!DOCTYPE html>
<html>
<head></head>
<body>
<p>There is nothing here. This is a service page for proctoring.</p>
<script>
(function () {
var PROCTORING_SERVER = 'https://your-proctoring-server';
var w = window.parent;
var script = w.document.createElement('script');
script.setAttribute('src', `${PROCTORING_SERVER}/sdk/supervisor.js`);
script.setAttribute('data-supervisor', 'start');
w.document.body.appendChild(script);
w.document.body.style.overflow = 'hidden';
script.onload = function() {
if (w.supervisor) {
w.supervisor.on('load', function(iframe) {
var hash = new URL(iframe.src).hash.slice(1);
var d = iframe.contentDocument;
d.querySelectorAll('iframe').forEach(function (subframe) {
var input = subframe.contentDocument.querySelector(
'input[type="password"]'
);
if (input) input.value = hash;
subframe.addEventListener('load', function() {
var pathname = subframe.contentWindow.location.pathname;
if (pathname === '/d2l/lms/quizzing/user/quiz_submissions.d2l') {
w.supervisor.stop().then(function () {
return w.supervisor.logout({ redirect: true });
});
}
}, false);
});
});
}
};
})();
</script>
</body>
</html>
4. Creating an LTI Link
4. Starting a proctoring session
6. Setting up the proctoring server
"params": {
"webhooks": {
"d2l": {
"authorizer": "lti",
"integrator": "lti",
"consumerKey": "demo",
"consumerSecret": "secret",
"callbackURL": "query.redirect",
"profile": {
"username": "payload.user_id",
"role": "payload.roles.find(v=>/Instructor/.test(v))?'proctor':'student'",
"nickname": "payload.lis_person_name_full",
"lang": "(payload.launch_presentation_locale||'').slice(0,2)",
"group": "['G',payload.context_id,payload.resource_link_id].join('-')",
"referrer": "payload.launch_presentation_return_url",
"labels": "payload.lis_person_contact_email_primary"
},
"register": {
"identifier": "[payload.user_id,payload.context_id,payload.resource_link_id].join('-').replace(/[^A-Za-z0-9_-]+/g,'_')",
"template": "payload.custom_template||'default'",
"subject": "payload.resource_link_title",
"members": "payload.custom_members==='@'?user.group:payload.custom_members",
"url": "payload.custom_url||payload.launch_presentation_return_url",
"tags": "payload.lis_person_contact_email_primary"
},
"start": true,
"stop": true,
"submit": true,
"pause": true
}
},
"rest": {},
"sdk": {}
}
| |