1. Home
  2. Integrations
  3. Learning Tools Interoperability (LTI)

Learning Tools Interoperability (LTI)


Learning Tools Interoperability (LTI) is a standard protocol that allows modern Learning Management Systems (LMS) to interact with external applications, such as our video player. This communication enables the LMS to customize information within these external tools and, conversely, allows these applications to report user actions back to the LMS.

Our LTI integration streamlines this functionality directly within our Interactive Studio. For detailed instructions on leveraging this integration, please consult the information provided on this page.

1.0 | Embedding our player

To embed our player within your LTI powered LMS, you will need to perform the following steps:

  1. Go to the preview & embed page
  2. Select “LTI” as the Embed type
  3. Select the desired LTI integration type
    1. LTI Advantage
    2. LTI 1.3 Manual
  4. Select the desired Playout

1.1 | LTI 1.3 Advantage

If your LMS supports LTI Advantage, you will need to provide the Registration endpoint to the corresponding configuration field in your LMS. Please refer to the documentation of your LMS to find the relevant place to do so.

  1. Click on the “Copy” button below the the “Registration endpoint” field
  2. Navigate to the relevant section of your LMS and paste the Registration endpoint in the corresponding field.

1.2 | LTI 1.3 Manual

If your LMS supports LTI 1.3 Manual, you will need to provide several configuration fields to the corresponding configuration fields in your LMS. Please refer to the documentation of your LMS to find the relevant place(s) to do so.

  1. Click on the “Configure integration” button
  2. From the popup copy the values of the following configuration fields and paste them into the corresponding fields in your LMS:
    1. Tool URL
    2. Login URL
    3. Redirection URL
    4. Public key type
    5. Public keyset
  3. In your LMS, save the changes you just applied
  4. You should now be provided with the following configuration fields:
    1. Authentication URL
    2. Access token URL
    3. Public keyset URL
  5. Past these values in the corresponding configuration fields within the OVP
  6. Click on the “Finish integration” button 

2.0 | Communicating with LTI

Communicating with the LMS through LTI can be done by adding custom code to events to your timeline. You can add these custom code events to the OnShow, OnClick, OnHide and other actions.

  1. Open the Studio for the relevant clip, timeline or template
  2. Add a button with the label “Click me for a perfect score”
  3. Click on the “OnClick” button
  4. Click on the “+” button and select “run script”
  5. In the code editor, add 
    ltiClient.publishScore(75, 100);
    
  6. Save and publish your changes 
  7. Preview the changes within the LMS 

2.1 | Supported options

Below, you can find an overview of the currently supported options and how to call them from within the Studio.

2.1.1 | Grade a course

LTI allows you to grade a course by giving it a score out of a maximum score that can be configured within the LMS.

ltiClient.publishScore(75, 100);

You will need to provide the following properties:

  • A scoreGiven value for the grade that the user achieved
  • A scoreMaximum for the maximum grade for the course

You can configure the scoreMaximum within the LMS.

2.1.2 | activityProgress

You can update the progress of a course by updating the activityProgress value.

ltiClient.publishScore(100,100,'Completed');

Supported values for the activityProgress are:

  • Initialized
  • Started
  • InProgress
  • Submitted
  • Completed

Note: To update the activityProgress, you also need to provide a scoreGiven and scoreMaximum value.

2.1.3 | gradingProgress

You can update the grading progress of a course by updating the gradingProgress value.

ltiClient.publishScore(10,10,'Completed','FullyGraded');

Supported values for the gradingProgress are:

  • Pending
  • PendingManual
  • Failed
  • FullyGraded
  • NotReady

Note: To update the gradingProgress, you also need to provide a scoreGivenscoreMaximum and activityProgress value.

2.1.4 | Personalise a video

If you want to personalise the video, you can use the oidcClaims method by running the following script and saving the name of the user in local storage:

localStorage.setItem('bbtl_loggedInUser', ltiClient.oidcClaims.name);

Supported values to use in combination with the oidcClames method are:

  • name
  • givenName
  • familyName
  • email

If you’re not familiar with local storage, please refer to the support document on local storage: https://support.bluebillywig.com/interactivity/local-storage-ifthen-statements/

Was this article helpful?

Related Articles

Contact Support
Can't find the answer you're looking for?
Contact Support