Транскрипты и логи
Транскрипт — HTML-файл со всей перепиской тикета, создаётся при закрытии. Лог — поток событий (открыт, закрыт, взят в работу…) в канал логов (категории или сервера); в веб-панели события видны в ленте тикета.
Транскрипт
| Вопрос | Ответ |
|---|---|
| Когда создаётся | При любом закрытии: кнопкой, командой, автозакрытием, при выходе автора, из веб-панели — если не выключено «Сохранять транскрипт при закрытии» (Настройки → Логи или вкладка «Логи» категории); тогда файла нет ни в каналах, ни в панели, а переписка в базе и поиск остаются. /ticket delete транскрипт не делает. |
| Что внутри | Все сообщения канала с автором и временем, вложения ссылками, embed’ы, приветствие и ответы формы. |
| Куда отправляется | Файлом — в один канал: канал транскриптов (категория → сервер), а если он не задан — в канал логов, когда в «Что писать в лог» отмечен «Транскрипт». И всегда — в веб-панель → Транскрипты. В личные сообщения — пока нет: Lolka не доставляет личные сообщения от ботов. |
| Упоминания | Пользователи, роли и каналы показываются именами (@Егор, @Модератор, #общий) — как в чате; имена запоминаются в момент закрытия, поэтому не пропадают, когда человек уходит с сервера. Если имя неизвестно — голый id. Клик по упоминанию копирует id. Так же в карточке тикета в веб-панели. |
| Кто видит | Персонал и админы — в канале и в веб-панели. Автор — если у него есть доступ к каналу транскриптов. Приватный тикет — исключение: его транскрипт не уходит в канал транскриптов, а в веб-панели его видят только администраторы, взявший, тот, кто сделал тикет приватным, и участники. |
| Сколько хранится | По сроку хранения сервера — по умолчанию 180 дней после закрытия, не больше года (Настройки → Хранение); раньше — если тикет уничтожен в веб-панели или выполнен полный /ticket reset. Автоудаление каналов транскрипт не трогает; файл, отправленный в канал транскриптов, остаётся в канале. |
Пусто в обоих — файл уходит в канал логов (если в лог пишется «Транскрипт»); в веб-панели он есть всегда.
Раздел «Транскрипты» в веб-панели
Таблица: номер, автор, категория, сколько сообщений, дата закрытия. Действия — открыть превью, скачать HTML, скачать все одним ZIP-архивом. Кнопка «Транскрипт» в закрытом канале отдаёт файл только нажавшему (или, если так настроено, кладёт его в канал тикета). Не чаще раза в минуту: каждому — свой файл, в канал тикета — один на всех.
Поиск
Одно поле ищет сразу в двух местах: по списку транскриптов (номер, тема, автор) и по тексту переписки. Находки в переписке — ниже списка: тикет, сколько совпадений и до трёх кусков текста вокруг слова, со ссылками на транскрипт и на сам тикет. Находятся и тикеты, у которых транскрипт выключен, — переписка хранится в базе.
Логи
Каждое событие — embed с номером тикета, панелью, автором и деталями (причина закрытия, кто закрыл). Что писать в лог, задаётся один раз в настройках сервера; отмечено всё — пишутся все события (и новые, если появятся), ничего не выбрано — лог не пишется. Категория может задать свой список — тогда для её тикетов действует он; выключить лог только для категории нельзя: пустой список у неё значит «как на сервере».
Сюда же бот сам пишет, если у него отняли нужные права («Управлять каналами», «Управлять ролями» и другие): раз в сутки он сверяет свои права и сообщает, чего не хватает и что из-за этого не работает, — и ещё раз, когда права вернули. Одно и то же каждый день не повторяется.
События
ticket_created- Событие
- Открыт
- Детали в логе
- Автор, категория, тема
ticket_closed- Событие
- Закрыт
- Детали в логе
- Кто закрыл, причина
ticket_reopened- Событие
- Переоткрыт
- Детали в логе
- Кто
ticket_deleted- Событие
- Удалён
- Детали в логе
- Кто
ticket_claimed- Событие
- Взят в работу / передан
- Детали в логе
- Сотрудник (при передаче — кому и кто)
ticket_unclaimed- Событие
- Тикет снят с сотрудника
- Детали в логе
- Кто
ticket_renamed- Событие
- Переименован
- Детали в логе
- Новое имя, кто
ticket_escalated- Событие
- Эскалирован
- Детали в логе
- Из какой категории в какую
ticket_private- Событие
- Приватность
- Детали в логе
- Кто скрыл тикет от персонала или вернул
transcript_saved- Событие
- Транскрипт сохранён
- Детали в логе
- Канал с файлом (если файл сам ушёл в канал логов — строки нет)
message_deleted- Событие
- Сообщение удалено в тикете
- Детали в логе
- Автор, текст
user_added- Событие
- Участник добавлен
- Детали в логе
- Кто кого
user_removed- Событие
- Участник убран
- Детали в логе
- Кто кого
Раздел «Логи» в веб-панели
Действия в веб-панели: кто, что и когда изменил, панель, детали — плюс ошибки бота. Не зависит от канала логов и фильтра событий. Действия в канале Lolka (взятие кнопкой, /ticket close) сюда не пишутся — они в ленте событий тикета.
