Learning Technology Integration (LTI)

LTI version

Rogo supports LTI version 1.1

LTI Launching

To enable LTI capability the authentication array in /config/config.inc.php must be set:

$authentication = array(
  array('ltilogin', array(), 'LTI Auth'),


Configuration of the LTI integration is possible via the rogo configuration screen.

namedescriptiondefault value
Allow LTI client to create a module in Rogo if it does not exist.Disabled
Allow a student user in the LTI client to self register onto a module in Rogo.Disabled
Alloe a staff user in the LTI client to join a module team in Rogo.Disabled

Lifetime (in seconds) of LTI login authentication.9072000

LTI type:

  • default - generic LTI integration
  • UoN - University of Nottingham specific integration
default
lti_ssl_verifypeerenable/disable peer verification on ssl1
lti_ssl_verifyhostenable/disable host verification on ssl (note 0 disables, 2 enables, 1 is deprecated in curl lib)2

External System

To link to an external system a key needs to be setup in Administration > LTI Keys

At minimum the following needs to be provided

  1. Name - internal to rogo to differentiate between keys in a human readable way
  2. Shared Secret - think of this as the password for the connection. this should be unique and be provided to the external client system as they will need it to connect.
  3. Consumer Key - think of this as the username for the connection. this should be unique and be provided to the external client system as they will need it to connect.


The external system will also need the URL it is to connect to this is <your rogo site>/LTI/

User Journey

Steps taken when LTI launch is detected:

  1. Is LTI valid?
  2. Does oauth_consumer_key match?
  3. Does secret match?
  4. Does context match?
  5. If student:
    1. If there is no resource configured (i.e. link to paper) then exit.
    2. If module is self-enrol and student not on it then add them to the module.
    3. Redirect student to the paper.
  6. If staff (instructor):
    1. Do we have a valid resource?
      1. If member of staff is not on the module and registration is allowed add them to the module.
      2. If member of staff is not on the module and registration is not allowed then exit.
      3. Redirect staff to the paper.
    2. Present list of papers for staff to link to the LTI link. (Students will not be able to use the LTI link until this step is complete).

Marks return

Marks are returned to LTI consumer tool in the display_summary() function within /include/finish_functions.inc. Function that is called to send the grade is send_grade($grade).

Paper Types

The following paper types are supported via an LTI integration:

  1. Formative
  2. Progressive
  3. Survey
  4. OSCE


Unlink User accounts

It may be necessary to unlink a user from the external system to their account in Rogo.

This can be done by going to Administration > LTI Keys selecting the LTI connection then selecting Search LTI user links once found the user connection can be deleted. This will force the user to login in again to rogo the next time they attempt to connect to Rogo via the external system.


Database Tables

lti_contextHolds the link information between lti context and the Rogo course.
lti_keysHolds the LTI keys information.
lti_resourceHolds the link information between lti resourse and the Rogo paper.
lti_userLTI Holds the link information between the LTI user and the Rogo user ID.