ProctorEdu

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!

ProctorEdu Can Cover all Your Needs

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.

  • Exams Anywhere, Anytime
    Obtainable at any time with no scheduling. Thus, both educators and students can manage their time schedules more efficiently.
  • Zero Stress Proctoring
    Support is dedicated to help you through integration process, paying extra attention to data security and smooth scenarios.
  • Available Worldwide
    ProctorEdu supports Spanish, French, Arabic, Dutch, Greek, Turkish, Chinese, Portuguese, Latvian and Hebrew with more languages being added regularly.
  • Scalability
    99.95% of sessions with no downtime. Automated Proctoring allows us to accommodate your institution's requirements, irrespective of its size or where it is based.

Today you set it up, tomorrow you're ready to conduct exams!

What makes ProctorEdu unique

Online proctoring service with user-experience in mind.
Customized Experience
With both AI and live proctoring options we align to specific needs of Higher Education and Corporate domains.
Zero Stress
One of our KPIs is the passing rate, which reflects our ongoing efforts to increase the percentage of individuals who take a proctored test without encountering any critical issues. The last time we checked, we achieved an impressive passing rate of 99%.
AI tools detection
To prevent the use of AI extensions such as ChatGPT during online exams, ProctorEdu provides an assortment of proctoring tools.
Scalability
99.95% of sessions with no downtime. Automated Proctoring allows us to accommodate your institution's requirements, irrespective of its size or where it is based.
Security Matters
Proctor Edu handles data so that neither we nor anyone else can use it to harm the interests and rights of the end-users, such as the right to privacy.
Single Sign On
Allows a user to enter a login credentials one time on a single page to access system. Keeping even more data fully secure.
ProctorEdu and D2L Brightspace are official partners, transforming learning into your competitive edge. Together, we fuel growth, spark innovation, and drive learner success.

Instruction for Integration with D2L Brightspace LMS

1. How it works

Integration of the proctoring system and D2L Brightspace is performed through the External Learning Tool (LTI) and Supervisor SDK (JS proctoring library). First, you need to place the custom SDK code on one of the HTML pages in the LMS, and then configure the External Learning Tool in the course module to enter proctoring through the LMS.

2. Setting up a quiz element

In the course module, you must have created a Quiz element to which you want to connect proctoring.
Go to the “Content” section, enter the Quiz element and click the “Quiz Setup” button. In the settings in the right panel, in the “Availability Dates & Conditions” section, in the “Password” field, specify a custom password to restrict access to the element:

Next, you need to open this Quiz element and copy the URL from the browser’s address bar:

3. Upload the proctoring script

Next, you need to place a special script for launching proctoring on the course page. You will be redirected to this page after successful user authorization via LTI.
Save the code below to the “proctoring.html” file on your computer:

<!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>
Please note that in the script code you need to replace “your-proctoring-server” with the address of your proctoring server!

Go to the “Content” section and select “Upload / Create” > “Upload Files”:
In the “Add a File” dialog that opens, select the “proctoring.html” file from your computer and click the “Upload” button, and then the “Add” button:
After this, a new element “proctoring” (Web Page) will appear on the “Content” page of the course.

Go inside this element and copy the URL from the browser's address bar:

4. Creating an LTI Link

Now you need to add External Learning Tools to the course page through which participants can begin proctored testing.
Go to section “Course Administration > External Learning Tools” > “LTI Advantage Manage Tool Links (Legacy)” and press the button “New Link”:
In the dialog that opens, enter the following parameters:

  • Title: Proctoring (or any other name)
  • URL:
https://your-proctoring-server/api/auth/d2l?redirect=<proctoring.html>
where <proctoring.html> replace the full URL of the page from section 3, and your-proctoring-server with the domain of your proctoring server
  • Signature: Link key/secret
  • Key: LTI key from your proctoring server
  • Secret: LTI secret from your proctoring server
  • Custom Parameters (Name = Value)
template = default
members = @
url = <quiz_url>#12345

where <quiz_url> replace to the full URL of the quiz and “12345” to the quiz password from section 2

  • Security Settings: Use link security settings (check all options)

After filling in all the parameters, save the settings with the “Save” button.

Return to the “Content” section of the course and add a new element to the module using the “Existing Activities” > “External Learning Tools” button:
In the dialog that opens, select the previously created LTI Link:
After the “Proctoring” link is added to the course module, you will need to go to its settings through the “Edit properties in Place” menu and enable the “Open as External Resource” checkbox:

4. Starting a proctoring session

After these steps, you will have at least three elements in your course module:
  1. Quiz - the test itself, access to which is locked with a password.
  2. proctoring (Web Page) - the service page “proctoring.html” with a proctoring launch script (does not open directly).
  3. Proctoring (External Learning Tools) - external tool page for launching a proctoring session.
The learner should begin taking the proctored test by clicking on the “Proctoring (External Learning Tools)” link. If a user with a different role (for example, administrator or teacher) clicks on this link, they will be taken to the monitoring interface for all sessions that were started by learners using the same link.

6. Setting up the proctoring server

To connect the integration API with D2L, you need to load the following config with integration parameters under the proctoring system manager:

"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": {}
  }
The “consumerKey” and “consumerSecret” fields must be replaced with randomly generated characters and kept secret.

CONTACT US

Want to get a free demo of our product?
Fill out the form below, and we'll contact you shortly.

Follow us