- Регистрация
- 20.09.16
- Сообщения
- 32
- Реакции
- 11
Shadowchat — коммерческое описание
Демо-версия: chat.bgtrv.com
*Описание продукта составлено с помощью ИИ на основе анализа исходного кода и фактического функционала платформы. Дизайн демонстрационной версии выполнен в стиле Telegram (Telegram-like) и может быть полностью изменен под бренд заказчика.*
Часть 1. Кратко: зачем продукт
Shadowchat — корпоративная платформа обмена сообщениями и звонками с собственной инфраструктурой. Разворачивается на серверах заказчика: данные, пользователи и политики доступа остаются под вашим контролем, без зависимости от публичных мессенджеров. Сервер крайне производителен и способен полноценно работать на слабом VPS стоимостью от 10$ в месяц.
Продуктовые преимущества
Для кого: компании, которым нужен закрытый мессенджер для сотрудников, клиентов или сообщества; финтех/маркетплейсы с встроенным чатом и балансами; white-label решения для партнёров.
Часть 2. Функционал подробно
2.1. Клиентское приложение (веб)
Авторизация и профиль
Список чатов и навигация
Сообщения
Типы чатов
Информационная панель чата
Звонки (WebRTC)
UX и надёжность
2.2. Мобильный клиент (Android)
Основные возможности мобильного приложения
2.3. Мобильный клиент (iOS) (в разработке)
Основные возможности мобильного приложения под iOS
2.4. Desktop-клиент (в разработке)
Основные возможности Desktop приложения
2.5. Сервер сообщений (Go)
Ядро
Данные и хранение
Кластер
Дополнительно
2.6. Админ-панель (Laravel)
Сейчас
Интеграция и синхронизация (API Go
Laravel)
2.7. Инфраструктура и эксплуатация
Docker dev/production-шаблон
Развёртывание
2.8. Сценарии использования
Стоимость и варианты поставки
*Примечание: скидка действительна для первого клиента.*
Демо-версия: chat.bgtrv.com
*Описание продукта составлено с помощью ИИ на основе анализа исходного кода и фактического функционала платформы. Дизайн демонстрационной версии выполнен в стиле Telegram (Telegram-like) и может быть полностью изменен под бренд заказчика.*
Часть 1. Кратко: зачем продукт
Shadowchat — корпоративная платформа обмена сообщениями и звонками с собственной инфраструктурой. Разворачивается на серверах заказчика: данные, пользователи и политики доступа остаются под вашим контролем, без зависимости от публичных мессенджеров. Сервер крайне производителен и способен полноценно работать на слабом VPS стоимостью от 10$ в месяц.
Продуктовые преимущества
- Свой мессенджер под брендом — веб-клиент с современным интерфейсом (личные чаты, группы, каналы), без привязки к Telegram/WhatsApp.
- Голос и видео внутри продукта — звонки по WebRTC с поддержкой TURN/STUN для работы за NAT и корпоративными firewall.
- Масштабирование и отказоустойчивость — кластер из нескольких узлов за балансировщиком; единая точка входа для клиентов.
- Гибкий backend — сервер на Go, поддержка PostgreSQL и других СУБД; код и доработки ведутся в вашем репозитории, без зависимости от upstream.
- Админ-панель и данные клиентов — отдельный Laravel-сервис: учёт клиентов, синхронизация с чат-сервером, просмотр кошельков и балансов (фиат и криптовалюты).
- Наблюдаемость из коробки — Prometheus, Grafana, Loki для метрик и логов в dev/production-окружении.
- Безопасность и контроль — роли в группах и каналах, раздельная логика подписчиков и участников, блокировки, пользовательские жалобы на группы и каналы, двухфакторная аутентификация (2FA) для защиты аккаунтов; централизованная модерация пользователей в Laravel-админке (бан, завершение сессий, профиль, trusted-бейджи).
- Готовность к интеграциям — push (FCM и др.), внутренний API между чат-сервером и админкой (базовый контур работает), API для ботов и внешних систем.
Для кого: компании, которым нужен закрытый мессенджер для сотрудников, клиентов или сообщества; финтех/маркетплейсы с встроенным чатом и балансами; white-label решения для партнёров.
Часть 2. Функционал подробно
2.1. Клиентское приложение (веб)
Авторизация и профиль
- Регистрация и вход по логину/паролю.
- Двухфакторная аутентификация (2FA) через приложение-аутентификатор: дополнительная защита входа для сотрудников, клиентов и администраторов.
- Профиль: имя, аватар, публичный username.
- Настройки: обои чата, формат времени, звук уведомлений.
- Приватность: опция «Запретить писать мне» — блокирует новые личные диалоги и приглашения в группы для посторонних пользователей.
- Активные сессии: просмотр устройств/сессий, завершение текущей или всех остальных сессий.
- Многоязычный интерфейс клиента: 14 языков — EN, RU, UK, DE, FR, IT, LV, LT, ET, RO-MD, HY, KA, AZ, UZ.
Список чатов и навигация
- Список диалогов с превью последнего сообщения, индикацией прочтения и счётчиками непрочитанных сообщений.
- Управление чатами: закрепление диалогов, перемещение в архив, отключение уведомлений для конкретных чатов.
- Полнотекстовый поиск: глобальный поиск пользователей, групп и каналов, а также поиск по истории сообщений внутри выбранного диалога.
- Подписка на открытые группы/каналы прямо из результатов поиска.
- Создание новых групп и каналов, удобная панель контактов.
- Человекочитаемые алиасы:
[USER=3472]username[/USER]для пользователей,#aliasдля групп и каналов; отображение в списке чатов, профилях и пригласительных ссылках (https://домен/t/alias). - Alias-страницы и shareable links: переход по
[USER=3472]username[/USER]и#aliasоткрывает сущность напрямую; для неизвестных адресов есть отдельная 404-страница, без принудительного редиректа на экран входа. - Глубокие ссылки на чаты (
/chat/идентификатор), адаптивная вёрстка (sidebar + панель сообщений на мобильных устройствах). - Статус присутствия (Presence): отображение статуса пользователя «в сети» / «не в сети» в реальном времени.
Сообщения
- Текстовые и голосовые сообщения в реальном времени.
- Форматирование текста: поддержка выделения текста жирным, курсивом, зачеркиванием и моноширинным кодом.
- Статусы доставки: индикация отправки, доставки и прочтения (одна галочка — отправлено, две серые — доставлено, две цветные — прочитано).
- Кликабельные упоминания в тексте:
[USER=3472]username[/USER]открывает личный чат или профиль,#alias— группу или канал (если они есть в контактах или доступны для подписки). - Ответ, редактирование и удаление сообщений (с учетом прав участника).
- Копирование текста и удобное контекстное меню.
- Вложения: изображения, медиафайлы, документы (с поддержкой предпросмотра).
- Полная история переписки с ленивой подгрузкой при прокрутке вверх.
- Разделители истории по дням, индикатор «печатает…», кнопка быстрого перехода к новым сообщениям.
Типы чатов
- Личные (P2P) — диалог один на один.
- Группы — несколько участников, роли, добавление участников, права админов, бан/разбан участников, копирование пригласительной ссылки.
- Каналы — широковещательный формат с разделением на подписчиков-читателей и полноценных участников; бан читателей и участников; пригласительные ссылки по
#alias. - Прозрачная модель аудитории канала — публичный счётчик канала показывает именно активных подписчиков-читателей, без смешения со служебными записями администраторов.
- Системный чат — отдельная информационная панель со служебной информацией.
Информационная панель чата
- Профиль собеседника в личке: блокировка, очистка истории.
- Группа: администраторы, участники, blacklist, редактирование названия и описания, копирование invite-ссылки.
- Канал: информация и редактирование (для администраторов), отдельные разделы «Администраторы», «Подписчики», «Черный список», invite-ссылка.
- Жалоба и блокировка группы/канала — пользователь может пожаловаться на публичное сообщество прямо из информационной панели, выбрать категорию нарушения (спам, мошенничество, насилие, impersonation и др.) и оставить комментарий; системное сообщение при этом сохраняет контекст жалобы для администраторов.
- Бейджи доверия на группах и каналах: «Проверенный», «Администрация», «Небезопасный» — отображаются в списке чатов, поиске и шапке топика (управление — root-администратором платформы).
- Автоподписка (root): для группы или канала можно настроить автоматическое добавление пользователей при регистрации и/или при каждом входе через специальные UI-переключатели для root в настройках топика — удобно для обязательных новостных каналов, правил сообщества и корпоративных чатов.
Звонки (WebRTC)
- Исходящие аудио- и видеозвонки в личных чатах.
- Входящий вызов: принять / отклонить.
- Во время звонка: mute, камера, завершение; сворачивание в мини-панель.
- Запись о звонке в истории сообщений.
- Инфраструктура: Coturn (TURN/STUN) в docker-окружении.
UX и надёжность
- Toast-уведомления об действиях (копирование username и др.).
- Обработка ошибок прав доступа и сетевых сбоев.
- Unit-тесты критичной логики синхронизации с сервером.
2.2. Мобильный клиент (Android)
Основные возможности мобильного приложения
- Личные и групповые чаты: общение тет-а-тет и участие в групповых переписках с распределением ролей участников.
- Новостные каналы: вещание на неограниченную аудиторию читателей.
- Аудио- и видеозвонки: звонки один на один высокого качества через WebRTC с полной поддержкой TURN/STUN.
- Мультимедиа и вложения: отправка изображений, видеороликов, документов и запись голосовых сообщений.
- Интеграция с адресной книгой: автоматическая синхронизация со стандартными контактами Android, приглашение новых пользователей по SMS или email.
- Сообщения и статусы: индикация статуса сообщений (отправлено, доставлено, прочитано, печатает...), редактирование отправленных сообщений, ответы и пересылка.
- Закрепление контента: закрепление важных диалогов в списке чатов и важных сообщений внутри конкретной переписки.
- Статусы доверия: отображение верифицированных бейджей для доверенных контактов, администрации и предупреждающих знаков.
- Автономный режим (Offline mode): возможность чтения истории и подготовки сообщений без подключения к сети; автоматическая отправка при восстановлении интернета.
- Безопасность и уведомления: интеграция с Firebase Cloud Messaging (FCM) для доставки мгновенных push-уведомлений, безопасная передача данных по протоколам HTTPS/WSS.
2.3. Мобильный клиент (iOS) (в разработке)
Основные возможности мобильного приложения под iOS
- Нативная разработка: версия под iOS с использованием современных фреймворков и поддержкой актуальных версий ОС.
- Основные функции чата: личные сообщения, групповые чаты и новостные каналы в реальном времени.
- Аудио- и видеозвонки: звонки один на один высокого качества через WebRTC с полной поддержкой TURN/STUN.
- Интеграция с APNs: использование Apple Push Notification service для мгновенной доставки push-уведомлений в фоновом режиме.
- Безопасность: поддержка двухфакторной аутентификации (2FA), шифрование трафика (HTTPS/WSS), биометрическая защита входа (Face ID / Touch ID).
- Мультимедиа и вложения: отправка изображений, видеороликов, документов и запись голосовых сообщений.
2.4. Desktop-клиент (в разработке)
Основные возможности Desktop приложения
- Кроссплатформенность: приложение для Windows, macOS и Linux на базе современных веб-технологий (Electron / Tauri).
- Интеграция с ОС: системный трей, нативные push-уведомления операционной системы, автозапуск при старте.
- Удобство работы: поддержка горячих клавиш для быстрой навигации и управления чатами, drag-and-drop для удобной отправки файлов.
- Звонки и Screen Sharing: голосовые и видеозвонки в реальном времени с поддержкой демонстрации экрана.
- Безопасность: локальное хранилище данных с шифрованием, автоматическая блокировка приложения при бездействии.
2.5. Сервер сообщений (Go)
Ядро
- Собственный протокол обмена сообщениями, развивающийся внутри проекта.
- WebSocket для realtime-коммуникаций с клиентами.
- gRPC-интерфейс для кластерной синхронизации и подключения внешних расширений.
- Расширяемая архитектура плагинов: возможность интеграции внешних gRPC-сервисов для фильтрации пакетов, перехвата событий (создание аккаунта, логин, отправка сообщений) и интеграции с корпоративными системами.
- Поддержка различных типов диалогов: личные переписки, групповые чаты и каналы.
Данные и хранение
- Адаптеры БД: PostgreSQL, MySQL, MongoDB, RethinkDB.
- Файлы и медиа — отдельное хранилище (в кластере — общий volume/сетевой диск).
- Скрипты инициализации и генерации тестовых данных.
Кластер
- Горизонтальное масштабирование: работа нескольких независимых узлов с общей базой данных и общим файловым хранилищем.
- Межузловая синхронизация: обмен сообщениями и событиями между узлами кластера по высокопроизводительному протоколу gRPC.
- Динамический баланс нагрузки (Ring Hash): распределение топиков и подключений между узлами кластера с помощью алгоритма консистентного хеширования.
- Отказоустойчивость и выборы лидера (Raft-like): автоматический мониторинг здоровья узлов; при сбое одного из узлов кластер автоматически исключает его из кольца хеширования и перераспределяет трафик без остановки сервиса.
- Единая точка входа через Nginx в качестве балансировщика нагрузки.
Дополнительно
- Push-уведомления: FCM, собственный Push Gateway и др. (настраивается).
- Автоподписка на группы/каналы: автоматическое добавление пользователей в системные и корпоративные чаты при создании аккаунта или при логине.
- Строгое разделение групп и каналов: архитектурное разделение подписчиков и администраторов каналов исключает пересечение прав и путаницу в списках участников.
- Надежная блокировка каналов: если пользователь блокирует канал, система предотвращает случайное добавление пользователя обратно через повторные инвайты.
- Информативные ошибки входа: сервер сообщает точную причину отказа (блокировка, удаление аккаунта, неверный пароль), что позволяет клиенту выводить корректные сообщения.
- WebRTC-конфигурация и ICE-серверы.
- Метрики узлов для Prometheus.
- Нагрузочное тестирование (Gatling-сценарии).
2.6. Админ-панель (Laravel)
Сейчас
- Вход администраторов, управление профилем, смена пароля.
- Список клиентов: реплика из чат-сервера, поиск по
[USER=3472]username[/USER], переход в карточку клиента. - Карточка клиента: Shadowchat UID, статус аккаунта (активен, заблокирован, удален), публичный и доверенный профили, теги, список подписок, активные сессии устройств (платформа, User-Agent, IP-адрес) и просмотр балансов встроенных кошельков (RUB, BTC, LTC).
- Редактирование профиля (отдельная страница): имя, фамилия, имя пользователя (username) и статусы доверия (Проверенный, Администрация, Небезопасный).
- Модерация (отдельная страница): бан / разбан, удаление аккаунта, завершение всех сессий или одной конкретной сессии, указание причины действия.
- Топики (отдельный раздел): поиск групп и каналов по алиасу, редактирование названия, алиаса и бейджей доверия, временная блокировка и удаление топиков.
- Журнал действий админа: полное логирование всех действий администраторов с указанием причин и метаданных.
- Панель мониторинга (Dashboard): отображение версии, uptime, активных сессий, топиков и общего статуса базы данных в реальном времени.
- Интерфейс админ-панели на 6 языках: EN, RU, UK, DE, FR, IT.
- Tabler UI: современная адаптивная тема оформления панели администрирования.
Интеграция и синхронизация (API Go
- Автоматическая синхронизация: при регистрации нового пользователя на чат-сервере автоматически создается профиль клиента и кошельки в Laravel-админке.
- Взаимодействие в реальном времени: все административные действия (бан/разбан, сброс сессий, удаление аккаунтов, изменение trusted-статусов или тегов) мгновенно синхронизируются с чат-сервером.
- Аутентификация: вход пользователей осуществляется по стандартной схеме логин/пароль, без необходимости использования сторонних сервисов.
2.7. Инфраструктура и эксплуатация
Docker dev/production-шаблон
- PostgreSQL, 3 узла Shadowchat, Nginx LB.
- Coturn для звонков.
- Prometheus + Grafana (дашборды кластера).
- Loki + Promtail (централизация логов контейнеров).
- Taskfile для подъёма окружения одной командой.
Развёртывание
- On-premise или в облаке заказчика. Вся серверная часть способна стабильно работать даже на слабом VPS за 10$ в месяц.
- Горизонтальное масштабирование узлов чата.
- Отдельный хост для Laravel-админки с доступом к БД и внутреннему API Go.
2.8. Сценарии использования
| Сценарий | Что даёт Shadowchat |
|---|---|
| Корпоративный мессенджер | Закрытая переписка, группы по отделам, звонки без Zoom/Teams |
| Поддержка клиентов | Личные и групповые чаты, история, бан пользователя и сброс сессий из админки |
| Сообщество / каналы | Каналы для новостей, группы для обсуждений |
| Платформа с балансом | Чат + кошельки и будущий магазин в одной экосистеме |
| White-label | Свой бренд, свой домен, своя инфраструктура |
Стоимость и варианты поставки
| Вариант поставки | Состав | Стоимость |
|---|---|---|
| Базовый вариант | Сервер обмена сообщениями (Go) + веб-клиент + Laravel-админка | |
| Мобильный клиент (Android) | Мобильное приложение для Android с поддержкой звонков и push-уведомлений | |
| iOS клиент (в разработке) | Мобильное приложение для iOS с поддержкой звонков и push-уведомлений | |
| Desktop клиент (в разработке) | Desktop приложение для Windows, macOS и Linux | |
| Инфраструктура и хостинг | Стоимость серверов, хостинга, TURN-серверов и SMS-шлюзов | По тарифам провайдеров (сервер работает на VPS от 10$/мес.) |
*Примечание: скидка действительна для первого клиента.*