Quickmail

Blocks ::: block_quickmail
Maintained by Robert Russo, David Lowe
A block that provides selective, bulk emailing within courses. Developed by LSU.
Latest release:
3276 sites
556 downloads
123 fans
Current versions available: 6

Quickmail is a block that provides selective, bulk emailing within courses.

Features

  • Multiple attachments
  • Drafts
  • Signatures
  • Filter by Role
  • Filter by Groups
  • Optionally allow Students to email people within their group.

License

Quickmail adopts the same license that Moodle does.

Authors

Quickmail was developed at Louisiana State University.

Potential privacy issues

The Privacy API is not implemented in this plugin.

Screenshots

Screenshot #0
Screenshot #1
Screenshot #2
Screenshot #3

Contributors

Robert Russo (Lead maintainer)
Philip Cali: Former Lead Developer
jason peak: Former maintainer
David Elliott: Former maintainer
It's me!
Chad Mazilly: Former Maintainer
Please login to view contributors details and/or to contact them

Comments

Сэтгэгдлийг харуулах
  • Bruno Dura
    Ба, 3 5-р сар 2024, 6:46 PM
    Hi there
    Love this plugin, is there any way to add data fields? I would love to the username to this list. Given that our students have a student number as a username, a lot of them tend to forget it. Getting it as a reminder before start of a course would really help.
    Thanks in advance!
  • Allie Wrin
    Пү, 6 6-р сар 2024, 1:18 AM
    Is there an ETA for Moodle 4.3?
  • belardo sales
    Да, 14 10-р сар 2024, 9:07 PM
    Dear, good morning. We're facing an issue after updating the Quickmail plugin. Previously, teachers were able to see all emails sent to students by other teachers. In the new version, each teacher can only see the history of emails they personally sent, without being able to view the email history sent by other teachers. Has this feature been removed from newer versions? Is this related to compliance with FERPA regulations?
  • Sharon Strauss
    Лх, 30 10-р сар 2024, 11:06 PM
    Hello, I am seeing the same issue as Belardo sales. When I check the log, I see a lot of failed Quickmail reports, similar to this one:

    Send all scheduled Quickmail messages
    \block_quickmail\tasks\send_all_ready_messages_task
    Scheduled 10/30/24, 00:45:01 0.02 secs moodle 361031
    9 reads
    0 writes
    Fail


    Veiwing the failed log shows:

    Execute scheduled task: Send all scheduled Quickmail messages (block_quickmail\tasks\send_all_ready_messages_task)
    ... started 00:45:01. Current memory use 21.0 MB.
    Debugging increased temporarily due to faildelay of 61440
    ... used 9 dbqueries
    ... used 0.019463062286377 seconds
    Scheduled task failed: Send all scheduled Quickmail messages (block_quickmail\tasks\send_all_ready_messages_task),groups_get_user_groups(): Argument #2 ($userid) must be of type int, null given, called in /mnt/data/moodle/blocks/quickmail/classes/repos/group_repo.php on line 92
    Backtrace:
    * line 92 of /blocks/quickmail/classes/repos/group_repo.php: call to groups_get_user_groups()
    * line 66 of /blocks/quickmail/classes/repos/user_repo.php: call to block_quickmail\repos\group_repo::get_course_user_groups()
    * line 335 of /blocks/quickmail/classes/repos/user_repo.php: call to block_quickmail\repos\user_repo::get_course_user_selectable_users()
    * line 193 of /blocks/quickmail/classes/persistents/message.php: call to block_quickmail\repos\user_repo::get_unique_course_user_ids_from_selected_entities()
    * line 222 of /blocks/quickmail/classes/repos/queued_repo.php: call to block_quickmail\persistents\message->populate_recip_course_msg()
    * line 241 of /blocks/quickmail/classes/repos/queued_repo.php: call to block_quickmail\repos\queued_repo::sync_course_recip_msgs()
    * line 49 of /blocks/quickmail/classes/tasks/send_all_ready_messages_task.php: call to block_quickmail\repos\queued_repo::get_all_messages_to_send()
    * line 405 of /lib/classes/cron.php: call to block_quickmail\tasks\send_all_ready_messages_task->execute()
    * line 208 of /lib/classes/cron.php: call to core\cron::run_inner_scheduled_task()
    * line 125 of /lib/classes/cron.php: call to core\cron::run_scheduled_tasks()
    * line 186 of /admin/cli/cron.php: call to core\cron::run_main_process()


    I am running QM version v4.2.2
    2024101701

    on Moodle 4.38, build 20241011. I did not have this issue before updating QM and Moodle on 10/15/24. I just updated QM again, but that did not fix the issue.
  • Jason deNobel
    Пү, 31 10-р сар 2024, 6:56 AM
    I have quickmail installed. I upgraded the moodle installation to version 4.5. I tried to update the quickmail version to 4.5.1 I have installed the plugin via, the install button here, the zip file to the direct server, and the zip file uploaded within the moodle installation. (and yes I deleted each version and install quickmail before trying the next way). But I am constantly getting this error. Exception - Class "question_bank" not found

    More information about this error

    And also within the plugin overview it says:

    v4.2.2 of quickmail
    2024101701

    any help ???
  • Sharon Strauss
    Бя, 9 11-р сар 2024, 5:01 AM
    Update to my message Wed, Oct 30, 2024, 11:06 AM

    I changed the group setting from the default for the "block_quickmail_ferpa" setting to "Respect Course Mode" rather than the default "Always Separate Groups". This appears to have fixed the problem.
  • Jorge Cruz
    Мя, 10 12-р сар 2024, 1:06 AM
    Hello! This plugin is really good! One question: are there plans to implement a filter that shows the student's final grade in the course? It is the value in the "finalgrade" field in the mdl_grade_grades table.
  • Scott Kitts
    Ба, 31 1-р сар 2025, 3:28 AM
    We are thinking about upgrading to Moodle 4.5 at the beginning of the summer. Is Quickmail now compatible with Moodle 4.5?
  • Tim Schroeder
    Пү, 13 3-р сар 2025, 5:16 AM
    Somehow some language strings do not appear in Moodle's translation tool (AMOS), for example the string with the identifier "from". So even though in AMOS it says this plugin is 100% translated to a language. If you actually use it with that language some strings are still not translated.
  • Daniel
    Пү, 13 3-р сар 2025, 4:42 PM
    Sans doute en effet. Car j'ai moi-même du utiliser la traduction interne de Moodle pour créer ma traduction personnelle.
    Mais vous pouvez vous-même aller dans AMOS et terminer la traduction.
  • Terry Aulenbach
    Пү, 20 3-р сар 2025, 8:33 AM
    We are using the latest version of Quickmail with Moodle 4.1. In the settings, "Allow students to use Quickmail" is set to "No", however, the block in each course allows students to go in and send emails. When I check the permissions on the block, there is a "View block permission that allows students, auditors, etc. to view the block. It appears to override the Quickmail setting. I can change the permissions for the block in the individual course, but that is not feasible to do in all courses. Is this a bug? Is there a workaround?
  • Verónica V.
    Мя, 8 4-р сар 2025, 7:15 AM
    Hi Terry, the same thing happened to me, were you able to fix it?
    Thank you very much.
    Best regards.
    Veronica.
  • Maurizio Zaccaria
    Да, 28 4-р сар 2025, 4:06 PM
    Hi, is there a way to add parameters?
  • Kathleen Aermes
    Лх, 30 4-р сар 2025, 8:25 PM
    Hi,
    we are using Quickmail with Moodle 4.5.2 and figured out that Quickmail does not behave as expected when writing an email and want to exclude e.g. special groups – the email will always be send to all members in the course. Did we miss anything or is this a bug?

    Kathleen
  • Ken Stokes
    Бя, 13 12-р сар 2025, 6:40 AM
    The Quickmail plugin contains a critical bug that prevents messages from being delivered when professors select "All in Course" as the recipient option. The root cause is commented-out code in the message.php persistent class that was intended to dynamically populate recipients at send time but was never activated. This bug has silently affected our institution since at least April 2025, with approximately 60 messages failing to reach over 200 intended recipients.

    The Bug
    The code responsible for populating recipients when "All in Course" is selected has been commented out:
    // Lines 222-227 - COMMENTED OUT (BUG)
    // if ($this->check_course_msg()) {
    // $this->populate_recip_course_msg();
    // }

    Technical Explanation
    The Quickmail plugin uses two different approaches for recipient selection:

    Role-based selection (e.g., "Students", "Teachers"): Recipients are stored directly in mdl_block_quickmail_msg_recips at compose time.
    "All in Course" selection: The course ID is stored in mdl_block_quickmail_msg_course, with the intent to dynamically populate recipients at send time to account for enrollment changes.

    The design intent for "All in Course" was:

    At compose time: Store course ID in mdl_block_quickmail_msg_course
    At send time: Call populate_recip_course_msg() to enumerate current enrollees
    Proceed with sending to the populated recipient list

    However, the code that triggers step 2 was commented out, so:

    The course ID is stored correctly
    Recipients are never populated
    The message sends to zero recipients
    No error is thrown because technically the send "succeeded"

Please login to post comments