Remove Lavaplayer and migrate to Lavalink
Replaced the bot's audio handling system by removing Lavaplayer dependencies and migrating to a Lavalink v4 node. Updated `MusicManager`, `TrackScheduler`, and related classes to utilize the `LavalinkClient`. Refactored playlist and track loading logic, task integrations, and event dispatch to integrate with the remote node. Deprecated the custom Udio source, preserving references for a future plugin port. Documented configuration and deployment details for the new audio architecture.
This commit is contained in:
1 parent
01bfe22d22
commit
4cf7c47645
34 files changed
+1187
-479
No files matched your search
+47
-5
@@ -23,14 +23,39 @@ services:
|
||||
- netneutrality
|
||||
depends_on:
|
||||
- netneutrality-db
|
||||
- lavalink
|
||||
volumes:
|
||||
- ./logs:/app/logs
|
||||
environment:
|
||||
MYSQL_HOST: netneutrality-db
|
||||
MYSQL_PORT: 3306
|
||||
MYSQL_USER: java
|
||||
MYSQL_PASSWORD: password
|
||||
MYSQL_DATABASE: netneutrality
|
||||
- MYSQL_HOST=${MYSQL_HOST:-netneutrality-db}
|
||||
- MYSQL_PORT=${MYSQL_PORT:-3306}
|
||||
- MYSQL_USER=${MYSQL_USER:-java}
|
||||
- MYSQL_PASSWORD=${MYSQL_PASSWORD:-password}
|
||||
- MYSQL_DATABASE=${MYSQL_DATABASE:-netneutrality}
|
||||
- API_PORT=${NETNEUTRALITY_API_PORT:-9000}
|
||||
|
||||
# Lavalink >= 4.2.0 is required: the node handles DAVE end-to-end encryption,
|
||||
# so the bot no longer ships native encoders.
|
||||
lavalink:
|
||||
image: ghcr.io/lavalink-devs/lavalink:4.2
|
||||
container_name: lavalink
|
||||
restart: unless-stopped
|
||||
networks:
|
||||
- netneutrality
|
||||
depends_on:
|
||||
- ejs-api
|
||||
- webpo
|
||||
volumes:
|
||||
- ./lavalink/application.yml:/opt/Lavalink/application.yml:ro
|
||||
environment:
|
||||
- SERVER_PASSWORD=${NETNEUTRALITY_LAVALINK_PASSWORD:-youshallnotpass}
|
||||
- NETNEUTRALITY_CIPHER_URL=${NETNEUTRALITY_CIPHER_URL:-http://ejs-api:8001}
|
||||
- NETNEUTRALITY_CIPHER_PASSWORD=${NETNEUTRALITY_CIPHER_PASSWORD:-}
|
||||
- NETNEUTRALITY_OAUTH_TOKEN=${NETNEUTRALITY_OAUTH_TOKEN:-}
|
||||
- NETNEUTRALITY_POT_URL=${NETNEUTRALITY_POT_URL:-http://webpo:8080}
|
||||
- NETNEUTRALITY_PO_TOKEN=${NETNEUTRALITY_PO_TOKEN:-}
|
||||
- NETNEUTRALITY_VISITOR_DATA=${NETNEUTRALITY_VISITOR_DATA:-}
|
||||
|
||||
ejs-api:
|
||||
image: ghcr.io/kikkia/yt-cipher:master@sha256:4c5ec381ff57336cfc24822d2b526a5ad7cd0171f61065a1bbc87bb736842449
|
||||
container_name: ejs_signature_api
|
||||
@@ -39,8 +64,25 @@ services:
|
||||
- netneutrality
|
||||
# environment: # UNCOMMENT THIS LINE AND API_TOKEN TO ADD A PASSWORD
|
||||
# - API_TOKEN=test
|
||||
|
||||
webpo:
|
||||
image: ghcr.io/ashton045/webpo-generator
|
||||
container_name: webpo-generator
|
||||
environment:
|
||||
- HOST=${HOST:-::}
|
||||
- PORT=${PORT:-8080}
|
||||
- WORKERS=${WORKERS:-1}
|
||||
- QUEUE_SIZE=${QUEUE_SIZE:-32}
|
||||
- MAX_PENDING_REQUESTS=${MAX_PENDING_REQUESTS:-256}
|
||||
- REQUEST_TIMEOUT=${REQUEST_TIMEOUT:-30000}
|
||||
- CACHE_SIZE=${CACHE_SIZE:-100}
|
||||
- CACHE_TTL=${CACHE_TTL:-300000}
|
||||
- VISITOR_TTL=${VISITOR_TTL:-600000}
|
||||
- API_TOKEN=
|
||||
restart: unless-stopped
|
||||
volumes:
|
||||
netneutrality-db: null
|
||||
netneutrality-lavalink-plugins: null
|
||||
|
||||
networks:
|
||||
netneutrality: null
|
||||
Reference in new issue
Block a user