HELPER Discord Bot
К списку Wiki
VISUAL CORE // BANNERS SETTINGS // LIVE SYNC

HELPER BANNERS ВИЗУАЛЬНОЕ ЯДРО DISCORD SELECT / URL MODAL / WEBSITE SYNC / MODULE PREVIEW

Центр баннеров хранит URL-обложки для модулей сервера. Администратор выбирает систему, вставляет ссылку, получает красивый preview, а HELPER синхронизирует изменения между Discord, сайтом и зависимыми модулями.

19визуальных ключей
10ssite watcher
JSONatomic storage
Guildразделение серверов
Discord/banners открывает select-меню
Modalадмин вставляет URL картинки
Websitedeploy_requested обновляет панели
Safetyпустое значение очищает баннер
Per guildкаждый сервер хранит свой стиль

Что делает Visual Core

Banners — это централизованная библиотека URL-картинок по серверу. Один модуль задаёт визуал для заявок, тикетов, магазина, розыгрышей, статистики, лидербордов и других панелей. Это не просто настройка: это способ сделать Discord-сервер похожим на готовый premium-продукт.

01

Выбор системы

Админ выбирает нужный banner key через select или autocomplete.

02

URL картинки

Вводится ссылка http/https. Пустое значение очищает баннер.

03

Сохранение

Данные пишутся в banners_settings.json отдельно по guild_id.

04

Обновление

Cog отправляет событие banner_updated зависимым модулям.

Больше информации картинками

Этот раздел показывает весь путь глазами владельца сервера: команда, select-меню, modal, успешное обновление, список баннеров, сайт и итоговые Discord-плашки.

01 / command/banners
🖼️
HELPER BOTВизуальное ядро

Управление баннерами модулей

Выберите систему ниже и укажите ссылку на картинку. Баннеры хранятся отдельно для каждого сервера.

🔍 Выберите систему для изменения...
02 / selectВыбор системы
select menu25 options max
📝 Заявки — главная плашкаapp_main
select
🎫 Центр поддержкиtickets
select
🛒 Магазин / Экономикаshop
select
🏆 Доска почётаleaderboard
select
03 / modalВставка URL
🔗
Discord ModalИзменение баннера

Новая ссылка на картинку

https://cdn.server/premium-shop-banner.png

Если оставить поле пустым, баннер удалится, а модуль перейдёт на fallback-изображение.

04 / successPreview после сохранения
ephemeral responseБаннер обновлён

Система: Магазин / Экономика

Изменение сохранено в banners_settings.json и отправлено зависимым модулям Discord.

SHOP / ECONOMY BANNER
05 / list/banner_list
configuredserver 123...
helphttps://cdn.server/help.png
set
ticketshttps://cdn.server/tickets.png
set
shophttps://cdn.server/shop.png
set
leaderboardfallback image
empty
06 / final discordКак видит пользователь
🎫
public module panelЦентр поддержки

📞 Открой тикет

Пользователь не видит настройки. Он просто видит красивую панель с баннером сервера.

SUPPORT HUB BANNER
🎫 Создать тикет

Команды Discord

Управление закрыто правами администратора. Если модуль выключен через сайт, команды показывают disabled-панель, а сохранённые URL не стираются.

interactive panel/banners
/banners

Открывает ephemeral embed “ВИЗУАЛЬНОЕ ЯДРО” и select-меню выбора системы.

direct set/banner_set
/banner_set key:shop url:https://cdn.server/shop.png

Устанавливает URL для конкретного ключа и сразу показывает embed с картинкой.

clear/banner_clear
/banner_clear key:shop

Очищает конкретный баннер. Модули переходят на стандартное изображение.

audit/banner_list
/banner_list

Показывает, какие ключи уже настроены на сервере, и выводит сохранённые URL.

Настройка на сайте

Сайт и Discord работают с одним файлом data/banners_settings.json. На сайте удобно сделать визуальный editor: слева список систем, справа preview, поле URL, кнопки сохранить/очистить и статус синхронизации.

dashboard editorVisual Core Panel
gallerypreviewsync
📝 app_mainГлавная плашка заявок
set
🎫 ticketsЦентр поддержки
set
🛒 shopМагазин / Экономика
edit
📊 statsЖивая статистика
fallback
site savedeploy_requested
website save
guild_data["shop"] = "https://cdn.server/shop.png" guild_data["deploy_requested"] = true guild_data["updated_at"] = now save_json_atomic()

Что делает cog

Watcher замечает изменение файла, сравнивает старые и новые URL, отправляет banner_updated только по изменённым ключам и очищает deploy_requested.

Как работает синхронизация

1Save

Discord или сайт

2JSON

atomic lock

3Diff

changed keys

4Event

banner_updated

5Panel

модуль обновил embed

D

Discord → Site

Команда /banner_set сохраняет URL в общий JSON. Сайт читает тот же файл и видит новое значение.

W

Website → Discord

Сайт ставит deploy_requested=True. Watcher ограниченно обновляет изменённые или уже настроенные ключи.

Если модуль выключен

Выключение через module_states.json закрывает управление, но не удаляет сохранённые URL.

disabled embedЧто видит админ
🔌
safe disabledМодуль баннеров отключён

🔌 Визуальное ядро обесточено

Менять баннеры через Discord сейчас нельзя. Уже сохранённые URL не удаляются, модули используют последние значения.

🔌 БАННЕРЫ ОБЕСТОЧЕНЫ
module stateПочему это безопасно
module_states.jsonхранит состояние модуля banners / visual aliases.
is_module_active()проверяет статус перед командами и кнопками.
ProtectedViewблокирует старые кнопки при выключенном модуле.

Какие картинки использовать

Хороший баннер

Широкий формат, крупный заголовок, фирменные цвета сервера, контраст, без мелкого текста, ссылка открывается без авторизации.

Плохой баннер

Закрытая ссылка, вертикальный постер, много мелких деталей, разные стили на каждом модуле, картинка не связана с назначением панели.

good exampleDark luxury pack
CYAN / PURPLE / CLEAN TITLE

Подходит для premium gaming, RP, tech и коммерческих серверов.

seasonal exampleSeason event pack
WINTER EVENT / GIVEAWAY DROP

Можно быстро менять оформление под сезон, турнир, праздник или обновление.

Карта технической логики

Ошибки и решения

Баннер не появился в Discord

Проверьте, что ссылка начинается с http:// или https:// и открывается без авторизации.

Как удалить баннер?

Через /banner_clear key или через modal, оставив поле пустым. Модуль перейдёт на fallback-изображение.

Один сервер влияет на другой?

Нет. Настройки лежат отдельно по guild_id, поэтому каждый клиент может иметь свой визуальный пакет.

Почему на сайте сохранилось, а Discord не обновился?

Проверьте deploy_requested, логи watcher и наличие изменений URL. Watcher обновляет только изменённые или уже настроенные ключи.

Команда пишет “доступно только администраторам”

У пользователя должны быть права администратора сервера. Это защита от случайной смены визуала обычными участниками.

Модуль выключен, но баннеры остались

Так и должно быть: выключение закрывает управление, но не стирает сохранённые картинки.

// WIKI_NAVIGATION

Вернуться к списку Wiki

Ты дошёл до конца страницы Banners. Можно вернуться в общий центр документации, открыть Dashboard или подняться наверх к началу этой страницы.