🎫 Ticket-System
Beschreibung
Datei: TicketSystem.py
Ein umfassendes Ticket-Management-System, das allgemeine und technische Support-Workflows unterstützt. Mit dynamischen Panels, mehrstufigen Selektoren, HTML-Transkripten und effizienter Datenbankverwaltung.
Funktionen
- Dynamische Panels: Erstellen Sie mehrere interaktive Panels mit Dropdown-Selektoren.
- Entwurfssystem: Benutzerauswahlen werden als "Entwürfe" gespeichert, bis sie die Ticketerstellung bestätigen.
- HTML-Transkripte: Generiert herunterladbare HTML-Transkripte geschlossener Tickets, einschließlich Anhängen.
- Auto-Tagging: Aktualisiert Kanalnamen und Datenbankeinträge mit dem "Betreff" basierend auf den ausgewählten Optionen.
- Prioritätssystem: Weist Prioritäten (Niedrig, Normal, Hoch) basierend auf Vorlagen zu.
- Rollenverwaltung: Fügt Staff-Rollen dynamisch hinzu/entfernt sie basierend auf dem Ticket-Typ (z. B. "Personalwesen" sieht HR-Tickets, aber nicht den Technischen Support).
Befehle
Konfiguration
| Befehl | Beschreibung |
|---|---|
/ticket setup | System initialisieren (Kategorie, Logs, Staff-Rollen). |
/ticket install_default | Stellt ein vorgefertigtes "Hilfe-Center" mit 3 Kategorien bereit. |
/ticket debug cleanup | Überprüfung der Datenbankkonsistenz. |
Panels & Vorlagen
| Befehl | Beschreibung |
|---|---|
/ticket panel create | Neuen Einstiegspunkt erstellen (Embed mit Button). |
/ticket panel update | Ein bestehendes Panel aktualisieren. |
/ticket panel delete | Ein Panel löschen. |
/ticket panel send | Ein Panel in einem Kanal posten. |
/ticket selector add | Ein Dropdown-Menü zu einem Panel hinzufügen. |
/ticket option add | Optionen zu Selektoren hinzufügen. |
/ticket template new | Eine Ticket-Voreinstellung erstellen (Willkommensnachricht, Kategorie). |
/ticket template link_selector | Eine Vorlage durch eine bestimmte Auswahl auslösen. |
Staff-Aktionen (Innerhalb des Tickets)
| Befehl | Beschreibung |
|---|---|
/ticket claim | Das Ticket sich selbst zuweisen. |
/ticket close | Ticket schließen & Transkript generieren. |
/ticket reopen | Ein geschlossenes Ticket wieder öffnen. |
/ticket add @user | Einen Benutzer zum Ticket hinzufügen. |
/ticket remove @user | Einen Benutzer entfernen. |
/ticket rename | Kanalnamen ändern. |
/ticket move | Kanal in eine andere Kategorie verschieben. |
Datenbankschema
| Tabelle | Beschreibung |
|---|---|
tickets | Speichert aktive/archivierte Tickets (status, opener_id, transcript_id). |
ticket_panels | Konfiguration für UI-Panels. |
ticket_selectors | Dropdown-Konfigurationen. |
ticket_selector_options | Optionen innerhalb von Dropdowns. |
ticket_templates | Voreinstellungen für neue Tickets. |