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

New Web Service mod_resource_view_resource

    XMLWordPrintable

Details

    • New Feature
    • Status: Closed
    • Minor
    • Resolution: Fixed
    • 2.9
    • 3.0
    • Web Services
    • MOODLE_29_STABLE
    • MOODLE_30_STABLE
    • MDL-49792-master
    • Hide

      Note: Version number is bumped because a new web service is added into the Mobile app service and to the mod_resource list of external functions.

      1. Create a course with a student, the course must have at least one section.
      2. Enable completion at site level and course level.
      3. Create a mod_resource (file) resource, use as completion criteria "Student must view this activity to complete it"
      4. Log in as the student and visit the file
      5. Log in as teacher and check that the activity is marked as completed by the student and that the student action generated a new entry in the logs (reports -> logs)
      6. As admin, enable "Mobile services": Plugins ► Web Services ► Mobile
      7. Create a Token for the student user
        • Click on Site administration ► Plugins ► Web services ► Manage tokens
      8. Next, you can do a CURL REST call simulating a WS client with the student user .
        • You need to replace the wstoken, resourceid (the resource instance value) and the URL of your moodle instance

          curl 'http://localhost/m/stable_master/webservice/rest/server.php?moodlewsrestformat=json' --data 'resourceid=4&wsfunction=mod_resource_view_resource&wstoken=a70d553bbaf6d9b260a9e5c701b3c46e' --compressed

      9. Confirm that
        • You can see new entries in the course log (file course module viewed) for that course and the user. The origin for the new log entries is "ws"
        • If you access via the web interface you will see the activity marked as completed, if you access the resoure via the web interface with the student you will see log entries with origin "web" (file course module viewed)
          NOTE: If you don't see the activity marked as completed you should logout and login again, Moodle session cache sometimes does not upgrade the completion status for activities.
      Show
      Note: Version number is bumped because a new web service is added into the Mobile app service and to the mod_resource list of external functions. Create a course with a student, the course must have at least one section. Enable completion at site level and course level. Create a mod_resource (file) resource, use as completion criteria "Student must view this activity to complete it" Log in as the student and visit the file Log in as teacher and check that the activity is marked as completed by the student and that the student action generated a new entry in the logs (reports -> logs) As admin, enable "Mobile services": Plugins ► Web Services ► Mobile Create a Token for the student user Click on Site administration ► Plugins ► Web services ► Manage tokens Next, you can do a CURL REST call simulating a WS client with the student user . You need to replace the wstoken, resourceid (the resource instance value) and the URL of your moodle instance curl 'http://localhost/m/stable_master/webservice/rest/server.php?moodlewsrestformat=json' --data 'resourceid=4&wsfunction=mod_resource_view_resource&wstoken=a70d553bbaf6d9b260a9e5c701b3c46e' --compressed Confirm that You can see new entries in the course log (file course module viewed) for that course and the user. The origin for the new log entries is "ws" If you access via the web interface you will see the activity marked as completed, if you access the resoure via the web interface with the student you will see log entries with origin "web" (file course module viewed) NOTE: If you don't see the activity marked as completed you should logout and login again, Moodle session cache sometimes does not upgrade the completion status for activities.

    Description

      Trigger the module view event and update completion status

      Attachments

        Issue Links

          Activity

            People

              jleyva Juan Leyva
              jleyva Juan Leyva
              Ankit Agarwal Ankit Agarwal
              Andrew Lyons Andrew Lyons
              Jun Pataleta Jun Pataleta
              Juan Leyva, Amaia Anabitarte, Carlos Escobedo, Ferran Recio, Ilya Tregubov, Laurent David, Raquel Ortega, Sara Arjona (@sarjona)
              Votes:
              0 Vote for this issue
              Watchers:
              3 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved:
                16/Nov/15