Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Bring bug fixes and combative methods into master #2430

Open
wants to merge 136 commits into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
136 commits
Select commit Hold shift + click to select a range
674da78
Adds 'unsave' command
obi23lipnik Mar 20, 2018
06f114b
Removes redundant newline and uses better wording on cmd-unsave-inval…
obi23lipnik Mar 20, 2018
f55ca8f
Adds 'autoplaylist [+, -, add, remove]' command and refactors functio…
obi23lipnik Mar 20, 2018
1d1ca21
Removes and applies better formatting (shorter lines)
obi23lipnik Mar 20, 2018
47a5e46
Removes redundat cmd handle
obi23lipnik Mar 20, 2018
de51079
Merge branch 'master' into pr/1544
BabyBoySnow Jul 30, 2023
870165f
Update PULL_REQUEST_TEMPLATE.md
BabyBoySnow Sep 10, 2023
22905cd
refactor: remove PatchedBuff (#2335)
TheerapakG Sep 24, 2023
8c05005
target borkeds rewrite of voice handling
BabyBoySnow Sep 24, 2023
8b316d2
fix: pass stderr bytesio for dpy voice rewrite (#2336)
TheerapakG Sep 24, 2023
3eacf3f
change video ID handling
BabyBoySnow Sep 28, 2023
b8c744e
typo.
BabyBoySnow Sep 28, 2023
f903623
Merge branch 'dev' into pr/1544
BabyBoySnow Sep 28, 2023
cc769bb
Remove redundant code and run black
BabyBoySnow Sep 28, 2023
c9f95d8
Merge pull request #1544 from obi23lipnik/playlist_manipulations
BabyBoySnow Sep 28, 2023
54086ba
Update requirements.txt
BabyBoySnow Sep 28, 2023
922f5f2
waiting for pypi release.
BabyBoySnow Sep 29, 2023
a19faa3
Feat: Leave inactive VC after x time.
BabyBoySnow Sep 29, 2023
5e6686e
I did not account for user moving to a different channel and taking t…
BabyBoySnow Sep 29, 2023
8acff12
forgot to run black over it
BabyBoySnow Sep 29, 2023
381634f
change from debug to info.
BabyBoySnow Oct 2, 2023
13e1878
Remove unnecessary list.
BabyBoySnow Oct 13, 2023
0823941
Should close #2265
BabyBoySnow Oct 13, 2023
764bc3b
Attempt to send it to a channel.
BabyBoySnow Oct 13, 2023
b5b6f32
No real point in having a different set for this
BabyBoySnow Oct 14, 2023
5cf64d8
bot.py: updated inactivity timeout logic
DestinyofYeet Oct 19, 2023
b1a1c8a
Update example_options.ini
BabyBoySnow Oct 19, 2023
fc49fe7
fixed bound channels and changed text as requested
DestinyofYeet Oct 19, 2023
03789a0
Merge remote-tracking branch 'origin/disconnect-timer' into disconnec…
DestinyofYeet Oct 19, 2023
1653440
Merge pull request #2348 from DestinyofYeet/disconnect-timer
BabyBoySnow Oct 19, 2023
ce179c1
apparently auto_paused was needed, whoops (#2349)
DestinyofYeet Oct 19, 2023
f9c3621
Disconnect timer (#2350)
DestinyofYeet Oct 19, 2023
2be8f19
bot.py: fixed move-message
DestinyofYeet Oct 26, 2023
773fa3d
Merge pull request #2351 from DestinyofYeet/move-message-fix
BabyBoySnow Oct 26, 2023
2dd4f73
fixed that the autoplaylist skips the current song playing when enabl…
DestinyofYeet Oct 26, 2023
1800656
Merge pull request #2352 from DestinyofYeet/fix-autoplaylist-skipping…
BabyBoySnow Oct 26, 2023
f141234
fix messages deleting even when set not to
BabyBoySnow Nov 6, 2023
5fe6209
Include git in Dockerfile (#2355)
phknot Nov 7, 2023
24e2798
only delete invoking if set to
BabyBoySnow Nov 11, 2023
e8eebff
Remove checks for request usage.
BabyBoySnow Nov 17, 2023
7295687
Squashed commit of the following:
BabyBoySnow Nov 22, 2023
dd98309
"Now playing" now respects DeleteNowPlaying option (#2358)
DestinyofYeet Nov 22, 2023
0d3eb97
Round robin queue (#2361)
DestinyofYeet Nov 28, 2023
7e2adb0
Adds shuffleplay
BabyBoySnow Nov 30, 2023
b691d45
Shuffle the playlist
BabyBoySnow Nov 30, 2023
8f36dad
Fix mentions in now playing
BabyBoySnow Nov 30, 2023
579eeb3
Clarification.
BabyBoySnow Nov 30, 2023
ff0cb1d
Shuffle play fixes
BabyBoySnow Nov 30, 2023
10371b5
More audio cache options. (#2362)
itsTheFae Nov 30, 2023
330b111
Allow cache config shorthand & clarify functionality. (#2363)
itsTheFae Dec 2, 2023
dce4dad
Fix spotify ssl issue (#2364)
itsTheFae Dec 4, 2023
2785ac3
Cache autoplay retention option & cache folder option. (#2365)
itsTheFae Dec 12, 2023
dcc703e
Typing compatible with 3.8 (#2370)
itsTheFae Dec 14, 2023
b557386
Prefix per server (#2367)
itsTheFae Dec 14, 2023
9c14a19
Inactive player timeout & timer touch ups. (#2366)
itsTheFae Dec 14, 2023
612f341
Fix stage channels
BabyBoySnow Dec 15, 2023
19a19e1
deafen if set to.
BabyBoySnow Dec 15, 2023
117ec17
oops, that was server deafen.
BabyBoySnow Dec 15, 2023
6083544
forgot black
BabyBoySnow Dec 15, 2023
3d0132e
small change
BabyBoySnow Dec 16, 2023
cd9c168
run black
BabyBoySnow Dec 16, 2023
8ce4ce2
rework repeat command
BabyBoySnow Dec 16, 2023
7b18023
Fix error when timer options are missing and default int is used. (#2…
itsTheFae Dec 16, 2023
e11464f
Better SSL Patch (#2371)
itsTheFae Dec 17, 2023
7cde7ad
Fix error thrown when non-yt link is used. (#2374)
itsTheFae Dec 18, 2023
9c9e6ca
Server specific data cleanup (#2377)
itsTheFae Dec 20, 2023
a08f792
Update flake8 config and run Flake8 over the whole project. (#2379)
itsTheFae Dec 22, 2023
0cf25c1
Stop spotify playlists fetch on clear command (#2378)
itsTheFae Dec 22, 2023
29a510d
Fixes, and rework
BabyBoySnow Dec 22, 2023
8e8a433
remove todo
BabyBoySnow Dec 23, 2023
13484ce
Fix skip tally and cmd prefix bugs (#2380)
itsTheFae Dec 27, 2023
eb26ab9
Pause resume updates (#2381)
itsTheFae Jan 7, 2024
7b4b153
Remove shuffle play
BabyBoySnow Jan 9, 2024
01773d4
Restart overhaul - with upgrade commands (#2373)
itsTheFae Jan 9, 2024
7694da0
Change command disconnect
BabyBoySnow Jan 11, 2024
0a0e171
add ping
BabyBoySnow Jan 19, 2024
8d8148f
Revert "add ping"
BabyBoySnow Jan 19, 2024
5810590
I haven't done anything productive in awhile
BabyBoySnow Jan 23, 2024
270da4d
Fix missing logs bug (now on dev) (#2384)
itsTheFae Jan 26, 2024
37bcf1f
fix for timer events in server specific data. (#2385)
itsTheFae Feb 5, 2024
8d11ae3
new black version
BabyBoySnow Feb 6, 2024
45f3b7d
update readme to include black
BabyBoySnow Feb 6, 2024
592a754
Optimize play commands (#2382)
itsTheFae Feb 8, 2024
fd6f854
Update playlist.py
BabyBoySnow Feb 8, 2024
331786c
Fix: File section is now validated (#2386)
DestinyofYeet Feb 10, 2024
d33cb6a
force black to run before commits.
BabyBoySnow Feb 11, 2024
04df6a7
Create pre-commit.yaml
BabyBoySnow Feb 11, 2024
516078e
name change
BabyBoySnow Feb 11, 2024
662fa3b
Fix StatusMessage handling, and removes dead code. (#2388)
itsTheFae Feb 13, 2024
b55b5c3
Overhaul startup and logging, bring back graceful dep failures. (#2387)
itsTheFae Feb 13, 2024
d741aa2
Refactor config internals. (#2389)
itsTheFae Feb 14, 2024
7dfd0be
More player updates (#2390)
itsTheFae Feb 14, 2024
0b9f37b
Update LICENSE
BabyBoySnow Feb 14, 2024
1d635ba
Graceful invalid queue (#2391)
itsTheFae Feb 14, 2024
2ce9dbc
actually make max 1000 lol
BabyBoySnow Feb 17, 2024
df97f58
remove pre commit as a requirment
BabyBoySnow Mar 6, 2024
611f4c0
lnp inside of summon cmd
BabyBoySnow Mar 7, 2024
03c10ea
update self summon to pass message
BabyBoySnow Mar 7, 2024
1ad2cd2
new black version
BabyBoySnow Mar 7, 2024
76e7d36
update binaries
BabyBoySnow Mar 17, 2024
440482f
Revert "update binaries"
BabyBoySnow Mar 22, 2024
0d3b768
update binaries
BabyBoySnow Mar 22, 2024
4823581
Revert "update binaries"
BabyBoySnow Mar 22, 2024
7ba155e
General stability updates. (#2394)
itsTheFae Apr 4, 2024
9ed048c
use essentials build
BabyBoySnow Apr 4, 2024
e935b0d
Merge branch 'dev' of https://github.com/Just-Some-Bots/MusicBot into…
BabyBoySnow Apr 4, 2024
4c287a4
Updates for the Installer and Updater scripts. (#2395)
itsTheFae Apr 5, 2024
2b2b88a
Round robin patch (#2396)
itsTheFae Apr 5, 2024
86e54e2
Add commands for config and permission editing and reloading. (#2397)
itsTheFae May 7, 2024
bea0b46
remove unused bootstrap and travis files. (#2400)
itsTheFae May 14, 2024
20e674d
Installer updates (#2401)
itsTheFae May 14, 2024
e2ad0fe
Seek and speed features (#2402)
itsTheFae May 15, 2024
c7ac43a
Add multi-playlist support and local media support. (#2403)
itsTheFae May 15, 2024
876ffb8
Bug fixes, QOL tweaks, and code clean up. (#2404)
itsTheFae May 16, 2024
dd96f1c
Add the follow command
itsTheFae May 17, 2024
c256eb9
Add latency and botlatency commands. (#2406)
itsTheFae May 17, 2024
a76f648
Add uptime command (#2407)
itsTheFae May 17, 2024
4c1326f
fix broken resolve
BabyBoySnow May 17, 2024
c79d72a
Merge branch 'pr/2405' into dev
BabyBoySnow May 17, 2024
ddbc8e6
add some with multiple
BabyBoySnow May 17, 2024
473f70c
Provide option for auto-unpause, default off. (#2408)
itsTheFae May 18, 2024
04be555
add sub command reset
BabyBoySnow May 26, 2024
58fa9d3
Update some command help text.
BabyBoySnow May 27, 2024
de021b5
Potentially fix high-cpu deadlock bug. (#2411)
itsTheFae May 31, 2024
ac333d2
Bug-fixes and more options. (#2416)
itsTheFae Jul 24, 2024
561e034
Cookie management command & bug fix (#2417)
itsTheFae Jul 29, 2024
2738e6d
Windows patches 2024-08-05 (#2418)
itsTheFae Aug 6, 2024
e5514bc
Fix missing playback_speed on streamed entries. (#2419)
itsTheFae Aug 6, 2024
f8301ca
Ytdlp oauth2 plugin integration (#2421)
itsTheFae Aug 30, 2024
7dc7ad6
Update Examples and adjust config parser. (#2422)
itsTheFae Aug 31, 2024
7c49c86
Bugfix 20240905 (#2423)
itsTheFae Sep 6, 2024
1235d9d
Merge branch 'dev' into review
BabyBoySnow Sep 7, 2024
30c8577
speed handled upstream
BabyBoySnow Sep 7, 2024
a572e71
Installer updates mostly (#2428)
itsTheFae Sep 28, 2024
86de796
Status msg total should use player count when paused counting is not …
itsTheFae Sep 29, 2024
8e9b966
Merge branch 'dev' into review
BabyBoySnow Oct 13, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@
*.pyc
~*/
.vscode/
*.service

audio_cache/
dectalk/
Expand Down
23 changes: 22 additions & 1 deletion config/example_aliases.json
Original file line number Diff line number Diff line change
@@ -1,8 +1,29 @@
{
"--comment": [
"Aliases allow you to rename or shorten existing commands. ",
"Alias names may contain anything, except for spaces. ",
"The keys must be valid commands, and can have simple, space separated arguments. ",
"Arguments passed by the user will be appended to any command arguments set here. ",
" ",
"For example, (replace _cmd_name_ with the command of your choice): ",
"This will map _cmd_name_ to multiple aliases, alias1 & a_long_alias ",
{
"_cmd_name_": ["alias1", "a_long_alias"]
},
" ",
"To alias a command with arguments, use something like the following: ",
{
"_cmd_name_ arg1 arg2 argN": ["macro_alias"]
},
"Lets say you have the following alias: ",
{"config set MusicBot": ["setcfg"]},
"Users can use `setcfg DefaultVolume 0.40` to set default playback volume to 40%. "
],

"play": ["p"],
"skip": ["s"],
"queue": ["q"],
"latency": ["ping"],
"summon": ["join", "connect", "come"],
"disconnect": ["leave", "stop"]
}
}
44 changes: 44 additions & 0 deletions config/example_options.ini
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,15 @@ Token = bot_token
Spotify_ClientID =
Spotify_ClientSecret =

# Sets the YouTube API Client ID, used by Yt-dlp OAuth2 plugin.
# Optional, unless built-in credentials are not working.
YtdlpOAuth2ClientID =

# Sets the YouTube API Client Secret key, used by Yt-dlp OAuth2 plugin.
# Optional, unless YtdlpOAuth2ClientID is set.
YtdlpOAuth2ClientSecret =


[Permissions]
# This option determines which user has full permissions and control of the bot.
# Only one user can be the bot's owner. You can generally leave this as "auto".
Expand Down Expand Up @@ -132,6 +141,10 @@ DeleteInvoking = no
# resume from where it left off.
PersistentQueue = yes

# Enable MusicBot to download the next song in the queue while a song is playing.
# Currently this option does not apply to auto-playlist or songs added to an empty queue.
PreDownloadNextSong = yes

# Determines what messages are logged to the console. The default level is INFO, which is
# everything an average user would need. Other levels include CRITICAL, ERROR, WARNING,
# DEBUG, VOICEDEBUG, FFMPEG, NOISY, and EVERYTHING. You should only change this if you
Expand All @@ -152,6 +165,9 @@ DebugLevel = INFO
# {p0_url} = The track url for the currently playing track.
StatusMessage =

# If enabled, status message updates will count and report paused players.
StatusIncludePaused = no

# Write what the bot is currently playing to the data/<server id>/current.txt FILE.
# This can then be used with OBS and anything else that takes a dynamic input.
WriteCurrentSong = no
Expand Down Expand Up @@ -252,6 +268,34 @@ SavePlayedHistoryGuilds = no
# to play files from the local MediaFileDirectory path.
EnableLocalMedia = no

# Allow MusicBot to automatically unpause when play commands are used.
UnpausePlayerOnPlay = no

# Experimental, HTTP/HTTPS proxy settings to use with ytdlp media downloader.
# The value set here is passed to `ytdlp --proxy` and aiohttp header checking.
# Leave blank to disable.
YtdlpProxy =

# Experimental option to set a static User-Agent header in yt-dlp.
# It is not typically recommended by yt-dlp to change the UA string.
# For examples of what you might put here, check the following two links:
# https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/User-Agent
# https://www.useragents.me/
# Leave blank to use default, dynamically generated UA strings.
YtdlpUserAgent =

# Experimental option to enable yt-dlp to use a YouTube account via OAuth2.
# When enabled, you must use the generated URL and code to authorize an account.
# The authorization token is then stored in the `data/auth.token` file.
# This option should not be used when cookies are enabled.
# Using a personal account may not be recommended.
YtdlpUseOAuth2 = no

# Optional youtube URL used at start-up for triggering OAuth2 authorization.
# This starts the OAuth2 prompt early, rather than waiting for a song request.
# Authorization must be completed before start-up will continue when this is set.
YtdlpOAuth2URL =


[Files]
# Configure automatic log file rotation at restart, and limit the number of files kept.
Expand Down
16 changes: 10 additions & 6 deletions config/example_permissions.ini
Original file line number Diff line number Diff line change
Expand Up @@ -73,14 +73,18 @@
; that the bot is already joined in the server. It is also expected that the user have ability to invoke summon command to
; use this option.
;
; Extractors = spotify:musicbot youtube youtube:playlist youtube:tab youtube:search
; Extractors = spotify:musicbot youtube generic soundcloud Bandcamp
; Specify yt-dlp extractor names that MusicBot will allow users to play media from.
; Each extractor name should be separated by spaces.
; If left empty, all services will be allowed. Including porn services.
; The yt-dlp project has a list of supported services here:
; Each extractor name should be separated by spaces or commas.
; If left empty, hard-coded defaults will be allowed.
; The yt-dlp project has a list of supported services / extractor names here:
; https://github.com/yt-dlp/yt-dlp/blob/master/supportedsites.md
;
; The extractor `spotify:musicbot` is provided by MusicBot, not yt-dlp.
; The extractor `spotify:musicbot` is provided by MusicBot, not by yt-dlp.
; To allow ALL services, including porn services, add "__" to the list, without quotes.
; Example to allow all:
;
; Extractors = __
;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

Expand Down Expand Up @@ -130,7 +134,7 @@ SkipWhenAbsent = no
BypassKaraokeMode = no
SummonNoVoice = no
SkipLooped = no
Extractors = generic youtube youtube:playlist youtube:tab youtube:search spotify:musicbot
Extractors = generic youtube spotify:musicbot Bandcamp soundcloud

; This group has full permissions.
[MusicMaster]
Expand Down
5 changes: 4 additions & 1 deletion config/i18n/en.json
Original file line number Diff line number Diff line change
Expand Up @@ -14,12 +14,15 @@
"cmd-save-exists": "This song is already in the autoplaylist.",
"cmd-save-invalid": "There is no valid song playing.",
"cmd-save-success": "Added <{0}> to the autoplaylist.",
"cmd-save-success-multiple": "Added {0} songs to the autoplaylist.",
"cmd-unsave-does-not-exist": "This song is not yet in the autoplaylist.",
"cmd-unsave-success": "Removed <{0}> from the autoplaylist.",
"cmd-autoplaylist-does-not-exist": "This song is not yet in the autoplaylist.",
"cmd-autoplaylist-invalid": "The supplied song link is invalid.",
"cmd-autoplaylist-option-invalid": "Invalid option \"{0}\" specified, use +, -, add, or remove",
"cmd-autoplaylist-success": "Removed <{0}> from the autoplaylist.",
"cmd-autoplaylist-add-all-empty-queue": "The queue is empty. Add some songs with `{0}play`!",
"cmd-save-all-exist": "All songs in the queue are already in the autoplaylist.",
"cmd-joinserver-response": "Click here to add me to a server: \n{}",
"cmd-play-spotify-album-process": "Processing album `{0}` (`{1}`)",
"cmd-play-spotify-album-queued": "Enqueued `{0}` with **{1}** songs.",
Expand Down Expand Up @@ -81,7 +84,7 @@
"cmd-resume-reply": "Resumed music in `{0.name}`",
"cmd-resume-none": "Player is not paused.",
"cmd-shuffle-reply": "Shuffled `{0}`'s queue.",
"cmd-clear-reply": "Cleared `{0}`'s queue",
"cmd-clear-reply": "Cleared `{0}'s` queue",
"cmd-remove-none": "There's nothing to remove!",
"cmd-remove-reply": "Removed `{0}` added by `{1}`",
"cmd-remove-missing": "Nothing found in the queue from user `%s`",
Expand Down
2 changes: 1 addition & 1 deletion install.bat
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ CD "%~dp0"

SET InstFile="%~dp0%\install.ps1"
IF exist %InstFile% (
powershell.exe -noprofile -executionpolicy bypass -file "%InstFile%"
powershell.exe -noprofile -executionpolicy bypass -file "%InstFile%" %*
) ELSE (
echo Could not locate install.ps1
echo Please ensure it is available to continue the automatic install.
Expand Down
Loading