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

New Web Service mod_lesson_get_user_attempt

    XMLWordPrintable

Details

    • New Feature
    • Status: Closed
    • Minor
    • Resolution: Fixed
    • 3.2
    • 3.3
    • Lesson, Web Services
    • MOODLE_32_STABLE
    • MOODLE_33_STABLE
    • MDL-57757-master
    • Hide
      1. In a course create a lesson with at least two content pages and one question page. Enable multiple attempts in the lesson.
      2. Enrol one user as student and another as teacher in the course where the lesson is.
      3. Access to the lesson as student in the Moodle web interface, and complete the lesson.
      4. As admin, enable "Mobile services": Site administration ► Mobile app ► Mobile settings
      5. Create a Token for the teacher user
        • Click on Site administration ► Plugins ► Web services ► Manage tokens
      6. Next, you can do a CURL REST call simulating a WS client with the teacher user token.
        • You need to replace the wstoken, lessonid (the lesson instance value), userid (the student id)

          curl 'http://localhost/m/stable_master/webservice/rest/server.php?moodlewsrestformat=json' --data 'lessonid=11&wsfunction=mod_lesson_get_user_attempt&wstoken=a70d553bbaf6d9b260a9e5c701b3c46e&moodlewssettingfilter=true&userid=138&lessonattempt=0' | python -m "json.tool"

      7. Now check that the information returned match the one in the Moodle web interface (Lesson -> Reports -> Overview -> Go to the first attempt)
      8. Now, as student, do the lesson again (second attempt)
      9. Execute the WS again, changing the lessonattempt from 0 to 1 and check that the returned information match with the one in the Moodle web interface attempt report.
      Show
      In a course create a lesson with at least two content pages and one question page. Enable multiple attempts in the lesson. Enrol one user as student and another as teacher in the course where the lesson is. Access to the lesson as student in the Moodle web interface, and complete the lesson. As admin, enable "Mobile services": Site administration ► Mobile app ► Mobile settings Create a Token for the teacher user Click on Site administration ► Plugins ► Web services ► Manage tokens Next, you can do a CURL REST call simulating a WS client with the teacher user token. You need to replace the wstoken, lessonid (the lesson instance value), userid (the student id) curl 'http://localhost/m/stable_master/webservice/rest/server.php?moodlewsrestformat=json' --data 'lessonid=11&wsfunction=mod_lesson_get_user_attempt&wstoken=a70d553bbaf6d9b260a9e5c701b3c46e&moodlewssettingfilter=true&userid=138&lessonattempt=0' | python -m "json.tool" Now check that the information returned match the one in the Moodle web interface (Lesson -> Reports -> Overview -> Go to the first attempt) Now, as student, do the lesson again (second attempt) Execute the WS again, changing the lessonattempt from 0 to 1 and check that the returned information match with the one in the Moodle web interface attempt report.

    Description

      Get information for a finished attempt of a given user including user's answers (so a teacher can review a specific attempt)

      Attachments

        Issue Links

          Activity

            People

              jleyva Juan Leyva
              jleyva Juan Leyva
              Dani Palou Dani Palou
              David Monllaó David Monllaó
              Ankit Agarwal Ankit Agarwal
              Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved:
                15/May/17