Перейти к основному содержимому

🎫 Система Тикетов

Описание

Файл: TicketSystem.py

Комплексная система управления тикетами, поддерживающая общие и технические потоки поддержки. Включает динамические панели, многоуровневые селекторы, HTML-транскрипты и эффективное управление базой данных.

Функции

  • Динамические панели: Создавайте несколько интерактивных панелей с выпадающими селекторами.
  • Система черновиков: Выборы пользователей сохраняются как "черновики" до подтверждения создания тикета.
  • HTML-транскрипты: Генерирует загружаемые HTML-транскрипты закрытых тикетов, включая вложения.
  • Авто-тегирование: Обновляет названия каналов и записи в базе данных с "Темой" на основе выбранных опций.
  • Система приоритетов: Назначает приоритеты (Низкий, Нормальный, Высокий) на основе шаблонов.
  • Управление ролями: Динамически добавляет/удаляет роли персонала в зависимости от типа тикета.

Команды

Конфигурация

КомандаОписание
/ticket setupИнициализация системы (Категория, Логи, Роли персонала).
/ticket install_defaultРазвёртывает предустановленный "Центр помощи" с 3 категориями.
/ticket debug cleanupПроверка согласованности базы данных.

Панели и шаблоны

КомандаОписание
/ticket panel createСоздать новую точку входа (Embed с кнопкой).
/ticket panel updateОбновить существующую панель.
/ticket panel deleteУдалить панель.
/ticket panel sendОпубликовать панель в канал.
/ticket selector addДобавить выпадающее меню к панели.
/ticket option addДобавить варианты в селекторы.
/ticket template newСоздать пресет тикета (Приветственное сообщение, Категория).
/ticket template link_selectorАктивировать шаблон из определённого выбора.

Действия персонала (внутри тикета)

КомандаОписание
/ticket claimНазначить тикет себе.
/ticket closeЗакрыть тикет и сгенерировать транскрипт.
/ticket reopenПереоткрыть закрытый тикет.
/ticket add @userДобавить пользователя в тикет.
/ticket remove @userУдалить пользователя.
/ticket renameИзменить название канала.
/ticket moveПереместить канал в другую категорию.

Схема базы данных

ТаблицаОписание
ticketsХранит активные/архивированные тикеты (status, opener_id, transcript_id).
ticket_panelsКонфигурация UI-панелей.
ticket_selectorsКонфигурации выпадающих меню.
ticket_selector_optionsВарианты внутри выпадающих меню.
ticket_templatesПресеты для новых тикетов.