Basic LTI Portlet - Supported providers

Supported providers

The following providers are supported out of the box. Included with each is a brief description of how each works, and working examples of some launch data you could use with each provider. Remember that no user specific data is to be included, this is all added automatically. So the launch data you provide can be very minimal.

Standard

This adapter is a no-op, it allows the parameters to pass through untouched. Unless your provider needs specific data, this is the recommended choice.

Launch data

endpoint_url=http://www.imsglobal.org/developers/BLTI/tool.php;;
context_id=some-site-123;;
some-param=some-value;;

This sends a request to the sample tool hosted by IMS Global. It allows any key, but assumes a secret of 'secret'. You can add any parameters to the launch data and the provider will see them.

Sakai

This adapter processes the launch data so that it is compliant with the format that the Sakai Basic LTI provider expects. Firstly, the endpoint_url parameter is suffixed with the tool_id. Next, an additional parameter is added, ext_sakai_provider_eid with value of the user_id. This tells the Sakai Basic LTI provider that it is to treat the supplied user_id as the eid, ie jsmith26. Ordinary calls expect this to be the actual internal UUID for the user, which is unknown to external applications without a web service call so we use the available data instead. The value if ~ for the context_id signals to the provider that the site we are requesting is the user's My Workspace site..

Launch data, example 1:

endpoint_url=https://your.sakai.server/imsblti/provider/;;
context_id=~;;
tool_id=sakai.resources;;

The above launch data will render the Resources tool from the user's My Workspace.

Launch data, example 2:

endpoint_url=https://your.sakai.server/imsblti/provider/;;
context_id=1c3ef5ac-bbee-4542-a2b9-d2be052b38e0;;
tool_id=sakai.rwiki;;

The above launch data will render the Wiki tool from the specified site. The current user must be a member of the site or the wiki must be public, or the request will fail.

Requirements:
  • The required logic for the Sakai Basic LTI provider was added in version 1.4 and ported back to 1.3. So if you are using an older version of Basic LTI you will need to upgrade to at least 1.3. If you are using Sakai 2.6, there is a patch included in the source tag of Basic LTI that you need to apply in order to get Basic LTI 1.3 running in Sakai 2.6 (there are a couple of API changes).
  • You should also enable the highly trusted consumers setting in sakai.properties. This allows the user_id and context_id to be used by the provider as-is. Under the standard configuration, the Sakai Basic LTI provider will prefix the incoming user_id and context_id, and create a new user account and site. This limits the level of integration possible as many users will have existing sites and content that can be reused outside of Sakai. You need to set the following property to allow the values to passthrough without this prefixing occurring:
    basiclti.provider.highly.trusted.consumers=my.consumer.key.here
    
  • If enabling highly trusted consumers (recommended) it assumes the username of users in both uPortal and Sakai are identical (e.g. jsmith26 in both systems).
  • The tool_id you can use is dictated by the list of allowed tools in sakai.properties. 

Overall, ensure you have correctly setup the Basic LTI provider in Sakai.

Peoplesoft

This adapter simply uppercases the user_id. This adapter is still in development and may change. We are in the process of developing the Basic LTI provider for Peoplesoft.

Launch data

endpoint_url=https://your.ps.server/path/to/provider;;
context_id=ANU_SS_EE_PSLP;;

The above launch data uses the context_id to send the Peoplesoft component that is to be rendered. You can get this from your Peoplesoft administrator.

Requirements:
  • Peoplesoft does not have a Basic LTI provider. We are writing it and will release it soon. It will be compatible with People Tools v8.4.8 and an update for v8.5.1 will be released later in the year.