Quiz workflow notifications

Quiz workflow notifications

by Brendon Hatcher -
Number of replies: 11

Hi

I am using Moodle 3.6.3.

I set up a quiz.

The quiz contains essay questions, which require manual grading.

My idea workflow is:

  1. Student takes the quiz and submits it
  2. They receive an email notification confirming receipt, and telling them they will get their grade once it has been manually marked
  3. The course instructor receives a "grading required" email notification
  4. They grade the quiz and save the final result
  5. The student gets an email notification that their final grade is ready
  6. If they pass, they get a bade and a certificate
  7. They receive an email notification of the badge and an email notification of the certificate

I have everything working except the notifications.  Can someone comment on how to achieve these?

Thanks

Brendon

Average of ratings: -
In reply to Brendon Hatcher

Re: Quiz workflow notifications

by Joost Elshoff -
Picture of Particularly helpful Moodlers Picture of Testers

Hi Brendon,

As I'm reading what you're looking for, I can't stop to think you want mod_quiz (Quiz) to behave like mod_assign (Assignment), which has all of the notification bits on board, including a very nifty annotate PDF kind of grading interface, and the possibility to grade the essays using a rubric or marking guide.

Set up your Assignment activity to be marked as completed after a submission that was graded by the teacher and set up your course to automatically give out a badge for anyone who has a grade > passing grade for Assignment, and you're nearly set.

Finally, set up a certificate to be available (through restrict access) when said grade is equal to or higher than a minimum value and your users should only be able to download the certificate when they have passed the assignment.

In reply to Joost Elshoff

Re: Quiz workflow notifications

by Brendon Hatcher -

Hi

Thanks for replying.

I need to use Quiz, because I am using many of the question types with automatic grading, as well as a custom quiz question type.

Other ideas, anyone?

Thanks
Brendon

In reply to Brendon Hatcher

Re: Quiz workflow notifications

by Rick Jerz -
Picture of Particularly helpful Moodlers Picture of Testers

In your workflow, I like #5.  Somehow, I seem to recall seeing either discussion, or a feature request, for this.  Yes, it would be nice for students to get a notification when an essay question has been graded.  

In reply to Rick Jerz

Re: Quiz workflow notifications

by Brendon Hatcher -

Update:

1. Student takes the quiz and submits it
No issues - this uses core functionality


2. They receive an email notification confirming receipt, and telling them they will get their grade once it has been manually marked
Similarly to step 5 below, you can send an email indicating that a quiz in "Coursename" has been submitted, and in the body of the email, explain what the next steps are.

The trigger will be Quiz: Quiz attempt submitted

3. The course instructor receives a "grading required" email notification
I have found a way to send a notification to the teacher whenever a quiz attempt is submitted.  I have not found a way to differentiate between those quizzes that require manual grading and those that do not.  The teacher has to read the notification and apply their mind to determine if manual grading is required.

  1. Login as an administrator
  2. Site administration / Users / Define roles
  3. Edit teacher
  4. Filter - enter email
  5. Tick Get a notification message when an attempt is submitted
  6. Save changes
  7. Site Administration / Plugins
  8. Default message outputs
  9. Notification of quiz submissions
  10. Web and email locked
  11. Online and offline ticked for both web and email
  12. Save changes

4. The course instructor grades the quiz and save the final result
No issues - this uses core functionality

5. The student gets an email notification that their final grade is ready
I have found a way to send an email alert.  However, I can only state that "a quiz" in this specific course has been graded - I can't tell them which quiz.  Also, if you grade only some of the questions in a quiz and then complete the review, the email will be sent, even though the grade is incomplete (I think, not tested).

  1. Login as administrator
  2. Install the Event Trigger plugin
  3. Create a new trigger workflow
  4. Use the event Core: User Graded to trigger the workflow
  5. Lookup the course
  6. Lookup the user
  7. Send the user and email, telling them to open the course and look at the grades
6. If they pass, they get a badge and a certificate
No issues - using a combination of core functions and plugins


7. The student receive an email notification of the badge and certificate
Use event trigger based on Core: Course completed

In the email, state "If you passed the course, then you will have been awarded a badge / certificate..."with further instructions on how to access them


Average of ratings:Useful (1)
In reply to Brendon Hatcher

Re: Quiz workflow notifications

by Jean-Roch Meurisse -
Picture of Core developers Picture of Plugin developers Picture of Testers

Hi there,

Our approach for essay questions is the following: we want students to receive a notification when all essay questions of a quiz have been reviewed.

To do that we have defined an observer on the "question_manually_graded" event. When this event is triggered  a notification is sent if all essay questions have been graded, that is when the quiz as a whole receives a grade.

Cheers

In reply to Jean-Roch Meurisse

Re: Quiz workflow notifications

by Brendon Hatcher -

Hi


Thanks for your response.

I just realised that my approach still generates an email per question.

You said "that is when the quiz as a whole receives a grade".

How are you checking this?  Is there an event you are looking for?

Thanks

Brendon

In reply to Brendon Hatcher

Re: Quiz workflow notifications

by Brendon Hatcher -

Correction.  I get 2 notifications after manual grading, irrespective of how many manual questions I have in the quiz.

I can live with that, but a single would be better!

In reply to Brendon Hatcher

Re: Quiz workflow notifications

by Jean-Roch Meurisse -
Picture of Core developers Picture of Plugin developers Picture of Testers

As said in my previous post, I use an observer on the "question_manually_graded" event.

When it is triggered, I search in 'quiz_grades' table if there is a row for the quizid found in event data. 

--> if not there are still essay questions to review and nothing is done.

--> if yes everything has been reviewed for that quiz and a notification is sent to the student

Hope it helps !

In reply to Jean-Roch Meurisse

Re: Quiz workflow notifications

by S S -
Hey Jean-Roch,

I'm new to using the Event Triggers plug-in, and was wondering how you do the search in the quiz_grades table?
Are you able to export your workflow and share? smile

Thanks heaps!

Simon.
In reply to S S

Re: Quiz workflow notifications

by Jean-Roch Meurisse -
Picture of Core developers Picture of Plugin developers Picture of Testers
Hi Simon,
We do not use the event trigger plug-in (particularly because it is not marked as compatible with moodle over 3.5), but a local one with an observer on the "question_manually_graded" event.
Inside the observer we check whether there is an entry for the graded user for the current quiz in 'quiz_grades' table (which means that all essay questions for this quiz have been manually graded) as follows
public static function question_manually_graded($event) {
global $DB; $data = $event->get_data(); $usergraded = $DB->get_field('quiz_attempts', 'userid', array('id' => $data['other']['attemptid'])); $quiz = $DB->get_record('quiz', array('id' => $data['other']['quizid'])); if ($DB->record_exists('quiz_grades', array('quiz' => $quiz->id, 'userid' => $usergraded))) {
// Do whatever you need to do !!! }
return true; }
}

Maybe you can adpat that to build a workflow with event_trigger plugin ?
Hope this helps

Cheers