Commit Graph

54 Commits (main)

Author SHA1 Message Date
trivernis 9bfb35dbce
Fix yt-dlp
ci/woodpecker/push/build Pipeline failed Details
ci/woodpecker/tag/container Pipeline was successful Details
4 months ago
trivernis 84eaf56810
Update serenity additions 2 years ago
trivernis 118832036e
Remove lavalink dependencies and update to new serenity 2 years ago
trivernis 065fc688ad
Run Rustfmt 2 years ago
trivernis 26c7df783b
Remove diesel and use sea orm instead
Signed-off-by: trivernis <trivernis@protonmail.com>
2 years ago
trivernis 2ffdd1c9f9
Replace log with tracing
Signed-off-by: trivernis <trivernis@protonmail.com>
2 years ago
trivernis 38f2be08e4
Fix uptime information in status command
Signed-off-by: trivernis <trivernis@protonmail.com>
2 years ago
trivernis 74a22ccce9
Update lavalink-rs to the latest git version
Signed-off-by: trivernis <trivernis@protonmail.com>
3 years ago
trivernis 0ddee0f179
Add inspirobot command
Signed-off-by: trivernis <trivernis@protonmail.com>
3 years ago
trivernis 3d3568a5ea
Move bot_serenityutils to separate crate
Signed-off-by: trivernis <trivernis@protonmail.com>
3 years ago
trivernis 726bee497a
Fix handling of forced vc disconnect
Signed-off-by: trivernis <trivernis@protonmail.com>
3 years ago
trivernis bc3cdb0cfb
Add auto deafen on voice channel join
Signed-off-by: trivernis <trivernis@protonmail.com>
3 years ago
trivernis 32ba3d8bf0
Fix pause being ignored on skip
Signed-off-by: trivernis <trivernis@protonmail.com>
3 years ago
trivernis ef6bb00b21
Add equalize command
Signed-off-by: trivernis <trivernis@protonmail.com>
3 years ago
trivernis df2f4786fd
Add equalizer command
Signed-off-by: trivernis <trivernis@protonmail.com>
3 years ago
trivernis 4f250b5375
Fix database loaded songs not having a thumbnail
Signed-off-by: trivernis <trivernis@protonmail.com>
3 years ago
trivernis af4a83e9ed
Add error messages to unsuccessful plays
Signed-off-by: trivernis <trivernis@protonmail.com>
3 years ago
trivernis 18cd1e7d28
Add autoleave and fix some bugs
Signed-off-by: trivernis <trivernis@protonmail.com>
3 years ago
trivernis b2ba31a9e9
Reimplement all music related functionality in MusicPlayer struct
Signed-off-by: trivernis <trivernis@protonmail.com>
3 years ago
trivernis 6876a1bb1a
Change music backend to lavalink
Signed-off-by: trivernis <trivernis@protonmail.com>
3 years ago
trivernis 8209c31469
Add more information to mc item command
Signed-off-by: trivernis <trivernis@protonmail.com>
3 years ago
trivernis 6f4d9df4b7
Switch to youtube-metadata for basic video information fetching
Signed-off-by: trivernis <trivernis@protonmail.com>
3 years ago
trivernis 9cc9b720e2
Fix song database lookup being slow with spotify playlists
Signed-off-by: trivernis <trivernis@protonmail.com>
3 years ago
trivernis c0fce89a33
Add hashtag filter to song name cleaning regex
Signed-off-by: trivernis <trivernis@protonmail.com>
3 years ago
trivernis 017f1e8f46
Change cleaing of song names for spotify search
Now the regex is applied before all nonalphanumeric chars are deleted.
Additionally everything in square brackets will be deleted.

Signed-off-by: trivernis <trivernis@protonmail.com>
3 years ago
trivernis 658bc7fdc5
Add feedback button and improve song results
Signed-off-by: trivernis <trivernis@protonmail.com>
3 years ago
trivernis 9931e75d8f
Add automatically adding youtube songs to store
Signed-off-by: trivernis <trivernis@protonmail.com>
3 years ago
trivernis bba12ff763
Add move_song command
Signed-off-by: trivernis <trivernis@protonmail.com>
3 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>
3 years ago
trivernis bf29b51092
Change music NowPlaying embed to be created as a menu
Signed-off-by: trivernis <trivernis@protonmail.com>
3 years ago
trivernis 45d2ac84b1
Add enquote util and change run_command_async
The new enquote function is used to enquote command input.
For simplicity reasons the run_command_async doesn't read from
stdout and stderr separately anymore but uses `.output().await`
instead.

Signed-off-by: trivernis <trivernis@protonmail.com>
3 years ago
trivernis 4d290a5091
Bump version and cleanup code
Signed-off-by: trivernis <trivernis@protonmail.com>
3 years ago
trivernis fd13f7ae64
Reimplement shuffle for VecDeque in coreutils
Introduced the new trait Shuffle that is implemented for
VecDeque and shuffles it. Previously the VecDeque
was shuffled with a function provided in the main utils module.

Signed-off-by: trivernis <trivernis@protonmail.com>
3 years ago
trivernis d2ea577762
Move run_command_async to bot-coreutils
Signed-off-by: trivernis <trivernis@protonmail.com>
3 years ago
trivernis e4a8334b63
Add timeout to qalc command
Signed-off-by: trivernis <trivernis@protonmail.com>
3 years ago
trivernis 8f98399ea9
Sanitize input of qalculate
Signed-off-by: trivernis <trivernis@protonmail.com>
3 years ago
trivernis 9d4ed2dfb5
Add qalc command and improve README
Signed-off-by: trivernis <trivernis@protonmail.com>
3 years ago
trivernis 2d980111bc
Change database operations to be async
Signed-off-by: trivernis <trivernis@protonmail.com>
3 years ago
trivernis 0d43e8294e
Change dj role to be optional
Signed-off-by: trivernis <trivernis@protonmail.com>
3 years ago
trivernis 69e7a2a18f
Add autodelete setting and sticky np embed
Signed-off-by: trivernis <trivernis@protonmail.com>
3 years ago
trivernis f36cf5a477
Change now playing to update automatically
Signed-off-by: trivernis <trivernis@protonmail.com>
3 years ago
trivernis 750ee7d0dc
Add lyrics command and format playlists list differently
Signed-off-by: trivernis <trivernis@protonmail.com>
3 years ago
trivernis 6d75b840b4
Switch to diesel with postgres for the database
Signed-off-by: trivernis <trivernis@protonmail.com>
3 years ago
trivernis 5ab22fd343
Add feature to automatically leave when the voicechannel is empty
Signed-off-by: trivernis <trivernis@protonmail.com>
3 years ago
trivernis 6c9df7e044
Add shutdown and pause command
Signed-off-by: trivernis <trivernis@protonmail.com>
3 years ago
trivernis b4e874ae07
Add logging with fern
Signed-off-by: trivernis <trivernis@protonmail.com>
3 years ago
trivernis 288675c2ea
Change song fetching to be lazy
Signed-off-by: trivernis <trivernis@protonmail.com>
3 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>
3 years ago
trivernis ca1f9e7ecf
Add spotify url support for music
Signed-off-by: trivernis <trivernis@protonmail.com>
3 years ago
trivernis 8a94518747
Add querying to play command
Signed-off-by: trivernis <trivernis@protonmail.com>
3 years ago