Skip to content

由 Lavalink 驅動且擁有眾多功能且完全開源、免費的音樂機器人

License

Notifications You must be signed in to change notification settings

Nat1anWasTaken/Lava

Repository files navigation

Contributors Forks Stargazers Issues MIT License


Logo

Lava

由 Lavalink 驅動且擁有眾多功能且完全開源、免費的音樂機器人
閱讀更多 »

English ·
試用 · 支援群組 · 回報問題 · 請求功能

目錄
  1. 螢幕截圖
  2. 開始使用
  3. 用法
  4. 設定
  5. 計畫
  6. 授權
  7. 貢獻

螢幕截圖

播放器

(回到頂部)

開始使用

如果你只是想體驗的話,你可以到 Yeecord 直接使用裡面的 Lava#8364

一鍵架設

你可以透過 LavaLauncher 這個一鍵式腳本,你可以在裡面按照教學一步一步創建 Lavalink 節點 和 Discord 機器人

Pterodactyl (翼手龍)

為了方便使用,我們提供 Pterodactyl Egg 並整合了 Lavalink 來方便架設 Lava 機器人

你可以透過 這裡 來下載 Lava 的 Egg 檔案並匯入.

Docker

Docker compose

確保 Docker 已經安裝在你的電腦或伺服器上,接著:

  1. Clone 這個 Repository
git clone https://github.com/Nat1anWasTaken/Lava.git
  1. cd 到專案目錄
cd Lava
  1. example.stack.env 重新命名為 stack.env
mv example.stack.env stack.env

填入 stack.env 的內容

  1. 啟動
docker compose up
Docker CLI

確保 Docker 已經安裝在你的電腦或伺服器上,接著:

  1. 拉取映像檔
docker pull ghcr.io/nat1anwastaken/lava:latest
  1. 設置好你的 Lavalink 節點,並將其 IP 和 Port 填入 configs/lavalink.json,如果你懶得架設 Lavalink,請使用 Docker Compose
{
    "host": "Lavalink 節點 IP",
    "port": "Lavalink 節點 Port"
}
  1. 創建一個 stack.env 檔案,並填入以下內容
TOKEN=機器人 Token
SPOTIFY_CLIENT_ID=Spotify client id
SPOTIFY_CLIENT_SECRET=Spotify client secret
  1. 啟動機器人
docker run -it \
  --name lava \
  --volume "./configs:/app/configs" \
  --env-file stack.env \
  --restart unless-stopped \
  ghcr.io/nat1anwastaken/lava:latest

(回到頂部)

用法

在成功架設起機器人並邀請進伺服器後,你可以直接使用 /play 指令播放音樂,就像上方的截圖一樣

每個指令的用途都寫在了指令描述裡,你可以透過他們來學會如何使用這個機器人

(回到頂部)

Lavalink 配置

Warning

由於 YouTube 的種種限制,必須填入一些驗證資訊才能使音樂服務正常工作,具體方式請詳閱下方教學。

首先,請先使用 pip install -r requirements.txt 安裝所有必要的套件
安裝完後進入到 Lava 的資料夾運行 docker run quay.io/invidious/youtube-trusted-session-generator
運行後你會看到終端輸出以下內容:

visitor_data: your visitor_data
po_token: your po_token

打開 configs/application.yml 後找到以下配置資訊

plugins:
  youtube:
    pot:
      token: "paste your po_token here"
      visitorData: "paste your visitor_data here"

隨後將你獲得的 po_tokenvisitor_data 分別填入 tokenvisitorData 中即可完成配置

(回到頂部)

設定

Lava 提供了一些簡單的設定讓你能夠輕鬆地自定義你的音樂機器人,像是:

進度條

你可以透過修改 configs/icons.json 來自定義進度條要使用的表情符號

{
    "empty": "",
    "progress": {
        "start_point": "",
        "start_fill": "",
        "mid_point": "",
        "end_fill": "",
        "end_point": "",
        "end": ""
    },
    "control": {
        "rewind": "",
        "forward": "",
        "pause": "⏸️",
        "resume": "▶️",
        "stop": "⏹️",
        "previous": "⏮️",
        "next": "⏭️",
        "shuffle": "🔀",
        "repeat": "🔁",
        "autoplay": "🔥"
    }
}

狀態

你可以透過修改 configs/activity.json 來自定義機器人的狀態

{
    "type": 0, // 0: 正在玩, 1: 正在直播, 2: 正在聆聽, 3: 正在觀看
    "name": "音樂", // 狀態文字
    "url": "" // 直播連結(僅適用於直播狀態)
}

(回到頂部)

計畫

計畫已遷移至 Projects

(回到頂部)

授權

這個專案基於 MIT License,查看 LICENSE.txt 來獲取更多資訊

貢獻

你可以前往 CONTRUBUTING.md 來查看完整的貢獻指南