Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

The purpose of setting Avalon up as an LTI tool in an LMS is to offer course-specific access and customized content verified by the LMS. All a user would need to do to access course items is to log into their LMS, click on an external tool link, and then they will be redirected to Avalon. As part of the redirect, avalon gathers course and user information verified by Oauth. Using the course id, avalon customizes the landing page for the user to only show items listed for that course.

Set up Process

Add the LMS as an authentication provider

Anchor
authentication.yml
authentication.yml
The authentication settings for LTI are added to config/authentication.yml with the other authentication providers. A new parameter called "hidden" was added to keep the LTI provider from showing up at the log in screen. Here is an example LTI authentication config block: 

Code Block
- :name: Avalon LTI Oauth
  :provider: :lti
  :hidden: true
  :params:
    :oauth_credentials:
      key: 'secret'

The file There are more lti configuration options in config/lti.yml, which tells avalon where to look for user, class and lms information in the hash received from the LMS. These are the default values that are hard-coded into our version of the gem omniauth-lti. You'll only need the lti.yml if any of these values are different for your LMS.

Anchor
lti.yml
lti.yml

Code Block
---
<lms guid>:
  :uid: :user_id
  :email: :lis_person_contact_email_primary
  :context_id: :context_id
  :context_name: :context_label

...