59 lines
1.7 KiB
Markdown
59 lines
1.7 KiB
Markdown
# HypeBot
|
|
A Discord bot for managing events. Uses [Serenity](https://github.com/serenity-rs/serenity) for the bot framework
|
|
and [sled](https://github.com/spacejam/sled) for the database
|
|
|
|
## Usage
|
|
Creating an event can be done using the `create` command.
|
|
```
|
|
~create "Test Event" "5:35PM 2020-05-17" "A very cool test event!" "Cool Place"
|
|
```
|
|
|
|
This creates a draft event that the user can then review:
|
|
|
|
![create event example](https://i.imgur.com/9jTko9W.png)
|
|
|
|
A user can then use the `confirm` command to create the event and publish it:
|
|
|
|
![announcement](https://i.imgur.com/AeTE1v2.png)
|
|
|
|
Users who react with ✅ will then be sent reminders about the event as private message.
|
|
|
|
## Running
|
|
`./hype_bot config.toml`
|
|
|
|
## Config
|
|
```toml
|
|
# Database URL
|
|
db_location = "path/to/db"
|
|
# Default image to show on the thumbnail
|
|
default_thumbnail_link = "https://i.imgur.com/wPdnvoE.png"
|
|
# Discord bot key
|
|
discord_key = ""
|
|
# Bot command prefix
|
|
prefix = "~"
|
|
# Channel ID to post to
|
|
event_channel = 0
|
|
# List of roles that can use the bot
|
|
event_roles = [0]
|
|
# List of roles to ping when a new event is posted
|
|
ping_roles = [0]
|
|
# Timezone to display events, supported timezones can be found at https://docs.rs/chrono-tz/0.5.1/chrono_tz/#modules
|
|
event_timezone = "America/New_York"
|
|
# Path to place logs in
|
|
log_path = "log/"
|
|
|
|
# Configurable Reminders
|
|
[[reminders]]
|
|
# Message to send, "{EVENT_NAME}" gets replaced with the event's name
|
|
msg = "{EVENT_NAME} is starting now!"
|
|
# number of minutes before an event to send the reminder
|
|
reminder_time = 0
|
|
|
|
[[reminders]]
|
|
msg = "{EVENT_NAME} is starting in 1 minute!"
|
|
reminder_time = 1
|
|
|
|
[[reminders]]
|
|
msg = "{EVENT_NAME} is starting in 5 minutes!"
|
|
reminder_time = 5
|
|
``` |