Hype Up Your Events!
Go to file
Joey Hines 30177474e1
Initial async update commit
+ Naive port of all code to async serenity
+ Limited testing has been done, but the bot seems to work
+ Removed WhiteRabbit dependency (does not work in async)
+ Further cleanup needed
2021-01-09 15:45:16 -06:00
migrations Fixed issue w/ events w/ long descriptions 2020-07-09 22:36:04 -05:00
src Initial async update commit 2021-01-09 15:45:16 -06:00
.gitignore Initial async update commit 2021-01-09 15:45:16 -06:00
Cargo.lock Initial async update commit 2021-01-09 15:45:16 -06:00
Cargo.toml Initial async update commit 2021-01-09 15:45:16 -06:00
LICENSE Initial async update commit 2021-01-09 15:45:16 -06:00
README.md Added configurable event reminders 2020-08-08 18:09:07 -05:00
diesel.toml Initial commit 2020-04-22 22:28:51 -05:00

README.md

HypeBot

A Discord bot for managing events. Uses Serenity for the bot framework and Diesel as an ORM.

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

A user can then use the confirm command to create the event and publish it:

announcement

Users who react with will then be sent reminders about the event as private message.

Running

./hype_bot config.toml

Config

# Database URL
db_url = "mysql://[user]:[password]@localhost/hypebot_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