Владельцам сервисов

Sligate для вашего сервиса

Sligate работает с подпиской как есть — ничего настраивать не обязательно. Одно правило в панели, кнопка в боте и, если нужно, зашифрованные ссылки: подписчики получат в клиенте ровно то, что вы настроили.

Одно правило в Remnawave

Без правила панель отдаёт клиенту список ссылок. Sligate подключится и так, но балансеры, маршрутизация и настройки Hysteria из ваших шаблонов до него не дойдут.

Настройки подписки → Правила ответа
Заголовок
user-agent
Оператор
REGEX
Значение
^Sligate/без учёта регистра
Тип ответа
XRAY_JSON

Поставьте правило выше «Fallback Base64». Клиент представляется как Sligate/<версия> (<система>), например Sligate/0.1.1 (Windows), и передаёт заголовки лимита устройств: x-hwid, x-device-os, x-ver-os, x-device-model.

Без правила

  • список ссылок
  • автовыбор и «РФ напрямую» от Sligate

С правилом

  • ваши шаблоны XRAY_JSON
  • балансеры, маршрутизация, Hysteria

Кнопка «Добавить в Sligate»

Telegram разрешает в кнопках бота только https-ссылки. Поэтому кнопка ведёт на страницу sligate.cc/add/, а она открывает приложение с готовой подпиской.

Адрес кнопки
https://sligate.cc/add/#<ссылка подписки в URL-кодировке>
Python
from urllib.parse import quote

url = "https://sligate.cc/add/#" + quote(sub_url, safe="")
InlineKeyboardButton("Добавить в Sligate", url=url)
Ваша подписка готоваНажмите, чтобы добавить её в приложение
Добавить в Sligate

Часть после # браузер не отправляет на сервер: ссылка подписки остаётся между пользователем и его компьютером. Вместо обычной ссылки можно передать зашифрованную sligate://crypt1/… — так же в URL-кодировке. Перед добавлением приложение всегда спрашивает подтверждение.

Зашифрованные ссылки

Чтобы адрес подписки не был виден в кнопке бота и в пересланных сообщениях, выдавайте ссылку sligate://crypt1/…. Открыть её может только Sligate: приложение само расшифрует адрес и не покажет его в интерфейсе.

Шифрование идёт прямо в браузере — ссылка подписки никуда не отправляется. Каждый раз получается новая строка: это нормально, открываются все одинаково. Честно о защите: ссылка скрыта от людей и посторонних программ, но не от того, кто разберёт само приложение, — так устроены зашифрованные ссылки и в других клиентах.

Для бота на Python
# pip install cryptography; encrypt.py — по ссылке ниже
from urllib.parse import quote
from encrypt import sligate_link

link = sligate_link(sub_url)  # sligate://crypt1/…
url = "https://sligate.cc/add/#" + quote(link, safe="")
InlineKeyboardButton("Добавить в Sligate", url=url)

Готовые функции: encrypt.py (Python, sligate_link) и encrypt.mjs (браузер и Node 20+, sligateLink). Формат не меняйте: приложение проверяет его строго.

Что Sligate понимает в подписке

Настройки приходят заголовками ответа подписки или строками #ключ: значение в начале списка ссылок — совместимо с форматом Happ. Если ключ есть и там и там, побеждает заголовок. Нелатинский текст в заголовке передавайте как base64:<данные>.

КлючЧто делает
profile-title

Название подписки в приложении. Со второй строки (в base64:) можно передать описание.

profile-description

Описание под названием подписки.

subscription-userinfo

Трафик и срок: upload=…; download=…; total=…; expire=… (expire — секунды Unix). Значение 0 — не показывать трафик.

profile-update-interval

Как часто обновлять подписку, в часах.

announceannounce-url

Объявление в окне приложения и ссылка, которую оно открывает.

support-urlsupport-email

Кнопка «Поддержка сервиса».

profile-web-page-url

Сайт или личный кабинет сервиса.

sub-expiresub-expire-button-link

sub-expire: 1 — когда до конца срока остаётся три дня или меньше, приложение показывает баннер «Продлить» с вашей ссылкой.

sub-info-textsub-info-colorsub-info-button-textsub-info-button-link

Цветной блок с текстом и кнопкой. Цвет — blue, green или red; sub-info-text: 0 убирает блок.

routingrouting-enable

Профиль маршрутизации в формате Happ (happ://routing/add/…) для локаций из списка ссылок. routing-enable: 0 выключает его.

serverDescription

Подпись под названием локации: ?serverDescription=<base64> в конце имени ссылки или meta.serverDescription в конфиге XRAY_JSON.

Что клиент сообщает панели
  • User-Agent Sligate/<версия> (<система>);
  • заголовки лимита устройств Remnawave: x-hwid (постоянный для устройства), x-device-os, x-ver-os, x-device-model.