This article expands upon advanced topics regarding LTI integration with Concourse. It is suggested that you review the main LTI article before continuing with this one. Additionally you will likely benefit from reading through a third article that covers LTI setup with your specific LMS.
Passing user and course identifiers is the most important step in working with LTI. As of May 2015 Concourse now only accepts the standard Learning Information Services (LIS) user and course identifiers in favor of utilizing integration middleware such as Apidapter to handle all mapping and formatting of launch parameters and values prior to reaching Concourse. Concourse then provides the following options for identification:
To determine what parameters are available from your LMS you can set a custom parameter of debug=1. Alternatively you can use Apidapter to log and review launches and uncover the data available to you. This platform will also be beneficial should you need to modify or add any data during the launch.
Ultimately you should try to pick an identification scheme that is consistent with other campus systems, such as your central authentication server and SIS.
LTI Context Role | Concourse Group |
Learner | Students |
Instructor | Instructors |
ContentDeveloper | Developers |
Member | - |
Manager | Managers |
Mentor | - |
Administrator | - |
TeachingAssistant | Assistants |
- | Guests |
- | Public |
If your Concourse LTI consumer is configured with both user and course ID's, a user will automatically be enrolled within the course according to this chart upon each LTI launch. That also means if the role of the user changes within the LMS course, their next launch will update their Concourse registration to utilize the new role.
If more than one context role is included the highest role is assumed. In order of descending priority this includes: Managers, Developers, Instructors, Assistants, Students, Guests, Public.
In cases where this is no equivalent group for the given context role, no enrollment will occur and the user will instead be shown the guest view.
The auto generation of user accounts is relatively straightforward, requiring only the user ID and their email. Concourse will also process the first and last names if available. However automatic course creation is more complex as LTI launches do not always include all the data parameters required for a new course.
There are other considerations regarding automatic creation. First and foremost you need to be sure that your configuration will lead to a lasting situation. It would be easy to pass the IDs (e.g. user_id and context_id) used by the LMS but should you ever be interested in tighter integration using feed processing your existing data will unfortunately not line up.
Further you may not have direct control over who is able to provision an account or course. Access will be determined by who can enter the LMS, what courses they are a part of, and with what role.
To get started with auto creation refer to the Creating Courses and Users Automatically via LTI article.
For a detailed guide to LTI errors and resolutions see the attached file. If after trying the suggestions in this guide you are still having trouble getting your LTI integration to work, don't hesitate to reach out.