From 21bd04847b9327683959cab4a251895d441761ee Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=D0=92=D0=B8=D0=BA=D1=82=D0=BE=D1=80?= <78488229+viktor138irk@users.noreply.github.com> Date: Sat, 9 May 2026 02:50:00 +0900 Subject: [PATCH] =?UTF-8?q?=D0=97=D0=B0=D1=84=D0=B8=D0=BA=D1=81=D0=B8?= =?UTF-8?q?=D1=80=D0=BE=D0=B2=D0=B0=D0=BD=D0=B0=20=D0=B1=D1=83=D0=B4=D1=83?= =?UTF-8?q?=D1=89=D0=B0=D1=8F=20=D0=B0=D0=B4=D0=BC=D0=B8=D0=BD=D0=BA=D0=B0?= =?UTF-8?q?=20SWChat=20=D0=B4=D0=BB=D1=8F=20=D1=83=D0=BF=D1=80=D0=B0=D0=B2?= =?UTF-8?q?=D0=BB=D0=B5=D0=BD=D0=B8=D1=8F=20=D0=BF=D0=BE=D0=BB=D1=8C=D0=B7?= =?UTF-8?q?=D0=BE=D0=B2=D0=B0=D1=82=D0=B5=D0=BB=D1=8F=D0=BC=D0=B8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .sw | 33 ++++++++++++++++++++++++++++++++- 1 file changed, 32 insertions(+), 1 deletion(-) diff --git a/.sw b/.sw index 7904cf9..0e18eb9 100644 --- a/.sw +++ b/.sw @@ -24,6 +24,32 @@ SWChat-App создан как отдельный репозиторий для FluffyChat импортирован в SWChat-App. Найден pubspec.yaml upstream FluffyChat: name fluffychat, version 2.6.0+3553, Flutter/Dart SDK >=3.11.1 <4.0.0. +## Админка SWChat + +Админка нужна обязательно и должна быть отдельным модулем поверх Matrix/Synapse Admin API. + +Назначение админки: +- управление пользователями; +- создание/блокировка/разблокировка пользователей; +- сброс паролей; +- назначение и снятие admin-флага; +- просмотр профилей и устройств; +- управление чатами/группами; +- модерация жалоб; +- просмотр базовой статистики; +- настройки регистрации; +- настройки homeserver; +- управление TURN/STUN после добавления звонков; +- диагностика состояния Synapse/PostgreSQL/proxy. + +Рекомендуемая схема: +- сначала можно использовать готовую Synapse Admin UI для технического управления; +- позже сделать собственную SWChat Admin Panel в стиле StackWorks; +- админку держать отдельно от публичного клиента; +- доступ к админке закрыть авторизацией, IP allowlist и HTTPS. + +Админка не должна светить технические Matrix-термины обычным пользователям, но внутри может работать с Matrix user_id, room_id и Admin API. + ## Текущая архитектура установки Принято решение ставить SWChat Core на отдельный новый сервер. @@ -171,6 +197,7 @@ FastPanel proxy сервер и SWChat Core объединены в локаль - matrix.stackworks.ru — Matrix API / Synapse через FastPanel reverse proxy; - turn.stackworks.ru — TURN/STUN, новый SWChat Core сервер; - api-chat.stackworks.ru — backend API, новый SWChat Core сервер, если понадобится; +- admin-chat.stackworks.ru — будущая SWChat Admin Panel; - chat.stackworks.ru или messenger.stackworks.ru — web-клиент на FastPanel-сервере; - widget.stackworks.ru — отдельный production-виджет StackWorks, не часть Matrix/SWChat на текущем этапе. @@ -191,6 +218,7 @@ FastPanel proxy сервер и SWChat Core объединены в локаль - групповые чаты; - отправка файлов/изображений; - операторы/админы; +- админка управления пользователями; - Telegram-like интерфейс без показа Matrix-комнат; - безопасная установка рядом с production, но на отдельном сервере; - журнал состояния проекта в этом файле .sw. @@ -210,6 +238,7 @@ FastPanel proxy сервер и SWChat Core объединены в локаль 11. Собственный клиент SWChat начинать только после успешного тестирования Core через официальные Matrix-клиенты. 12. В собственном клиенте SWChat скрывать Matrix-комнаты и показывать пользователю обычные чаты/диалоги/группы. 13. Основной визуальный и UX-ориентир будущего клиента — Telegram. +14. Админку SWChat делать отдельным защищённым модулем поверх Synapse Admin API. ## Текущий статус @@ -249,6 +278,7 @@ FastPanel proxy сервер и SWChat Core объединены в локаль - Репозиторий клиентского приложения подтверждён: https://github.com/viktor138irk/SWChat-App. - FluffyChat импортирован в SWChat-App. - Проверен pubspec.yaml FluffyChat в SWChat-App. +- Зафиксирована необходимость SWChat Admin Panel для управления пользователями и модерации. ## Текущий этап установки @@ -267,4 +297,5 @@ SWChat Core локально работает на новом отдельном - проверить вход через Element по homeserver https://matrix.stackworks.ru; - закрыть прямой доступ к Core:8008 из интернета и разрешить только 192.168.0.221; - проверить создание комнаты, отправку сообщений и файлов; -- после стабильного теста начать проектирование собственного web/android клиента с Telegram-like UX обычных чатов, а не Matrix-комнат. +- после стабильного теста начать проектирование собственного web/android клиента с Telegram-like UX обычных чатов, а не Matrix-комнат; +- отдельным этапом поднять готовую Synapse Admin UI или начать SWChat Admin Panel.