We need to develop a robust email reminder service from scratch. This service will handle scheduling, sending, and retrying email reminders for mentees. The service should also manage state transitions for mentees after a specified period and handle foreign key constraints properly.
Tasks:
Design Database Schema
Ensure proper relationships and foreign key constraints are established.
Implement Email Reminder Service
Create a service class to handle scheduling, sending, and retrying email reminders.
Implement methods for scheduling reminders, processing reminders, and handling retries with exponential backoff.
Track Number of Reminders Sent
Add CronJob for Monthly Scheduling and set up a cron job to run at the end of each month.
Ensure reminders are scheduled for a continuous period of 6 months.
Acceptance Criteria:
The email reminder service is fully implemented and operational.
The number of reminders sent is tracked and updated correctly.
Cron job runs at the end of each month and schedules reminders for 6 months.
Additional Information:
Ensure that all changes are covered by unit tests.
Update documentation to reflect new features and changes.
Monitor logs to verify that retries and state transitions are working as expected.
Later:
Implement a user interface to view and manage reminder attempts.
Add notifications for administrators when maximum retries are reached.
Description:
We need to develop a robust email reminder service from scratch. This service will handle scheduling, sending, and retrying email reminders for mentees. The service should also manage state transitions for mentees after a specified period and handle foreign key constraints properly.
Tasks:
Acceptance Criteria:
Additional Information:
Later:
Related Dependencies or References: