Pluginy dodają do Lavalink źródła i funkcje: inne strony z muzyką, teksty piosenek, typy wyszukiwania i więcej. Na nodzie PlayNHost dodajesz plugin na dwa sposoby: wrzucasz plik .jar pluginu do folderu plugins albo dodajesz linię dependency do application.yml i pozwalasz Lavalink go pobrać. W obu przypadkach ustawienia pluginu trafiają do sekcji plugins: w application.yml, a node wymaga restartu.
Co już jest
Twój node startuje z jednym pluginem: źródłem YouTube, jako plugins/youtube-plugin-1.18.2-playnhost1.jar, z ustawieniami w plugins:, youtube:. Lista pluginów w lavalink: jest pusta:
lavalink:
plugins: []
pluginsDir: "./plugins"
Nie dodawaj pluginu YouTube drugi raz, ani jako plik, ani jako linię dependency. Linia dependency dla niego z inną wersją sprawia, że Lavalink usuwa plik PlayNHost przy następnym starcie (Console pokazuje Deleted ./plugins/youtube-plugin-1.18.2-playnhost1.jar).
Sposób 1: prześlij plik pluginu
To działa nawet wtedy, gdy strona z plikiem pluginu nie działa, bo przy starcie nic się nie pobiera.
- Pobierz plik
.jarpluginu z jego własnej strony wydań, zwykle na GitHub. Wybierz wydanie przygotowane dla Lavalink 4. - W panelu zatrzymaj node.
- Otwórz Files, wejdź do folderu
pluginsi prześlij plik.jar: Jak przesyłać, edytować i zarządzać plikami serwera. - Dodaj ustawienia pluginu do
application.yml(zobacz niżej), zapisz i uruchom node.
Sposób 2: linia dependency
- Skopiuj linię dependency pluginu z jego strony. Ma trzy części:
group:name:version. - Zatrzymaj node, otwórz
application.ymlw Files i zamieńplugins: []wlavalink:na listę:
lavalink:
plugins:
- dependency: "com.github.topi314.lavasrc:lavasrc-plugin:VERSION"
repository: "https://maven.lavalink.dev/releases"
pluginsDir: "./plugins"
- Użyj dokładnej wersji ze strony pluginu oraz
repository, które ta strona podaje, jeśli jest. - Zapisz i uruchom node. Lavalink pobiera plik do
pluginsprzy tym starcie i go zachowuje.
Ustawienia pluginu
Każdy plugin czyta własny blok pod kluczem najwyższego poziomu plugins:, obok youtube:. Dodaj swój wewnątrz tej samej sekcji plugins:. Druga linia plugins: na najwyższym poziomie psuje plik.
plugins:
youtube:
enabled: true
# ... leave the YouTube lines as they are
lavasrc:
sources:
spotify: false
application.yml to YAML: wcinaj spacjami, nigdy tabulatorami, i każdy poziom ma być o dwie spacje głębiej niż poprzedni. Plugin, który potrzebuje kluczy (konta, client ID), może zatrzymać cały node przy starcie, jeśli włączysz go bez nich, więc uzupełnij jego klucze albo zostaw go wyłączonego.
Sprawdź, czy się wczytał
Uruchom node i przeczytaj Console. Każdy plugin, który się wczytuje, wypisuje linię Loaded przed linią o gotowości. Na nowym nodzie linia pluginu YouTube wygląda tak:
Loaded 'youtube-plugin-1.18.2-playnhost1.jar' (17 classes)
Lavalink is ready to accept connections.
Plugin, który dodałeś, dostaje własną linię Loaded z nazwą swojego pliku. Plugin z linii dependency jest pobierany przy pierwszym uruchomieniu, a potem wczytywany tak samo.
Jeśli node zatrzymuje się zamiast tego, błąd tuż nad tym zwykle wskazuje plugin albo linię application.yml, która jest winna: Błędy Lavalink i co oznaczają.
Warto wiedzieć
- Zrób backup, zanim zaczniesz edytować
application.yml: Jak tworzyć, pobierać i przywracać backupy. - Nie zmieniaj
server.portaniplugins.youtube.remoteCipher.url: panel ustawia oba przy każdym starcie. - Używaj tylko pluginów, którym ufasz. Plugin działa wewnątrz twojego noda z pełnym dostępem do niego, razem z hasłem.
- Strony zmieniają to, na co pozwalają botom, więc plugin źródła może wymagać aktualizacji. Gdy któryś przestanie działać, najpierw sprawdź stronę jego wydań.
- YouTube ma własny poradnik: Jak odtwarzać YouTube w Lavalink 4.



