An open API service indexing awesome lists of open source software.

https://github.com/twin/discord-reminder-bot

Lightweight Discord bot for managing reminders.
https://github.com/twin/discord-reminder-bot

bot discord reminder remindme

Last synced: over 1 year ago
JSON representation

Lightweight Discord bot for managing reminders.

Awesome Lists containing this project

README

          

# discord-reminder-bot
![test](https://github.com/TwiN/discord-reminder-bot/workflows/test/badge.svg?branch=master)
[![Docker pulls](https://img.shields.io/docker/pulls/twinproduction/discord-reminder-bot)](https://cloud.docker.com/repository/docker/twinproduction/discord-reminder-bot)

This is a simple Discord bot for managing reminders.

## Table of Contents
- [Description](#description)
- [Usage](#usage)
- [Getting started](#getting-started)
- [Discord](#discord)
- [Docker](#docker)
- [Pulling from Docker Hub](#pulling-from-docker-hub)
- [Building image locally](#building-image-locally)

## Description
If you react to a message with ⏰ (`:alarm_clock:`), ⏲ (`:timer:`) or 🎗 (`:reminder_ribbon:`), a message will be sent
to you through direct message informing you that you will be reminded about the message you reacted to in 8 hours.

You may also use the following syntax:
```
!RemindMe [NOTE]
```
**Where:**
- `` must be use one of the following formats: `30m`, `2h`, `6h30m`, `30d`, `7d12h30m`
- `[NOTE]` is an optional note to attach to the reminder with less than 240 characters

Note that `!RemindMe` can be replaced by directly pinging the bot (e.g. `@reminder-bot 2h30m meeting about cookies`)

Once a reminder is created using one of the aforementioned methods, a direct message is sent to the user with several
options to manage the newly created reminder. This is internally referred to as the notification message:

![new reminder](.github/assets/reminder-new.png)

Once a reminder is due, a direct message is sent to the user with a link to the message that triggered the creation
of the reminder.

Here is an example of a message with and without a note:

![reminder](.github/assets/reminder.png)

Furthermore, once a reminder has been deleted or has been processed, its notification message is automatically crossed
to make the differentiation between active and inactive reminders:

![deleted reminder](.github/assets/reminder-crossed.png)

You may also list your active reminders by typing the following:
```
!list
```

![list of reminders](.github/assets/reminder-list.png)

## Usage
| Environment variable | Description | Required | Default |
|:-------------------- |:------------------------------------- |:--- |:---- |
| DISCORD_BOT_TOKEN | Discord bot token | yes | `""` |
| COMMAND_PREFIX | Character prepending all bot commands | no | `!` |

## Getting started
### Discord
1. Create an application
2. Add a bot in your application
3. Save the bot's token and set it as the `DISCORD_BOT_TOKEN` environment variable
4. Go to `https://discordapp.com/oauth2/authorize?client_id=&scope=bot&permissions=2112`
5. Add the bot to a server of your choice

## Docker
### Pulling from Docker Hub
```
docker pull twinproduction/discord-reminder-bot
```

### Building image locally
Building the Docker image is done as following:
```
docker build . -t twinproduction/discord-reminder-bot
```
You can then run the container with the following command:
```
docker run -e DISCORD_BOT_TOKEN=secret --name discord-reminder-bot twinproduction/discord-reminder-bot
```