一個基於 py-cord 開發的 Discord 機器人,專為提升語音社群互動性與管理效率而設計。具備動態語音頻道管理、高度自訂的猜歌遊戲以及自動化社群輔助功能。
- 自動創建:使用者進入指定的「點我創建」頻道後,機器人會自動建立專屬語音頻道並將成員移入。
- 自動清理:當動態頻道內最後一名成員離開時,機器人會自動刪除頻道以保持伺服器整潔。
- 權限管理系統:
/rename:更改頻道名稱(僅限擁有者與管理員)。/add_manager//remove_manager:管理頻道的協作管理員。/transfer:將頻道所有權轉移給他人。/info:查看目前動態頻道的擁有者與詳細資訊。
- 靈活題庫:支援單一藝人挑戰或「綜合挑戰」(隨機從所有
songs/JSON 中選題)。 - YouTube 整合:透過
yt-dlp進行背景串流播放,支援自訂起始時間與別名匹配。 - 智慧回答:搭配
/answer指令與 Discord Autocomplete 功能,讓回答更流暢。
- 連結修復:自動偵測指定頻道中的 Twitter/X 連結,並轉換為
fixvx.com以提供更好的 Discord 預覽。 - 自動踢除:自動偵測並踢除帶有特定惡意身分組 ID 的使用者,保護伺服器安全。
本專案支援 uv,這是一個極速的 Python 套件管理工具。
確保你的系統已安裝 FFmpeg(語音播放核心需求)。
# 安裝依賴
uv sync
# 啟動機器人
uv run main.pypip install -r requirements.txt
python main.py在根目錄建立 .env 檔案:
TOKEN=你的_DISCORD_BOT_TOKEN設定動態頻道的「母頻道」:
{
"creator_channel_id": 1234567890, // 「點我創建」頻道的 ID
"dynamic_channels": {} // 保持預設,機器人會自動維護此處資料
}在 songs/ 資料夾下新增 JSON 檔案(例如 example.json):
{
"singer": "歌手名稱",
"songs": [
{
"title": "歌曲名稱",
"url": "YouTube 網址",
"aliases": ["別名1", "別名2"],
"start_time": 30
}
]
}| 指令 | 描述 |
|---|---|
/info |
顯示目前所在動態頻道的資訊 |
/rename |
[擁有者/管理員] 重新命名頻道 |
/add_manager |
[擁有者] 新增一位頻道管理員 |
/remove_manager |
[擁有者] 移除一位頻道管理員 |
/transfer |
[擁有者] 將頻道擁有權完全轉移 |
/guess |
開始猜歌挑戰 |
/answer |
回答猜歌答案 |
本專案採 CC BY-NC 4.0 (姓名標示-非商業性 4.0 國際) 授權。
- 姓名標示:必須指明原作者姓名。
- 非商業性:不得將本軟體用於商業目的。
- 無擔保與免責:本軟體按「現狀」提供,作者不負擔任何風險賠償。