# Przewodnik — Administrator Panel administratora (`/admin`) to jedno miejsce do konfiguracji całego systemu: struktura zgłoszeń (kategorie, pola, statusy, priorytety, SLA), automatyzacje (reguły SLA, wyzwalacze), użytkownicy i zespoły, treści (szablony, szybkie akcje, e-maile), wygląd/branding oraz integracje (LDAP, SMTP, BookStack, API). Domyślnie każde konto ląduje po zalogowaniu w panelu Klienta; przełącz się do panelu Administratora przez menu profilu (prawy górny róg). ## Kategorie i pola dodatkowe - **Kategorie / podkategorie** — nazwa + opis (widoczny klientowi przy wyborze). Podkategoria może mieć **domyślny priorytet**, nadawany automatycznie nowym zgłoszeniom w tej podkategorii. - **Pola dodatkowe** (custom fields) — typ (tekst / tekst długi / lista wyboru / checkbox / data / liczba), czy wymagane, opcje (dla listy wyboru). Każde pole przypisuje się do jednej lub wielu podkategorii z określoną kolejnością wyświetlania — te pola pojawiają się klientowi w formularzu zgłoszenia i operatorowi w widoku zgłoszenia. ## Użytkownicy - Lista użytkowników z rolami (**Klient / Operator / Administrator** — konto może mieć więcej niż jedną). Rola nadaje dostęp do odpowiedniego panelu. - **Pola użytkownika** — analogicznie do pól zgłoszenia, ale dla profilu użytkownika (np. Stanowisko, Dział, Firma, telefon) — mogą być mapowane na atrybut LDAP (`ldap_attribute`), żeby wypełniały się automatycznie przy synchronizacji z katalogiem. - **Synchronizuj z LDAP** — ręczne wymuszenie ponownej synchronizacji kont z katalogu (poza standardowym sync-on-login). - Konta lokalne (utworzone tu, z hasłem) logują się przez fallback e-mail + hasło lokalne, gdy dopasowanie po LDAP-owym atrybucie loginu się nie powiedzie — tak działa domyślne konto awaryjne `admin@example.com`. ## Zespoły Każdy zespół ma listę **członków** (operatorów) i listę **podkategorii**, za które odpowiada. Gdy w Konfiguracji włączone jest „automatyczne przypisywanie wg kategorii”, nowe zgłoszenie w danej podkategorii trafia od razu do właściwego zespołu. Operator spoza zespołu nie widzi jego kolejki (poza zgłoszeniami bez zespołu i przypisanymi mu bezpośrednio). ## Statusy, priorytety i SLA - **Statusy** mają trzy stałe etapy (`stage`): `new`, `open`, `closed`. Statusy „Nowe”, „Otwarty” i „Zamknięte” są zablokowane (`locked`) i nie można ich usunąć — pozostałe (W trakcie, Oczekuje na klienta, itd.) są w pełni edytowalne/usuwalne dowolnie w ramach etapu „open”. Każdy status ma nazwę, kolor i kolejność wyświetlania. - **Priorytety** — nazwa, kolor, kolejność. - **SLA** — dla każdego priorytetu: czas do pierwszej odpowiedzi (`response_mins`) i czas do rozwiązania (`resolution_mins`), w minutach. Priorytet z czasem rozwiązania = 0 nigdy nie jest liczony jako naruszenie SLA (np. priorytet „Brak”). Naruszenia sprawdza cykliczne zadanie co 15 minut (`tickets:check-sla-breaches`) i może powiadomić operatora. ## Automatyzacja SLA Reguły, które same zmieniają zgłoszenie po określonym czasie **ciszy ze strony klienta** (liczonym od ostatniej odpowiedzi klienta, a jeśli jeszcze nie odpowiedział — od utworzenia zgłoszenia). Każda reguła ma: - **Nazwę** i przełącznik **aktywna/nieaktywna**. - **Próg** w minutach. - Opcjonalne **zawężenie** — priorytet / kategoria (podkategoria) / zespół; puste pole = dowolny. Wszystkie warunki muszą być spełnione naraz. - **Akcję** — zmień priorytet / status / zespół / przypisanego operatora, oraz wartość docelową. Reguły sprawdza cykliczne zadanie co 15 minut (`automation:run-rules`, razem z `tickets:check-sla-breaches`). Akcja korzysta z tych samych mechanizmów co ręczna zmiana przez operatora — dostaje wpis w historii zgłoszenia (z dopiskiem „Automatyzacja: nazwa reguły”), wysyła standardowe powiadomienie dla tej zmiany i pojawia się na żywo w kolejce/widoku zgłoszenia. Reguła nie powtarza się dla tego samego zgłoszenia, dopóki klient znów nie napisze albo zgłoszenie nie zostanie zamknięte i otwarte ponownie — więc bezpiecznie zostawić kilka aktywnych reguł naraz, bez ryzyka zapętlenia się co 15 minut. ## Wyzwalacze W odróżnieniu od Automatyzacji SLA (działa po czasie ciszy klienta), wyzwalacze reagują **natychmiast** na zdarzenie w zgłoszeniu: utworzenie, dowolna zmiana pola, zmiana statusu/priorytetu/przypisania/zespołu/kategorii, nowa wiadomość publiczna. Każdy wyzwalacz ma: - **Zdarzenie**, na które reaguje. - **Warunki** (opcjonalne, wszystkie muszą być spełnione naraz — ORAZ) na polu statusu, priorytetu, zespołu, podkategorii, zgłaszającego, tematu lub treści. - **Akcje** wykonywane po kolei — ustaw status/priorytet/zespół/operatora, albo wyślij powiadomienie e-mail do zgłaszającego lub przypisanego operatora. Akcja „Wyślij powiadomienie e-mail” korzysta z **własnych szablonów wyzwalaczy** (sekcja „Szablony e-mail wyzwalaczy” na tej samej zakładce) — w pełni dodawalnych/edytowalnych/usuwalnych przez administratora, celowo osobnych od stałych szablonów opisanych niżej (te są przypisane 1:1 do zdarzeń systemowych i nie da się ich usunąć ani dodać nowego). Wyzwalacz może zmienić to samo pole, które sam sprawdza w warunku — zabezpieczenie przed zapętleniem: akcja, która tylko potwierdzałaby już ustawioną wartość, nic nie robi, a licznik głębokości zatrzymuje prawdziwy cykl między dwoma wyzwalaczami. ## Szybkie akcje odpowiedzi Przyciski w widoku zgłoszenia operatora, które **wysyłają odpowiedź i od razu zmieniają status** (np. „Wyślij i zamknij”) — konfigurowalne: etykieta, docelowy status, kolejność. Status jest tu „miękkim” odniesieniem (po kluczu) — usunięcie statusu w Admin nie usuwa powiązanej z nim szybkiej akcji, po prostu przestaje zmieniać status. ## Szablony odpowiedzi Gotowe teksty (zwykły tekst, bez HTML — pole odpowiedzi w kolejce to zwykły `