Zum Hauptinhalt springen

🎫 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

BefehlBeschreibung
/ticket setupSystem initialisieren (Kategorie, Logs, Staff-Rollen).
/ticket install_defaultStellt ein vorgefertigtes "Hilfe-Center" mit 3 Kategorien bereit.
/ticket debug cleanupÜberprüfung der Datenbankkonsistenz.

Panels & Vorlagen

BefehlBeschreibung
/ticket panel createNeuen Einstiegspunkt erstellen (Embed mit Button).
/ticket panel updateEin bestehendes Panel aktualisieren.
/ticket panel deleteEin Panel löschen.
/ticket panel sendEin Panel in einem Kanal posten.
/ticket selector addEin Dropdown-Menü zu einem Panel hinzufügen.
/ticket option addOptionen zu Selektoren hinzufügen.
/ticket template newEine Ticket-Voreinstellung erstellen (Willkommensnachricht, Kategorie).
/ticket template link_selectorEine Vorlage durch eine bestimmte Auswahl auslösen.

Staff-Aktionen (Innerhalb des Tickets)

BefehlBeschreibung
/ticket claimDas Ticket sich selbst zuweisen.
/ticket closeTicket schließen & Transkript generieren.
/ticket reopenEin geschlossenes Ticket wieder öffnen.
/ticket add @userEinen Benutzer zum Ticket hinzufügen.
/ticket remove @userEinen Benutzer entfernen.
/ticket renameKanalnamen ändern.
/ticket moveKanal in eine andere Kategorie verschieben.

Datenbankschema

TabelleBeschreibung
ticketsSpeichert aktive/archivierte Tickets (status, opener_id, transcript_id).
ticket_panelsKonfiguration für UI-Panels.
ticket_selectorsDropdown-Konfigurationen.
ticket_selector_optionsOptionen innerhalb von Dropdowns.
ticket_templatesVoreinstellungen für neue Tickets.