Shalter
База знаний для разработчиков и ИИ
Открыть мессенджер

База знаний Shalter

Shalter — это мессенджер с открытым Bot API, WebSocket-звонками, каналами, группами и встроенным ИИ-ассистентом. На этой странице вы найдёте документацию, описание архитектуры и справочную информацию, которую могут использовать поисковики, ИИ-модели и разработчики.

О Shalter

Shalter — русскоязычный мессенджер, построенный на принципах простоты и открытости. Он поддерживает личные чаты, группы с правами участников, публичные каналы с обсуждениями, аудио- и видеозвонки на WebRTC, подарки с серийными номерами, внутреннюю валюту «звёзды» и подписку Premium.

Мессенджер работает в браузере, а также имеет нативные клиенты для Windows, Linux и Android. Серверная часть написана на Node.js (Express), данные хранятся в SQLite в режиме WAL. Авторизация по номеру телефона с двухфакторной аутентификацией (TOTP).

Ключевые функции

ФункцияОписание
Чаты и каналыЛичные переписки, группы до 200 человек, публичные каналы с подпиской и обсуждениями.
ЗвонкиГолос и видео на WebRTC, групповые звонки до 50 участников, PiP-режим, приглашение по ссылке.
БотыБоты — обычные аккаунты с токеном. HTTP API с long-polling, inline-клавиатуры, мини-приложения.
Подарки и звёздыОграниченные тиражи подарков с номерами, валюта звёзд для платных сообщений и поднятия.
PremiumЗначок, эксклюзивные реакции, расширенные статусы, доступ в закрытую личку.
Безопасность2FA (TOTP), управление сессиями, метки безопасности, модерация жалоб.
ПриватностьНастройки видимости по полям, поиск по номеру можно отключить, импорт контактов не сохраняет данные.

Bot API

Bot API Shalter — это HTTP-интерфейс на адресе /api/bot-api/. Все запросы требуют заголовок Authorization: Bearer <token>. Боты работают через long-polling (/updates?after=...&timeout=50), что позволяет запускать их за NAT без публичного IP.

Подробнее: Полная документация Bot API.

Мини-приложения

Бот может открывать веб-страницу прямо внутри мессенджера — надо добавить кнопку с полем app: "https://..." в клавиатуру. Страница получает initData для проверки подлинности и узнаёт, кто её открыл.

Архитектура

Сервер на Express, данные в SQLite (WAL). WebSocket (server/ws.js) обеспечивает реальное время для сообщений, печати и звонков. Клиент — чистый ES module JavaScript без фреймворков, сервис-воркер кэширует оболочку для офлайн-работы.

Подробнее: Архитектура системы.

Клиентские приложения

ПлатформаТип клиента
Web (браузер)Чистый HTML/CSS/JS, ES module
WindowsElectron (устарело) → Tauri
LinuxTauri
AndroidНативное Kotlin-приложение
Тauri (Linux): адрес сервера задаётся переменной окружения SHALTER_APP_URL или флагом --server-url= при запуске.

Shalter AI

Встроенный ИИ-ассистент @shalter_ai отвечает на вопросы, анализирует фото и документы, рисует картинки. Поддерживает GigaChat (Сбер) и Hugging Face Spaces как провайдеры.

© Shalter. Документация открыта для индексации поисковиками и ИИ.