Email reminders for calendar events: Difference between revisions
From MoodleDocs
No edit summary |
No edit summary |
||
Line 69: | Line 69: | ||
== Mockups == | == Mockups == | ||
=== Administrator Setting Page === | === Administrator Setting Page === | ||
[[File: | [[File:reminders_admin_config_page.jpg]] | ||
=== Message Format (HTML) === | === Message Format (HTML) === |
Revision as of 06:11, 22 May 2012
Introduction
Reminders are very useful for both students as well as teachers to recall their scheduled event before the actual moment. This project is about creating a set of reminders for Moodle calendar events and sending them automatically to relevant users on timely manner via Moodle message interface. It will be implemented as a local plugin to the Moodle.
Requirements
Moodle 2.2 required
Community Bonding Period
Milestones
- DONE - Refine the project proposal with Michael, Rossiani and the community
- DONE - Feature discussion
- Create mockups
Features
Following features are expecting to package with the reminders plugin.
- 1. Reminders can be sent by customizing according to each event type.
- Separate message providers for each event type.
- Ability to customize message content according to event type.
- 2. Administrator configurations
- Administrator can enable/disable the process of sending reminders without uninstalling the plugin.
- Ability to choose how many days ahead should the reminders be created for each event type.
- Reminders can be created only by days.
- Supported only fixed amount of days ahead such as 7 days, 3 days and 1 day.
- Ability to keep/remove history of reminder events.
- 2. User configurations
- User can select desired method of receiving reminder notifications on each message provider.
Coding Period
Milestones
- 1. DONE - Finalize the abstract architecture.
- 2. DONE - Implementing the basic structure of the plugin. (CONTRIB-3648)
- Creating a suitable version file.
- Creating a language file.
- Creating a message provider file.
- Creating a lib file for the cron function.
- 3. Implementing message providers for each event type. (CONTRIB-3659)
- 4. Providing a administrator settings page. (CONTRIB-3660)
- 5. Implementing necessary reminder classes.
- Creating abstract reminder class.
- Creating concrete reminder classes for each event type.
- 6. Building functionality.
- Implementation of Cron function.
- 7. Testing
- 8. Bug fixing
File Structure
Following shows expected file structure of the plugin. Plugin name would be "reminders".
- db/access.php
- db/message.php
- db/install.php
- db/upgrade.php
- lang/en/local_reminders.php
- version.php
- lib.php
- settings.php
- README
High Level Architecture Diagram
Reminders Class Diagram
Mockups
Administrator Setting Page
Message Format (HTML)
- Message Title : Reminder: ${event_detail} @ ${event_date_time}
Message Format (Plain-text)
- Message Title : Reminder: ${event_detail} @ ${event_date_time}
- Message Content:
- ${message_title}
- Reminder - #n days remaining
- When -> ${event_time}
- What -> ${event_course} or ${event_type}
- Description -> ${event_description}
Screenshots
Tracker
See also
- Moodle - Google Summer of Code 2012 Idea List
- Original Proposal - GSoC 2012
- RSS Feed from Personal Blog, RSS Feed.