1.5 KiB
This is a Discord.py bot that allows you to set date, cron and interval reminders with APScheduler. Dates are parsed using dateparser.
Use type annotation/hints.
Use try-except blocks.
Add logging.
Write Google style docstrings.
Add helpful message when using assert. Use f-strings.
Docstrings that doesn't return anything should not have a return section.
A function docstring should describe the function's behavior, arguments, side effects, exceptions, return values, and any other information that may be relevant to the user.
Including the exception object in the log message is redundant.
We use Github.
Channel reminders have the following kwargs: "channel_id", "message", "author_id".
User DM reminders have the following kwargs: "user_id", "guild_id", "message".
Bot has the following commands:
"/remind add message: time: dm_and_current_channel: user: channel:"
"/remind remove id:<job_id>"
"/remind edit id:<job_id>"
"/remind pause_unpause id:<job_id>"
"/remind list"
"/remind cron message: year: month: day: week: day_of_week: hour: minute: second: start_date: end_date: timezone: jitter: channel: user: dm_and_current_channel:"
"/remind interval message: weeks: days: hours: minutes: seconds: start_date: end_date: timezone: jitter: channel: user: dm_and_current_channel:"