Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

動態語音頻道管理機器人

一個功能強大的 Discord 機器人,用於管理和自動化動態語音頻道的創建、配置和管理。

功能特性

核心功能

  • 🎙️ 自動創建動態語音頻道
  • 🔧 靈活的頻道配置(名稱、人數限制、比特率等)
  • 🚫 黑名單系統,管理用戶訪問權限
  • 📊 實時頻道監控和管理
  • 🎛️ 支援自定義頻道位置和分類

進階功能

  • 💾 自動保存配置到 JSON 文件
  • 🔄 數據遷移和自動升級機制
  • ⚡ 速率限制控制,防止濫用
  • 📈 系統監控(CPU、內存、延遲)

安裝步驟

前提條件

  • Python 3.8+
  • pip(Python 包管理器)

設置

  1. 複製此倉庫

    git clone https://github.com/Kevin28576/dynamic-voice-bot.git
    cd dynamic-voice-bot
  2. 創建虛擬環境(推薦)

    python -m venv venv
    
    # Windows
    venv\Scripts\activate
    
    # macOS/Linux
    source venv/bin/activate
  3. 安裝依賴

    pip install -r requirements.txt
  4. 配置機器人

    複製 .env.example 並創建 .env 文件:

    cp .env.example .env

    編輯 .env 文件,填入你的 Discord Bot Token:

    DISCORD_TOKEN=your_actual_bot_token_here

    💡 提示:

  5. 運行機器人

    python main.py

使用方式

/default - 設置默認配置

設置動態語音頻道的默認行為:

  • /default name <頻道> <名稱> - 設置默認頻道名稱
  • /default limit <頻道> <人數> - 設置默認人數限制
  • /default bitrate <頻道> <比特率> - 設置默認比特率
  • /default position <頻道> [top/bottom] - 設置頻道位置
  • /default category <頻道> <分類> - 設置默認分類

/bot - 機器人信息

  • /bot info - 顯示機器人運行信息
  • /bot invite - 獲取邀請鏈接
  • /bot permcheck - 檢查權限

/blacklist - 黑名單管理

管理用戶和角色的訪問權限。

/help - 幫助信息

顯示所有可用命令。

項目結構

.
├── main.py                 # 入口點,啟動機器人
├── requirements.txt        # Python 依賴
├── .env.example           # 環境變數範本(複製此文件為 .env)
├── .env                   # 環境變數配置(不會提交到 Git)
├── .gitignore             # Git 忽略配置
├── README.md              # 本說明文件
├── data/                  # 配置數據(自動生成)
│   ├── configs.json       # 頻道配置
│   ├── channels.json      # 活躍頻道列表
│   └── blacklists.json    # 黑名單數據
└── bot/
    ├── client.py          # 主機器人類
    ├── utils/
    │   └── data.py        # JSON 文件管理工具
    └── ext/               # 功能擴展
        ├── bot.py         # 機器人信息命令
        ├── default.py     # 默認配置命令
        ├── blacklist.py   # 黑名單管理
        ├── dvc.py         # 動態語音頻道核心功能
        └── help.py        # 幫助命令

必要權限

機器人需要以下 Discord 權限:

  • 管理頻道 - 創建/刪除/移動語音頻道
  • 移動成員 - 將成員移動到動態頻道
  • 連接 - 連接語音頻道
  • 管理角色 - 設置頻道權限

配置文件

data/configs.json

存儲每個動態語音頻道的配置:

{
  "頻道ID": {
    "name": "@user的頻道",
    "limit": 99,
    "bitrate": 128000,
    "position": "bottom",
    "category": 12345678901
  }
}

data/channels.json

記錄當前活躍的動態語音頻道。

data/blacklists.json

儲存黑名單用戶和角色。

常見問題

Q: 機器人無法創建頻道? A: 檢查機器人是否有"管理頻道"和"移動成員"權限。使用 /bot permcheck 驗證。

Q: 頻道沒有自動刪除? A: 機器人會在所有成員離開後自動刪除空頻道。確保機器人保持連線。

Q: 如何更改頻道默認名稱? A: 使用 /default name <語音頻道> <新名稱> 命令。支持 @user 標籤自動填充用戶名。

開發

添加新功能

  1. bot/ext/ 創建新的 .py 文件
  2. 編寫 Cog 類並實現命令
  3. 在類末尾添加 setup() 函數
  4. 機器人會自動加載它

數據持久化

使用提供的 data.py 工具類:

from bot.utils import data

my_list = data.List("path/to/file.json")
my_dict = data.Dict("path/to/file.json")

# 修改數據
my_dict["key"] = "value"

# 保存到文件
await my_dict.save()

貢獻

歡迎提交 Pull Request 或報告 Issue!

注意: 此機器人已停止開發。如遇到任何問題,請報告 Issue。

About

一個功能強大的 Discord 機器人,用於管理和自動化動態語音頻道的創建、配置和管理。

Topics

Resources

Stars

Watchers

Forks

Releases

Packages

Contributors

Languages