Commit Graph

103 Commits (021432ce295c615bde7af47e34df731582e8c3ac)

Author SHA1 Message Date
trivernis 8d6ed995e0
Improve error handling with forward_error macro
Signed-off-by: trivernis <trivernis@protonmail.com>
4 years ago
trivernis bbf9f1ef93
Add ephemeral message and use it for most music command answers
Signed-off-by: trivernis <trivernis@protonmail.com>
4 years ago
trivernis eede854ad4
Fix skipping causing songs to unpause
Signed-off-by: trivernis <trivernis@protonmail.com>
4 years ago
trivernis 619d8aa30b
Add pain command
Signed-off-by: trivernis <trivernis@protonmail.com>
4 years ago
trivernis 80289e5590
Add remove_song command
Signed-off-by: trivernis <trivernis@protonmail.com>
4 years ago
trivernis bba12ff763
Add move_song command
Signed-off-by: trivernis <trivernis@protonmail.com>
4 years ago
trivernis a98f401fbe
Change queue command to accept query and display an embed
The queue command now displays an embed with pagination and
allows for songs to be queried by providing arguments. Each argument
is interpreted as a keyword that is searched for.

Signed-off-by: trivernis <trivernis@protonmail.com>
4 years ago
trivernis 80dfe4af07
Add number of times used to stats command
Signed-off-by: trivernis <trivernis@protonmail.com>
4 years ago
trivernis a67fecc210
Add gifs table and matsuri, add_gif and gifs command
Added a gif table to store gifs with optional category and name
as. The command add_gif (owner only) can be used to add a gif to
the database. The command gifs can be used to see all the gifs
stored in the database. The gifs are being used by the pekofy and
matsuri command.

Signed-off-by: trivernis <trivernis@protonmail.com>
4 years ago
trivernis 1bbbdc29f6
Move sauce and pekofy command to weeb group
Signed-off-by: trivernis <trivernis@protonmail.com>
4 years ago
trivernis 8ed7cf90b3
Change to require dj permission for join with channel id
Signed-off-by: trivernis <trivernis@protonmail.com>
4 years ago
trivernis 87cfba1bc8
Change menu pages to be wrapped in page type
The pages of a menu are now wrapped in an enum that contains either
a builder function or a static CreateMessage. The builder function
is used for the now playing message to always return the currently
playing song instead of mapping a static song. This solves the problem
that the old page is being rendered when the page is recreated because
of being sticky.

Signed-off-by: trivernis <trivernis@protonmail.com>
4 years ago
trivernis 411dd83240
Add controls to now playing message and fix sticky menu
Signed-off-by: trivernis <trivernis@protonmail.com>
4 years ago
trivernis c6b80f8abd
Add sticky option to menus
Menus can now be created as sticky menus. When new messages appear
in the channel, the sticky message will be resent to be the latest
one in the channel. It only get's recreated every ten seconds max
to avoid getting ratelimited.
To work with recreatable menus, the message handle returned by
the menu is now wrapped into an Arc<RwLock<>>.

Signed-off-by: trivernis <trivernis@protonmail.com>
4 years ago
trivernis bf29b51092
Change music NowPlaying embed to be created as a menu
Signed-off-by: trivernis <trivernis@protonmail.com>
4 years ago
trivernis 8b8fc8f814
Add rate limits to commands
Signed-off-by: trivernis <trivernis@protonmail.com>
4 years ago
trivernis 4d290a5091
Bump version and cleanup code
Signed-off-by: trivernis <trivernis@protonmail.com>
4 years ago
trivernis 0bbbf3594f
Reimplement is_image and is_video in coreutils
Signed-off-by: trivernis <trivernis@protonmail.com>
4 years ago
trivernis 255e11833b
Add about command and bump version
Signed-off-by: trivernis <trivernis@protonmail.com>
4 years ago
trivernis 57292b2a5e
Fix sauce command image extraction
Signed-off-by: trivernis <trivernis@protonmail.com>
4 years ago
trivernis c9fcae05db
Add sauce command
Signed-off-by: trivernis <trivernis@protonmail.com>
4 years ago
trivernis e4a8334b63
Add timeout to qalc command
Signed-off-by: trivernis <trivernis@protonmail.com>
4 years ago
trivernis e11ff3f72f
Add optional code argument to shutdown command
Signed-off-by: trivernis <trivernis@protonmail.com>
4 years ago
trivernis a7045ebe5a
Add version information to stats command
Signed-off-by: trivernis <trivernis@protonmail.com>
4 years ago
trivernis 8f98399ea9
Sanitize input of qalculate
Signed-off-by: trivernis <trivernis@protonmail.com>
4 years ago
trivernis 9d4ed2dfb5
Add qalc command and improve README
Signed-off-by: trivernis <trivernis@protonmail.com>
4 years ago
trivernis 2d980111bc
Change database operations to be async
Signed-off-by: trivernis <trivernis@protonmail.com>
4 years ago
trivernis 0d43e8294e
Change dj role to be optional
Signed-off-by: trivernis <trivernis@protonmail.com>
4 years ago
trivernis 69e7a2a18f
Add autodelete setting and sticky np embed
Signed-off-by: trivernis <trivernis@protonmail.com>
4 years ago
trivernis f36cf5a477
Change now playing to update automatically
Signed-off-by: trivernis <trivernis@protonmail.com>
4 years ago
trivernis f32228e61f
Remove prefix from music group
Signed-off-by: trivernis <trivernis@protonmail.com>
4 years ago
trivernis 7005fa7317
Add time and timezone command
Signed-off-by: trivernis <trivernis@protonmail.com>
4 years ago
trivernis 750ee7d0dc
Add lyrics command and format playlists list differently
Signed-off-by: trivernis <trivernis@protonmail.com>
4 years ago
trivernis 0cb0a4c47b
Add command to manage playlists
Signed-off-by: trivernis <trivernis@protonmail.com>
4 years ago
trivernis 6d75b840b4
Switch to diesel with postgres for the database
Signed-off-by: trivernis <trivernis@protonmail.com>
4 years ago
trivernis 62d9664b35
Fix peko detection and add random rare pekos
Signed-off-by: trivernis <trivernis@protonmail.com>
4 years ago
trivernis 60f300913d
Add peko alias and easteregg
Signed-off-by: trivernis <trivernis@protonmail.com>
4 years ago
trivernis cdeeb2e78d
Fix emojis with pekofy
Signed-off-by: trivernis <trivernis@protonmail.com>
4 years ago
trivernis f0d2111628
Add pekofy command
Signed-off-by: trivernis <trivernis@protonmail.com>
4 years ago
trivernis 5ab22fd343
Add feature to automatically leave when the voicechannel is empty
Signed-off-by: trivernis <trivernis@protonmail.com>
4 years ago
trivernis 6c9df7e044
Add shutdown and pause command
Signed-off-by: trivernis <trivernis@protonmail.com>
4 years ago
trivernis e9c70bc754
Add stats command
Signed-off-by: trivernis <trivernis@protonmail.com>
4 years ago
trivernis b4e874ae07
Add logging with fern
Signed-off-by: trivernis <trivernis@protonmail.com>
4 years ago
trivernis 288675c2ea
Change song fetching to be lazy
Signed-off-by: trivernis <trivernis@protonmail.com>
4 years ago
trivernis dd5c9a3673
Add pagination to spotify and thread count lock for ytdl
Add pagination to the spotify wrapper to retreive all
songs in a playlist.
Add a thread count lock to the youtube-dl process to avoid
starting too many at once.

Signed-off-by: trivernis <trivernis@protonmail.com>
4 years ago
trivernis ca1f9e7ecf
Add spotify url support for music
Signed-off-by: trivernis <trivernis@protonmail.com>
4 years ago
trivernis 8a94518747
Add querying to play command
Signed-off-by: trivernis <trivernis@protonmail.com>
4 years ago
trivernis b6dd726c17
Reimplement queue and add guild settings
Signed-off-by: trivernis <trivernis@protonmail.com>
4 years ago
trivernis 1fad2950b5
Remove unrecognized command hook
Signed-off-by: trivernis <trivernis@protonmail.com>
4 years ago
trivernis 1d0fa1816c
Add hooks and README
Signed-off-by: trivernis <trivernis@protonmail.com>
4 years ago
trivernis a6a603dbb5
Add music commands with songbird
Signed-off-by: trivernis <trivernis@protonmail.com>
4 years ago
trivernis 6729a61190
Remove durability command and add item and enchantment command
Signed-off-by: trivernis <trivernis@protonmail.com>
4 years ago
trivernis 56a939a244
Add minecraft durability command
Signed-off-by: trivernis <trivernis@protonmail.com>
4 years ago