Uploaded image for project: 'Moodle'
  1. Moodle
  2. MDL-55898

LTI Memberships service needs updating

    XMLWordPrintable

    Details

    • Type: Bug
    • Status: Development in progress
    • Priority: Minor
    • Resolution: Unresolved
    • Affects Version/s: 3.0.6, 3.1
    • Fix Version/s: None
    • Labels:
    • Database:
      Any
    • Testing Instructions:
      Hide
      Before upgrade
      1. Before adding the updated service code, set up an LTI 2 connection to http://ltiapps.net/test/tp.php and ensure the Person.name.full capability and the Memberships service (both ToolProxyBinding and LtiLink level) are included in the tool proxy
      2. Add a link to this tool in a course with a custom parameter of "name=$Person.name.full"
      3. Launch the link and use the Memberships tab to verify that the old service is working: Copy the responses to a text editor or screenshot them or keep the tab open so you can compare later
        1. select the Context endpoint and click on the "Read" button;
        2. select the Link endpoint and click on the "Read" button - note that the response will not include a custom element but will include the resultSourcedId element
      After upgrade
      1. Upgrade your instance so you have the new Membership service sub-plugin, and visit the Moodle admin Notifications area to complete the upgrade
      2. Return to the course and relaunch the LTI link and check both of the Membership service requests are still working and returning the same responses
      3. Set up an LTI 2 connection to http://lti.tools/test/tp.php in the same course as before and ensure the Person.name.full capability and the Membership service are included in the tool proxy
      4. Add a link to this tool in a course with a custom parameter of "name=$Person.name.full"
      5. Launch the link and use the Membership tab to verify that the new service is working:
        1. with the "Filter by resource link?" checkbox unchecked, click on the "Read" button - note that the response will be identical to the old service;
        2. with the "Filter by resource link?" checkbox checked, click on the "Read" button - note that the response will include a message element containing a custom element with an element named "name" having a value of the user's full name and also a lis_result_sourcedid element.
      Show
      Before upgrade Before adding the updated service code, set up an LTI 2 connection to http://ltiapps.net/test/tp.php and ensure the Person.name.full capability and the Memberships service (both ToolProxyBinding and LtiLink level) are included in the tool proxy Add a link to this tool in a course with a custom parameter of "name=$Person.name.full" Launch the link and use the Memberships tab to verify that the old service is working: Copy the responses to a text editor or screenshot them or keep the tab open so you can compare later select the Context endpoint and click on the "Read" button; select the Link endpoint and click on the "Read" button - note that the response will not include a custom element but will include the resultSourcedId element After upgrade Upgrade your instance so you have the new Membership service sub-plugin, and visit the Moodle admin Notifications area to complete the upgrade Return to the course and relaunch the LTI link and check both of the Membership service requests are still working and returning the same responses Set up an LTI 2 connection to http://lti.tools/test/tp.php in the same course as before and ensure the Person.name.full capability and the Membership service are included in the tool proxy Add a link to this tool in a course with a custom parameter of "name=$Person.name.full" Launch the link and use the Membership tab to verify that the new service is working: with the "Filter by resource link?" checkbox unchecked, click on the "Read" button - note that the response will be identical to the old service; with the "Filter by resource link?" checkbox checked, click on the "Read" button - note that the response will include a message element containing a custom element with an element named "name" having a value of the user's full name and also a lis_result_sourcedid element.
    • Workaround:
      Hide

      None - or do not offer the service.

      Show
      None - or do not offer the service.
    • Difficulty:
      Easy
    • Affected Branches:
      MOODLE_30_STABLE, MOODLE_31_STABLE
    • Pull Master Branch:

      Description

      The LTI Memberships service in Moodle is based on a public draft of the IMS specification which changed late on. Thus, the Moodle implementation needs to be updated to reflect the changes:

      • name changed to "Membership service" (singular)
      • LtiLink.memberships.url variable dropped - link-level memberships now use a query parameter on the context-level URL
      • any ext_ or custom_ parameters which would be included in a launch message and contain data about the user should also be included in the payload for link-level requests

        Attachments

          Issue Links

            Activity

              People

              • Assignee:
                svickers Stephen Vickers
                Reporter:
                svickers Stephen Vickers
                Participants:
                Component watchers:
                Adrian Greeve, Jake Dallimore, Mathew May, Mihail Geshoski, Peter Dias
              • Votes:
                4 Vote for this issue
                Watchers:
                4 Start watching this issue

                Dates

                • Created:
                  Updated: