Skip to content

Repository files navigation

SimpleMusicBot

Discord 上で音楽を再生する単体動作型 Bot です。
再生エンジン・コマンド・UI は ProjectMOMOKA の Music Cog を移植しています。

Music Playback

必要要件

  • Python 3.10 以上推奨
  • FFmpeg(PATH または music.ffmpeg_path
  • Discord Bot Token
  • (推奨)YouTube 再生安定化用の cookie ファイル / Deno または Node(yt-dlp EJS)

ファイル構成

music-bot-arona/
├── bot.py # 起動・設定読込・Cog ロードのみ
├── cogs/music/ # Momoka 由来 Music Cog
│ ├── music_cog.py
│ ├── guild_state.py
│ ├── music_views.py
│ ├── music_helpers.py
│ ├── error/errors.py
│ └── plugins/
│ ├── ytdlp_wrapper.py
│ ├── audio_mixer.py
│ └── process_log_bridge.py
├── config.default.yaml # 既定設定(Momoka music_config 準拠)
├── config.yaml # 実設定(自分で作成・Git 管理外)
├── requirements.txt
├── start.bat # Creates .venv if missing, installs deps, starts bot
└── docs/ # Markdown ドキュメント

インストール

pip install -r requirements.txt
copy config.default.yaml config.yaml

config.yamltoken を Discord Bot Token に置き換えてください。

Discord Developer Portal

Privileged Gateway Intents:

  • スラッシュコマンド(/play など)のみ使う場合は不要
  • プレフィックスコマンド(既定 #play など)も使う場合は MESSAGE CONTENT INTENT を ON にする

OAuth2 Scopes: bot, applications.commands
主要権限: Send Messages / Embed Links / Connect / Speak / Use Voice Activity など

起動

python bot.py

または start.bat.venv が無ければ自動作成し、依存を入れて起動)

コマンド一覧

コマンド説明
/play <query>曲名検索または URL を再生 / キュー追加
/seek <time>指定位置へシーク(1:30 / 90
/pause一時停止
/resume再開
/skipスキップ
/stop停止&キュークリア
/leaveVC 切断
/queueキュー表示
/nowplaying再生中表示
/shuffleキューシャッフル
/clearキュークリア
/remove <n>キューから削除
/volume <0-200>音量
/loop <off/one/all>ループ
/joinVC 接続

再生中は Components V2 の操作パネル(Pause / Skip / Stop / Loop / QLoop)も利用できます。

設定の要点(Momoka 準拠)

キー既定意味
music.default_volume20初期音量 (%)
music.max_queue_size10000キュー上限
music.max_guilds50同時保持ギルド状態上限
music.auto_leave_timeout3無人 VC 自動退出(秒)
music.max_playlist_items10000プレイリスト展開上限
music.inactive_timeout_minutes3非アクティブ状態掃除(分)
music.youtube_cookie_fileyoutube_cookies.txtYouTube cookie

詳細は docs/configuration.md を参照してください。

ライセンス

MIT

About

Discord Music Bot

Topics

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Used by

Contributors

Languages