Instrukcja dla administratorów i graczy Discorda

MatchDay Manager — instrukcja dla użytkowników Discorda

Ten dokument opisuje obsługę bota na serwerze Discord. Jest przeznaczony do publikacji w dokumentacji serwera — nie zawiera instrukcji instalacji ani konfiguracji backendu.

Role i dostęp

Administrator serwera konfiguruje role komendą:

/event-series-role manager_role:@Manager player_role:@Gracz

Tworzenie wydarzeń

Wydarzenie jednorazowe

Użyj /event-create. Możesz podać parametry w komendzie albo uruchomić ją bez parametrów, aby otworzyć formularz.

Formularz zawiera:

Opis jest pusty, a strefą czasową jest Europe/Warsaw. Kanał składu jest opcjonalny przy podawaniu parametrów bezpośrednio; domyślnie bot publikuje skład na kanale ogłoszenia. Wydarzenie jednorazowe nie jest automatycznie powtarzane.

Cykliczna seria

Użyj /event-series-create. Możesz podać parametry w komendzie albo uruchomić ją bez parametrów, aby otworzyć formularz. Formularz przyjmuje dni tygodnia, tytuł, godzinę, kanał ogłoszeń (ID lub wzmiankę <#ID>) i opcjonalną godzinę końca zapisów. Parametr notify_players włącza lub wyłącza prywatne przypomnienia dla graczy; domyślnie są wyłączone.

Jeśli przypomnienia są włączone, bot o 09:00 i 12:00 w strefie czasowej wydarzenia wysyła DM użytkownikom z przypisaną rolą Gracza, którzy nie oddali jeszcze żadnego głosu na to wydarzenie. Dowolny status — obecny, spóźniony lub nieobecny — oznacza odpowiedź i wyłącza przypomnienie dla tej osoby. Każda pora jest podejmowana najwyżej raz na użytkownika i wydarzenie. Jeśli użytkownik nie przyjmuje wiadomości prywatnych od bota, przypomnienie nie zostanie dostarczone.

Dni tygodnia mają numerację ISO:

Numer Dzień
1 poniedziałek
2 wtorek
3 środa
4 czwartek
5 piątek
6 sobota
7 niedziela

Przykłady cyklu: 1-7 (codziennie), 1-3 (poniedziałek–środa), 1,3,5 (poniedziałek, środa i piątek). Godzina zapisów nie może być późniejsza niż godzina wydarzenia. Seria używa strefy Europe/Warsaw, jeśli nie podano innej.

Bot publikuje nadchodzące wydarzenia serii w ruchomym oknie siedmiu dni. Zmiana harmonogramu nie edytuje ogłoszeń, które zostały już opublikowane.

Edycja i usuwanie serii

Jeśli kanał składu nie zostanie wskazany przy tworzeniu lub edycji serii, bot użyje kanału ogłoszeń.

Tło grafiki składu

Manager może ustawić lub zastąpić tło dla serii komendą /event-series-background:

Obsługiwane są obrazy PNG, JPEG i WebP do 8 MB. Obrazy są zapisywane w katalogu ./lineup-assets na hoście/VM i zachowują się po restarcie kontenerów. Pliki są rozdzielone podkatalogami według ID serwera Discord. Jedno tło obowiązuje dla grafik wydarzeń tej serii. Jeśli tło nie zostało ustawione, grafika użyje domyślnego boiska.

Wygenerowana grafika zawiera logo bota w lewym górnym rogu, napis „Lineup FMM” obok oraz wyśrodkowaną, opcjonalną nazwę drużyny poniżej. Murawa w perspektywie i gracze zajmują dolne trzy czwarte grafiki. Większe ikony piłkarzy i pogrubione nazwy graczy są rozmieszczone według wybranej formacji; nazwy pozycji nie są drukowane. Grafikę zapisuje się jako lineup-<event_id>.jpg w katalogu serwera, a następnie publikuje na kanale pod listą składu. Kliknięcie Publish Lineup otwiera formularz, w którym manager może podać nazwę drużyny lub zostawić pole puste. Po publikacji panel kreatora zostaje zamknięty. Katalog lineup-assets należy uwzględnić w kopiach zapasowych.

Lista aktywnych wydarzeń

/event-list pokazuje prywatną listę nadchodzących, opublikowanych wydarzeń, pogrupowaną na wydarzenia cykliczne i jednorazowe. Wszystkie wydarzenia cykliczne są zebrane w jednej sekcji — komenda /event-series-remove confirm:Tak usuwa całą serię, jej przyszłe wydarzenia i ogłoszenia. Wydarzenia jednorazowe są wyraźnie oddzielone i nie są usuwane tą komendą. Tytuł każdego wydarzenia prowadzi do jego ogłoszenia. Lista pokazuje do 12 najbliższych pozycji.

Zapisy na wydarzenie

W ogłoszeniu wydarzenia dostępne są trzy przyciski:

Do głosowania wymagana jest rola Gracza. Ponowne kliknięcie własnego statusu usuwa głos; kliknięcie innego przycisku zmienia odpowiedź. Lista zapisanych, spóźnionych i nieobecnych jest aktualizowana w ogłoszeniu. Głos 🚫 nie oznacza zapisu na mecz i nie pojawia się na liście graczy do składu.

Jeśli wydarzenie ma termin zapisów, bot blokuje głosowanie po wskazanej godzinie. Manager może też ręcznie zamknąć zapisy wcześniej.

Zarządzanie wydarzeniem

W ogłoszeniu managera znajdują się przyciski:

Zmiany w przyciskach Edit, Finish i Lineup wymagają roli Managera.

Przygotowanie i publikacja składu

  1. Po zamknięciu zapisów wybierz Lineup.
  2. Wybierz formację 11-osobową. Przy edycji istniejącego składu wybór tej samej formacji zachowuje przypisania; zmiana formacji czyści je.
  3. Przypisz do pozycji zapisanych lub spóźnionych graczy. Tego samego gracza nie można przypisać do dwóch pozycji.
  4. Wybierz Pusty, jeśli pozycja ma pozostać wolna, albo Testy, aby zarezerwować ją dla zawodnika testowego spoza grupy.
  5. Panel pokazuje pełny podgląd 11 pozycji. Selektory edycji wyświetlają do 4 pozycji naraz — użyj przycisków nawigacji, aby przejść między stronami.
  6. Cancel zamyka kreator bez zapisywania i publikowania zmian. Publish Lineup zapisuje skład i publikuje tekstową listę, a bezpośrednio pod nią grafikę na kanale składu. Po publikacji panel kreatora zostaje zamknięty, a przycisk Lineup w ogłoszeniu zmienia się na Locked. Kliknięcie Locked ponownie poprosi o potwierdzenie przed otwarciem kreatora i ponowną publikacją.

Jeśli manager nie skonfigurował osobnego kanału składu, bot publikuje listę i grafikę na kanale ogłoszenia. Gracze w opublikowanym składzie są oznaczeni wzmiankami Discorda, ale bot nie wysyła im powiadomień. Bot musi mieć na tym kanale uprawnienie Załączanie plików.