Enriching LMS Content from the Institutional Subscription via Muse Proxy with LTI
Overview
eLearning is widely regarded as mainstream nowadays, it is a service offered by most colleges and universities and the core of many business plans. The main tool for eLearning is the Learning Management System (LMS), which is a software application or web-based technology used to plan, implement and assess a specific learning process.
Some popular LMSes used by educational institutions include Moodle, Blackboard, Atutor, Sakai and Canvas.
Learning Tools Interoperability (LTI) is a standard developed by the IMS Global Learning Consortium and it specifies a method for a learning system to invoke and to communicate with external systems. A LMS may use LTI to host course content and tools provided by external systems on a web site, without requiring a learner to log in separately on the external systems, with information about the learner and the learning context shared by the LMS with the external systems.
LTI launch requests can be used to include a Muse Proxy Application or proxified source directly within the Learning Management System (LMS) as an External Tool. This mechanism enables teachers to enhence the lessons by adding online content from the institution's electronic subscriptions.
Once a user is authenticated to the LMS (s)he can access a Muse Proxy Application or source being defined as an External Tool. Muse Proxy acts as a Tool Provider.
This article describes the integration of publisher subscribed content into LMS via Muse Proxy, based on LTI. For exemplification we used the Canvas LMS, a self hosted demonstration instance.
Muse Proxy supports LTI 1.3 Authentication and the legacy LTI 1.0, as a Tool. The configuration of LTI in Muse Proxy is not covered here, the complete instructions are available in the Muse Proxy Administrator Console, Configuration -> LTI 1.3 Authentication menu.
Settings to be done in Canvas
After finalizing the LTI configuration in Muse Proxy, an URL of the below form must be saved, to be used in Canvas:
https://proxy.domain.com/ssoRWP3/config/{ApplicationID}/instance/0/canvas.json
where {ApplicationID} must be replaced with the actual identifier of the Muse Proxy Application.
Using this JSON URL, the administrator of the institution must create a new LTI key in Canvas. This is done from Admin > Site Admin > Developer Keys > + Developer Key > + LTI Key.
Under Configure > Method, choose Enter URL, and paste the Canvas Config URL from the previous step into the JSON URL field. Then click Save.
After clicking Save, on success the key is created and the interface returns to the key table.
Go to another page and return to Developer Keys, otherwise the Edit section might be empty. Then you should chose the recently added key and edit it to add a Key Name, Owner email and eventually Notes - these fields are there for future admin reference - there are no rules on how to fill in these. If, for some reason, such as SSL certificates errors the connection to the JSON URL cannot be realised, then choose Paste JSON, obtain the above JSON in another browser tab and copy and paste it there.
Then, back to the Developer Key table, change the state of the Tool to from OFF to ON. Also, make it visible by pressing the eye icon. After ticking the state label and the eye icon to change the state and the visibility do not use the Edit this key section directly.
Get the value for the client-id from the Developers Keys table from the Details column. It is the value directly visible in the table (not the one under Show Key). Modify the lti.properties from Muse Proxy to have the correct client-id value instead of the placeholder value, for example:
lti.clients.MuseProxyFoundation.definitions[0].client-id=10000000000043
To make available the Muse Proxy tool in Canvas go to the Account/Sub-account/Course, and click Settings > Apps > + App. Choose By Client ID as configuration type and enter the Client ID of the Developer Key created above.
Canvas Placements
The Placements available for Muse Proxy tools require new window, due to all the browser security. However, for selecting and embedding a link (Deep Linking), the Muse Proxy Application is still launched inside an iframe so make sure the corresponding iframe related security HTTP headers are correctly set/unset. Also, make sure the browser used for embedding links is configured to support third-party cookies (Safari does not have an explicit option for this, rather deselect "Prevent cross-site tracking").
- Account Navigation - this will automatically open the Muse Proxy Application in a new window from the navigation menu of the account.
- Course Navigation - this will automatically open the application in a new window, from the navigation menu of the course.
- Editor Button - This allows for the Muse Proxy Application tool to be invoked in Rich Content Editors in order to insert a proxified source. This requires the Muse Proxy Application to be embedded as an iframe for selecting the resource. Then, the end-user, when clicking in the content of the page will have the proxy source always opened in a new page. Do not alter the Muse Proxy URL after adding it. Not all the parameters are visible in Canvas.
After clicking the button:
After selecting a Muse Proxy source from the Muse Proxy Application:
- Link Selection - This makes possible to add direct proxified sources in modules. After selecting the Muse Proxy source, always check the Load in a new tab. Do not alter the Muse Proxy URL after adding it, because it is based on Deep Linking and parameters are managed behind by the platform. Embedd a Link Resource from the Muse Proxy External Tool:
And the link listing in the module:
Conclusion
The LTI integration in Muse Proxy offers a powerfull extension for LMSes and enables the content creators (e.g. teachers) to add unlimited resources from the institutional subscriptions to their learning content (courses, modules, etc.).