Support for Caliper - How Caliper Works with Kaltura Extensions and KAF

What is Caliper?

IMS Global has developed a standard that allows you to collect analytics from different locations into one repository, in most cases the LMS.  To read more about Caliper, visit the IMS global page.

Sending KAF Analytics to the LMS via Caliper

The Caliper module is available in the KAF Administration Page that allows administrators to send KAF analytics in the Caliper standard. Please reach out to Kaltura Customer Care or your CSM to request that the Caliper module be enabled in your KAF Administration Page.

After the Caliper Module is enabled, the following three fields are preset and designed to work out of the box with the LMS’s LTI workflows: 

Field

Value

Description

CaliperAccessServiceUrlParam

custom_caliper_profile_url

LTI attribute that contains the URL of the Caliper Access Service on the Tool Consumer.

CaliperFederatedSessionIdParam

 

custom_caliper_federated_session_id

LTI attribute that contains Federated Session ID value.

EventStoreAuthorizationScheme

 

no-scheme

Set the authorization scheme that will be set in the value of the Authorization header. The default is 'no-scheme’, which means that the header value is the API key received from the Caliper Profile Service.

 

Not all LMSs support the collection or display of Caliper metadata.

Sending the Caliper Analytics to an LRS

Kaltura supports the ability to send the Caliper data to a LRS (Learning Record Store) directly instead of sending the data to the LMS.

When you want to use Caliper, your LMS does not provide Caliper information dynamically in the LTI launch (in the form of custom_caliper_service_url parameter). You can configure the Caliper Module in KAF to send Caliper events to a static Caliper endpoint in your LRS using a one-time API key.

To do so, set the ‘directCaliperIntegrationEnable’ to “YES” to send the metadata directly to an LRS and provide values for the following 3 fields:

Field

Description

CaliperEventUrl

The URL in your LRS that accepts Caliper.

eventsCaliperApiToken

API Key to use when sending Caliper events to the LRS.

CaliperSensorId

Sensor ID to set in the Caliper events, if needed.

Please contact your LRS representative and ask them to provide you with the required information. 

Does the Caliper Module work with Kaltura MediaSpace?

No, the Caliper Module is not available for KMS. The Caliper Module depends on the ‘Hosted’ module which is only available in KAF. 

Capturing Caliper Events in the Kaltura Player

Kaltura captures the following events that occur in the Kaltura Player as part of the Caliper integration:

  1. Play – When the user selects play and the player starts.
  2. Pause – When the user pauses the video.  
  3. Resume – When the user resumes the playback. 
  4. End – When the user reaches the end of the video
  5. Still Watching (this is a custom event) - Captures the percentage watched. The values are  25/50/75% quarters of the video. The value is sent on the "kaf:watch_percentage" extension in the Caliper message. The "kaf:watch_percentage" extension is also sent in the "End" action/event with the value of 100.

In addition,the following information is sent for each event:

  • User ID
  • Context ID
  • Name
  • Description
  • Creation date of the entry
  • Modified date of the entry
  • Date of the event
  • Video duration
  • For the Pause event: The time in the video that the Pause occurred (in Caliper terminology - Media Location).
  • For the Resume event: The time in the video that the Resume occurred (in Caliper terminology - Media Location).

Capturing Caliper Events for Video Quizzes

Quiz events are sent in addition to player events. The Caliper module may be used in conjunction with the Quiz module. 

Kaltura captures the following events that occur in Video Quizzes as part of the Caliper integration:

  1. Event: Quiz started 
    1. By which user? 
    2. Quiz type
      1. The number of attempts users are allowed on this quiz
      2. Is scrubbing allowed? Yes or No
      3. How is the score being calculated? Type
      4. Is the user allowed to change answers? Yes or No
    3. Quiz creator
  2. Event: Question X answered with answer Y (on attempt Z)
    1. Question
      1. Type of question
      2. Index in the total of all questions
      3. Question text 
    2. Answer Y (In the case of a Reflection point; "passed")
    3. Attempt Z - What attempt is this out of the total number of attempts?
  3. Event: Quiz submitted
    1. Quiz results
  4. Event: Quiz retake (another attempt was taken)
In This Article
Was this article helpful?
Thank you for your feedback!