Account muted

Материал из World of WarCraft Developers Wiki
Перейти к навигации Перейти к поиску

Таблица account_muted

Таблица account_muted из базы данных auth хранит историю “мутов” (запретов на чат) для аккаунтов. Каждая запись описывает один факт выдачи мута: когда выдан, на какой срок, кем и по какой причине. Первичный ключ составной (guid, mutedate), чтобы один и тот же аккаунт мог иметь несколько записей мута в разные моменты времени (история).

Структура таблицы

Field Type Attributes Key Null Default Extra
guid int UNSIGNED PRIMARY (guid, mutedate) NO 0 COMMENT 'Global Unique Identifier'
mutedate int UNSIGNED PRIMARY (guid, mutedate) NO 0
mutetime int UNSIGNED NO 0
mutedby varchar(50) CHARACTER SET utf8mb4, COLLATE utf8mb4_unicode_ci NO
mutereason varchar(255) CHARACTER SET utf8mb4, COLLATE utf8mb4_unicode_ci NO

guid

Идентификатор аккаунта, к которому относится мут. Это значение является ID из таблицы account (поле `account.id`).

Пример: 42

mutedate

Дата/время выдачи мута, хранится как целое число (обычно Unix timestamp в секундах). Входит в состав первичного ключа, чтобы фиксировать историю мутов (несколько записей для одного аккаунта).

Пример: 1700000000

mutetime

Длительность мута. В типовой логике ядра это значение задаётся “на сколько минут замьютить” (duration), а не “дата окончания” — окончание вычисляется из `mutedate + mutetime` (в минутах, приведённых к секундам) либо хранится/используется сервером согласно его реализации.

Значение Смысл
0 Без мута / не применимо (в зависимости от логики сервера запись может быть “пустой” или устаревшей)
> 0 Длительность мута (обычно в минутах)

Пример: 60

mutedby

Кто выдал мут (ник/учётка ГМа/администратора или системная метка). Поле служит для аудита и администрирования.

Пример: GM_Admin

mutereason

Причина мута (произвольный текст). Используется для логирования и объяснения наказания.

Пример: Flood in chat