-
Notifications
You must be signed in to change notification settings - Fork 2.4k
/
example_options.ini
345 lines (266 loc) · 14.1 KB
/
example_options.ini
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
# This is the configuration file for MusicBot. Do not edit this file using Notepad.
# Use Notepad++ or a code editor like Visual Studio Code.
# For help, see: https://just-some-bots.github.io/MusicBot/
[Credentials]
# Your Discord bot account token. Required to run the bot.
Token = bot_token
# The bot supports converting Spotify links and URIs to YouTube videos and
# playing them. You can either enter your own Spotify developer app credentials
# below, or the bot will use public credentials to communicate with Spotify.
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".
OwnerID = auto
# This option determines which users have access to developer-only commands.
# You should leave this blank unless you know what you are doing.
DevIDs =
# This bot ignores other bots by default. You can add other bot's IDs here to
# allow MusicBot to listen to their messages.
BotExceptionIDs =
[Chat]
# Determines the prefix that must be used before commands in the Discord chat.
# e.g if you set this to *, the play command would be triggered using *play.
CommandPrefix = !
# Enable using commands with @[YourBotNameHere]
# The CommandPrefix is still available, but can be replaced with @ mention.
CommandsByMention = yes
# Restricts the bot to only listening to certain text channels.
# Space-separated list of text channel IDs.
BindToChannels =
# Setting this to "yes" will allow the MusicBot to work in any channel on servers
# which do not have a "bound" channel set above.
AllowUnboundServers = no
# Allows the bot to automatically join voice channels on startup.
# Space-separated list of voice channel IDs.
AutojoinChannels =
# If set to "yes", the bot will send a DM to the user who requested a song when their
# song begins to play, rather than posting a message in the text channel.
DMNowPlaying = no
# Disable now playing messages for entries automatically added by the bot, via the autoplaylist.
DisableNowPlayingAutomatic = no
# Force the bot to send "now playing" messages in specific text channels.
# If this is empty, the bot will send the messages in the channel where the song was requested.
NowPlayingChannels =
# If "yes", delete the "now playing" messages after a small period of time.
DeleteNowPlaying = no
[MusicBot]
# The volume of the bot's audio output, between 0.01 and 1.0.
DefaultVolume = 0.25
# The playback speed used by default for every song played by MusicBot.
# Must be a value between 0.5 and 100.0, inclusive.
# Default is 1.0, for normal playback speed.
DefaultSpeed = 1.0
# The number of people voting to skip in order for a song to be skipped successfully,
# whichever value is lower will be used. Ratio refers to the percentage of undefeaned, non-
# owner users in the channel.
SkipsRequired = 4
SkipRatio = 0.5
# Determines if downloaded videos will be saved to the audio_cache folder permanently.
# If "yes", videos will not be re-downloaded if queued again, at the cost of hard-drive space.
SaveVideos = yes
# Never purge videos from cache if they are listed in the auto playlist file.
# Only applies while SaveVideos option is enabled.
StorageRetainAutoPlay = yes
# Set a time limit for stored files. Set to 0 to disable.
# Files which aren't used for this period of time will be removed.
# On Linux/Mac, this uses last-access time. On Windows, file-creation time is used.
# Only applies when SaveVideos option is enabled.
StorageLimitDays = 0
# Set a size limit for the entire cache. Set to 0 to disable.
# Accepts exact number of bytes or a shorthand notation like 20 MB
# When storage exceeds this size, files with older access/creation times are removed first.
# Only applies when SaveVideos option is enabled.
StorageLimitBytes = 0
# Mentions the user who queued a song when it starts to play.
NowPlayingMentions = no
# Automatically joins the owner's voice channel on startup, if possible. The bot must be on
# the same server and have permission to join the channel.
AutoSummon = yes
# Start playing songs from the autoplaylist.txt file after joining a channel. This does not
# stop users from queueing songs, you can do that by restricting command access in permissions.ini.
UseAutoPlaylist = yes
# Sets if the autoplaylist should play through songs in a random order when enabled. If no,
# songs will be played in a sequential order instead.
AutoPlaylistRandom = yes
# Enable automatic skip of auto-playlist songs when a user plays a new song.
# This only applies to the current playing song if it was added by the auto-playlist.
AutoPlaylistAutoSkip = yes
# Remove songs from the auto-playlist if they are found in the song blocklist.
AutoPlaylistRemoveBlocked = yes
# Pause the music when nobody is in a voice channel, until someone joins again.
AutoPause = yes
# Automatically cleanup the bot's messages after a small period of time.
DeleteMessages = no
# If this and DeleteMessages is enabled, the bot will also try to delete messages from other
# users that called commands. The bot requires the 'Manage Messages' permission for this.
DeleteInvoking = no
# Regularly saves the queue to the disk. If the bot is then shut down, the queue will
# 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
# are debugging, or you want the bot to have a quieter console output.
DebugLevel = INFO
# Specify a custom message to use as the bot's status. If left empty, the bot
# will display dynamic info about music currently being played in its status instead.
# Status messages may also use the following variables in custom status messages:
# {n_playing} = Number of currently Playing music players.
# {n_paused} = Number of currently Paused music players.
# {n_connected} = Number of connected music players, in any player state.
#
# The following variables give access to information about the player and track.
# These variables may not be accurate in multi-guild bots:
# {p0_length} = The total duration of the track, if available. Ex: [2:34]
# {p0_title} = The track title for the currently playing track.
# {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
# Allows the person who queued a song to skip their OWN songs instantly, similar to the
# functionality that owners have where they can skip every song instantly.
AllowAuthorSkip = yes
# Enables experimental equalization code. This will cause all songs to sound similar in
# volume at the cost of higher processing consumption when the song is initially being played.
UseExperimentalEqualization = no
# Enables the use of embeds throughout the bot. These are messages that are formatted to
# look cleaner, however they don't appear to users who have link previews disabled in their
# Discord settings.
UseEmbeds = yes
# The amount of items to show when using the queue command.
QueueLength = 10
# Remove songs from the autoplaylist if an error occurred while trying to play them.
# If enabled, unplayable songs will be moved to another file and out of the autoplaylist.
# You may want to disable this if you have internet issues or frequent issues playing songs.
RemoveFromAPOnError = yes
# Whether to show the configuration for the bot in the console when it launches.
ShowConfigOnLaunch = no
# Whether to use legacy skip behaviour. This will change it so that those with permission
# do not need to use "skip f" to force-skip a song, they will instead force-skip by default.
LegacySkip = no
# Leave servers if the owner is not found in them.
LeaveServersWithoutOwner = no
# Use command aliases defined in aliases.json.
UseAlias = yes
# Use an alternate way to display the results from search command.
SearchList = no
# Set the amount of search results returned by default.
DefaultSearchResults = 3
# Allow per-guild command prefix override via 'setprefix' command.
EnablePrefixPerGuild = no
# Specify a custom message to use as the bots embed footer.
CustomEmbedFooter =
# Sets if you'd like the bot to deafen when joining a voice channel.
SelfDeafen = yes
# Sets if the bot should leave a voice channel when it becomes empty.
LeaveInactiveVC = no
# Sets how long the bot should wait before leaving a voice channel that is inactive.
# Only applies if LeaveInactiveVC is enabled.
# Time can be set in seconds or as a duration phrase containing any of: day, hour, minute, second
# Examples:
# .5 hours, 1 day, 77min
# Default value is 300 seconds.
LeaveInactiveVCTimeOut = 300
# Sets if if the bot should leave immediately once all songs have finished playing.
LeaveAfterQueueEmpty = no
# Set a period of seconds that a player can be paused or not playing before it will disconnect.
# This setting is independent of LeaveAfterQueueEmpty.
# Time can be set in seconds or using duration as described in LeaveInactiveVCTimeOut
# Set to 0 to disable. Default value is 0.
LeavePlayerInactiveFor = 0
# Round robin queue
# When enabled the bot will automatically rotate between user requested songs.
RoundRobinQueue = no
# This setting allows you to quickly enable or disable use of User Blocklist.
EnableUserBlocklist = yes
# This setting allows you to quickly enable or disable the use of Song Blocklist.
EnableSongBlocklist = no
# Allow MusicBot to use system ping command to detect network outage and availability.
# This is useful if you keep the bot joined to a channel or playing music 24/7.
# MusicBot must be restarted to enable network testing.
# By default this is disabled.
EnableNetworkChecker = no
# Enable saving all songs played by MusicBot to a global playlist, history.txt
SavePlayedHistoryGlobal = no
# Enable saving songs played by MusicBot to a per-guild playlist, history-{Guild_ID}.txt
SavePlayedHistoryGuilds = no
# Enable playback of local media files using the play command.
# When enabled, users can use: `play file://path/to/file.ext`
# 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.
# When disabled, only one log is kept and its contents are replaced each run.
# Default is 0, or disabled. Maximum allowed number is 100."
LogsMaxKept = 0
# Configure the log file date format used when LogsMaxKept is enabled.
# If left blank, a warning is logged and the default will be used instead.
# Learn more about time format codes from the tables and data here:
# https://docs.python.org/3/library/datetime.html#strftime-strptime-behavior
# Default value is: ".ended-%Y-%j-%H%m%S"
LogsDateFormat = .ended-%Y-%j-%H%m%S
# Path to your i18n file. Do not set this if you do not know what it does.
i18nFile =
# A folder path where you want to store downloaded media files. It can be left empty.
# This directory will be created if it does not exist.
# Default folder is named "audio_cache" in the current working directory.
# This directory is used for temporary storage even if SaveVideos is disabled.
AudioCachePath =
# A file path where you can add discord User ID numbers and prevent those users
# from using any bot commands.
# Leave this blank to use the default file location.
# MusicBot will create it if it does not exist.
# Default file: config/blocklist_users.txt
UserBlocklistFile =
# A file path where you can add URLs, video IDs, or other words and phrases
# to prevent users from playing track if their URL or song title contains any
# matched line from this block list file.
# Leave this blank to use the default file location.
# MusicBot will create it if it does not exist.
# Default file: config/blocklist_songs.txt
SongBlocklistFile =
# A directory path where playlists and related files can be stored.
# Default path is: config/playlists/
AutoPlaylistDirectory =
# An optional directory path where playable media files can be stored.
# All files and sub-directories can then be accessed by using 'file://' as a protocol.
# Example: file://some/folder/name/file.ext
# Maps to: ./media/some/folder/name/file.ext
MediaFileDirectory =