Commit Graph

47 Commits (master)

Author SHA1 Message Date
Joey Hines ccae8da7fb Update '.drone.yml'
+ heckin fires
2021-06-24 01:12:16 +00:00
Joey Hines 3942413e76 Merge pull request 'Async Update' (#1) from async_update into master
Reviewed-on: https://git.birbmc.com/ZeroHD/HypeBot/pulls/1
2021-06-24 01:07:25 +00:00
Joey Hines 6866602bca
No Rust 1.52 on docker yet 2021-03-04 20:27:04 -06:00
Joey Hines f069db1316
Added .drone.yml 2021-03-04 20:24:39 -06:00
Joey Hines 7a8cbba73c
Using latest tokio and serenity versions 2021-03-04 19:20:32 -06:00
Joey Hines ac2573e036
Updated README.md 2021-03-04 19:10:21 -06:00
Joey Hines 32f100c4cf
Moved to sled for the database + code cleanup
+ Moved to the sled embedded rust database
+ Refactored code during migration
+ fmt+clippy
2021-03-04 19:07:31 -06:00
Joey Hines 7c441028a7
Added event cleanup 2021-02-26 18:00:16 -06:00
Joey Hines 8fb01ba1a4
Added reminder system
+ Reminders are stored in the Reminders struct
+ Every 5 seconds, a async task is run to check if any reminders need to be sent
+ Events are not pulled from the database until a reminder needs to be sent
2021-01-28 16:31:07 -06:00
Joey Hines 04014c24d6
Code cleanup
+ Reduced copies needed to access config or the draft event from global data
+ fmt + clippy
2021-01-16 13:58:46 -06:00
Joey Hines af9952878e
clippy + fmt 2021-01-15 21:51:26 -06:00
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
Joey Hines 47a1bc9a2a Merge pull request 'Added configurable event reminders' (#10) from config_reminders into master
Reviewed-on: https://git.etztech.xyz/ZeroHD/HypeBot/pulls/10
2020-08-09 17:06:04 +02:00
Etzelia faa4539d12 Merge branch 'master' into config_reminders 2020-08-09 16:33:38 +02:00
Joey Hines d6fb2f9657 Added configurable event reminders
+ Reminders can be set at custom times and have custom messages
2020-08-08 18:09:07 -05:00
Joey Hines 08ddd6d8b4 Merge pull request 'Added Ping Role Configuration' (#9) from ping_role into master
Reviewed-on: https://git.etztech.xyz/ZeroHD/HypeBot/pulls/9
2020-07-12 03:27:54 +02:00
Joey Hines fa1dd3fcde Small fixes
+ Creating "ping_roles" more idiomatically
+ Updated readme
2020-07-10 09:29:54 -05:00
Joey Hines c855d6e568 Fixed issue w/ events w/ long descriptions
+ `event_desc` field was too small in the database
2020-07-09 22:36:04 -05:00
Joey Hines 250b05405f Added configuration for setting roles to ping 2020-07-09 22:05:01 -05:00
Joey Hines 19c8ad8c80 Moved countdown link to description field and used a named link 2020-06-12 17:41:46 -05:00
Joey Hines 9179955ff0 Added a countdown link
+ timeanddate.com are being used for now
2020-06-12 17:26:14 -05:00
Joey Hines fbee8708a2 Event handler error handling
+ if the config is not found, return and log it
2020-05-27 21:45:33 -05:00
Joey Hines 9a98190b41 Fixed `cancel` return message 2020-05-25 12:01:58 -05:00
Joey Hines ff40de92ee Reactions are only checked in they are in the event channel 2020-05-23 16:35:19 -05:00
Joey Hines 79d0b1cd09 Added rolling log support
+ Log files are limited to 10mb
+ 10 logs are kept at a time
2020-05-22 22:57:11 -05:00
Joey Hines f3c977b93b Switched over to using a scheduler for events.rs
+ This will hopefully cut down on the CPU/Memory leaks on large servers
2020-05-22 20:03:09 -05:00
Joey Hines 018f06e38e Added license 2020-05-20 14:30:37 -05:00
Joey Hines a0d6a492b8 Fixed permission check issue
+ `permission_check` was returning false if a member did not have a certain role, instead of continuing to search
2020-05-20 11:29:07 -05:00
Joey Hines 46703f9509 Clarified config setup in README.md 2020-05-19 19:36:59 -05:00
Joey Hines 8508f182c1 Fixed README.md (again...) 2020-05-19 19:26:27 -05:00
Joey Hines 6dd8ff03c2 Fixed README.md (again) 2020-05-19 19:24:52 -05:00
Joey Hines 6c33d46cb4 Fixed README.md 2020-05-19 19:18:13 -05:00
Joey Hines 642abf7ccb Fixed missing `"` in `create` 2020-05-02 13:49:20 -05:00
Joey Hines 81660a72df Added event organizer and event location
+ Event location is a new required field
+ Event organizer defaults to user that ran the command, or can be specified
+ Formatted code
2020-05-02 13:35:47 -05:00
Joey Hines 9d8688ad92 Fixed reminders
+ Event reminders are now sent properly.
+ Users who react to old events will be told the even has already started
2020-05-01 16:29:09 -05:00
Joey Hines 0f8fe04657 Reformatted code to organize it better
+ Moved commands and discord helper functions to `discord` module
2020-04-28 19:41:10 -05:00
Joey Hines 01c986d708 Added error logging 2020-04-27 18:16:03 -05:00
Joey Hines 4a182090ff Added better error handling and help messages 2020-04-27 17:13:23 -05:00
Joey Hines 7799f0e2fe Added the cancel_event command
+ When an event is canceled, a notification is sent to all interested users
+ The message is then deleted and removed from the database
2020-04-26 21:49:04 -05:00
Joey Hines bff5684b38 Added permissions check
+ Permissions are handled in the `before` command call
2020-04-26 21:14:00 -05:00
Joey Hines 34647ce678 Added automatic remove of events
+ Events that are older than an hour are deleted
2020-04-26 16:43:54 -05:00
Joey Hines 0e6a0bcbef Added message for when a user removes a reaction 2020-04-26 16:23:13 -05:00
Joey Hines 71a63d84c8 Cleanup and Formatting fixes
+ HypeBotConfig now parses TZ strings on load
+ Cleaned up unsafe code
+ Added more comments
+ Ran code through rustfmt
2020-04-26 15:06:55 -05:00
Joey Hines 8b8b479bcf Added reminders
+ Users can react to an event message, when they do they get reminders about the event
2020-04-25 20:04:13 -05:00
Joey Hines 3eda40dcc0 Added better timezone support and added confirm_event
+ Times are now read in and displayed as a configured timezone
+ Added `confirm_event` to preview the event message before posting
2020-04-23 19:45:02 -05:00
Joey Hines b654d0b167 Fixed README.md 2020-04-22 22:30:52 -05:00
Joey Hines 3c710adf96 Initial commit
What works:
+ create_event command posts an event message to a channel
+ the event is also stored in a database

Todo:
+ Add event reminders to those who RSVP
+ Add permissions support
+ Add commands for editing/deleting events
2020-04-22 22:28:51 -05:00