Hackfest UK 2014/Email Logging: Difference between revisions
From MoodleDocs
Larry Zoumas (talk | contribs) No edit summary |
David Aylmer (talk | contribs) No edit summary |
||
(20 intermediate revisions by 4 users not shown) | |||
Line 1: | Line 1: | ||
'''Message Logging and Reporting''' | '''Message Logging and Reporting''' | ||
*Contact Names: (please add name if interested) | *Contact Names: (please add name if interested) | ||
*Larry Zoumas (larry | *Larry Zoumas (larry(dot)zoumas@xtractor.se) | ||
*Martin Sandberg (martin | *Martin Sandberg (martin(dot)sandberg@xtractor.se) | ||
* | *David Aylmer (david(d)aylmer(a)floream(d)com) | ||
* | *Rob Hardy (r(dot)hardy(at)yorksj(dot)ac(dot)uk) | ||
* | *Marcus Green (m(dot)green(at)yorksj(dot)ac(dot)uk) | ||
'''Description''' | '''Description''' | ||
This plugin will allow admins and teachers to search through messages sent to users. The purpose is to easily answer the question of whether or not a user was notified of an important event, such as a face-to-face session, quiz deadline, etc. | *This plugin will allow admins and teachers to search through messages sent to users. The purpose is to easily answer the question of whether or not a user was notified of an important event, such as a face-to-face session, quiz deadline, etc. | ||
'''Notes:''' | '''Notes:''' | ||
*Not all emails go through the messaging | *Not all emails go through the messaging system. This needs to be investigated and fixed. | ||
*We might want to allow a place for developers to add hooks or decorate this functionality | *We might want to allow a place for developers to add hooks or decorate this functionality. | ||
*We are not sure how this will work with email digests. We should probably log when the digest email goes out. | |||
'''Email functions not using the messaging system''' | |||
*Self Enrolment Enrolment plugin (core) | |||
*moodle account being locked out after multiple invalid login attempts. (lockoutemailbody) (core) | |||
*When a badge has been awarded (core) | |||
*Emailing admins about failed login attempts (core) | |||
*To alert support email if log table can not be written into (core) | |||
*Welcome emails (core) | |||
*Password reset (core) | |||
*Confirmation email activation link (core) | |||
*Confirmation two (emailpasswordconfirmation) (core) | |||
*Password change is disabled email (core) | |||
*When using the email message output plugin (core) | |||
*When sending forum digests (forum cron - core) | |||
*Journal mod (journal cron -core) | |||
*When oublogs are moderated and require confirmation by the author (core) | |||
*If user changes email address confirmation is required (core) | |||
NOTE: Many third party (moodle partner) add-ons will use direct calls to email_to_user. This function should be better encapsulated in regards to information hiding design principles. | |||
''' | '''Capabilities''': | ||
*Can | *Can view own messages | ||
*Can | *Can view other messages | ||
*Can | *Can view messages in your courses (teacher) | ||
*Can view message body information | |||
'''Options''': | '''Options''': | ||
*Optionally log body | *Optionally log body of message | ||
'''Proposed Table Schema''' | '''Proposed Table Schema''' | ||
Line 49: | Line 69: | ||
*id | *id | ||
*body_text | *body_text | ||
*file_id (FK to mdl_files to see attachment size, etc) | |||
*email_headers (if any) | |||
*message_format (html or text) | |||
[[Image:moodle_message_log.png|ER diagram of tables]] | |||
'''Reporting''' | '''Reporting''' | ||
* | Output headings suggested order (left to right) | ||
* | *Message type | ||
* | *Course category (with link to category) | ||
* | *Course (with link to course) | ||
* | *Component/module (with link to mod e.g. forum post/discussion etc) | ||
* | *Peview body link (html/text) | ||
*Sender Fullname (link to profile) | |||
*Recipient Fullname (with link to profile) | |||
*Recipient email/jabberid/mobile phoine number/etc sent to | |||
*subject | |||
*time sent | |||
*status (success) | |||
'''filters''' | |||
*Download as spreadsheet | |||
*Paging number of users | |||
*Filter by course | |||
*Filter by activity | |||
*Filter by user | |||
*Filter by message_type | |||
*Filter by sent datetime | |||
*Filter by subject | |||
'''Tracker issue''' | |||
[https://tracker.moodle.org/browse/MDL-45160 Extend messaging system to log messages sent...] |
Latest revision as of 11:54, 29 April 2014
Message Logging and Reporting
- Contact Names: (please add name if interested)
- Larry Zoumas (larry(dot)zoumas@xtractor.se)
- Martin Sandberg (martin(dot)sandberg@xtractor.se)
- David Aylmer (david(d)aylmer(a)floream(d)com)
- Rob Hardy (r(dot)hardy(at)yorksj(dot)ac(dot)uk)
- Marcus Green (m(dot)green(at)yorksj(dot)ac(dot)uk)
Description
- This plugin will allow admins and teachers to search through messages sent to users. The purpose is to easily answer the question of whether or not a user was notified of an important event, such as a face-to-face session, quiz deadline, etc.
Notes:
- Not all emails go through the messaging system. This needs to be investigated and fixed.
- We might want to allow a place for developers to add hooks or decorate this functionality.
- We are not sure how this will work with email digests. We should probably log when the digest email goes out.
Email functions not using the messaging system
- Self Enrolment Enrolment plugin (core)
- moodle account being locked out after multiple invalid login attempts. (lockoutemailbody) (core)
- When a badge has been awarded (core)
- Emailing admins about failed login attempts (core)
- To alert support email if log table can not be written into (core)
- Welcome emails (core)
- Password reset (core)
- Confirmation email activation link (core)
- Confirmation two (emailpasswordconfirmation) (core)
- Password change is disabled email (core)
- When using the email message output plugin (core)
- When sending forum digests (forum cron - core)
- Journal mod (journal cron -core)
- When oublogs are moderated and require confirmation by the author (core)
- If user changes email address confirmation is required (core)
NOTE: Many third party (moodle partner) add-ons will use direct calls to email_to_user. This function should be better encapsulated in regards to information hiding design principles.
Capabilities:
- Can view own messages
- Can view other messages
- Can view messages in your courses (teacher)
- Can view message body information
Options:
- Optionally log body of message
Proposed Table Schema
messaging_log
- id
- from (user_id)
- from_address (email address or identifier when the message was sent)
- message_type (FK mdl_message_provider)
- moduleid
- courseid
- subject
- body_id
- time
messaging_log_user
- id
- message_log_id (FK to messaging log)
- userid
- to_address (email address or identifier when the message was sent)
- time
- status
messaging_log_body
- id
- body_text
- file_id (FK to mdl_files to see attachment size, etc)
- email_headers (if any)
- message_format (html or text)
Reporting Output headings suggested order (left to right)
- Message type
- Course category (with link to category)
- Course (with link to course)
- Component/module (with link to mod e.g. forum post/discussion etc)
- Peview body link (html/text)
- Sender Fullname (link to profile)
- Recipient Fullname (with link to profile)
- Recipient email/jabberid/mobile phoine number/etc sent to
- subject
- time sent
- status (success)
filters
- Download as spreadsheet
- Paging number of users
- Filter by course
- Filter by activity
- Filter by user
- Filter by message_type
- Filter by sent datetime
- Filter by subject
Tracker issue