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.
name | description | default 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 | |
lti_ssl_verifypeer | enable/disable peer verification on ssl | 1 |
lti_ssl_verifyhost | enable/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
- Name - internal to rogo to differentiate between keys in a human readable way
- 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.
- 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:
- Is LTI valid?
- Does oauth_consumer_key match?
- Does secret match?
- Does context match?
- If student:
- If there is no resource configured (i.e. link to paper) then exit.
- If module is self-enrol and student not on it then add them to the module.
- Redirect student to the paper.
- If staff (instructor):
- Do we have a valid resource?
- If member of staff is not on the module and registration is allowed add them to the module.
- If member of staff is not on the module and registration is not allowed then exit.
- Redirect staff to the paper.
- 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).
- Do we have a valid resource?
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:
- Formative
- Progressive
- Survey
- 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_context | Holds the link information between lti context and the Rogo course. |
lti_keys | Holds the LTI keys information. |
lti_resource | Holds the link information between lti resourse and the Rogo paper. |
lti_user | LTI Holds the link information between the LTI user and the Rogo user ID. |