Перейти к содержанию

Deep-links (smproxy://)

Форма Значение
smproxy://add?url=<url-encoded https URL> Добавить подписку по URL
smproxy://add/<https URL> · add/<base64 URL> То же, в виде пути
smproxy://crypt1/<base64 AES-GCM зашифрованного URL> Добавить зашифрованную ссылку подписки (URL скрыт)
smproxy://addhw/<base64 AES-GCM {"u":url,"h":hwid}> Подписка с привязкой к устройству — работает только на устройстве с совпадающим HWID; на других — «ссылка принадлежит другому устройству»
smproxy://import/<data> Автоопределение и импорт: URL подписки, ссылка на сервер (vless://, wireguard://, …), base64 любого из них или сырой .conf WireGuard/AmneziaWG (форма INCY)
smproxy://onadd/<url> Короткая форма routing/onadd/ — скачать профиль маршрутизации по URL и включить (форма INCY)
smproxy://connect · open Подключиться к выбранному серверу (форма INCY)
smproxy://disconnect · close Отключиться
smproxy://toggle Переключить туннель
smproxy://status Просто открыть приложение

Шифрование использует общий ключ AES-256-GCM; addhw привязывает ссылку к одному устройству (защита от «расшаривания»). Тап по ссылке проходит через обработчик deep-links; вставка в форму добавления разрешает те же формы.

Ссылки других клиентов — вставленные или отсканированные. Формы выше принимаются с любой схемой, если ссылку вставили в форму добавления или отсканировали камерой приложения: happ://add/<url>, incy://import/<data>, v2raytun://import/<url>, streisand://import/<url>, <что угодно>://install-sub?url=…, sub://<base64 url> (Shadowrocket). Зашифрованные ссылки других клиентов (happ://crypt4/, incy://crypt1/) расшифровать нельзя — приложение так и скажет. Приложение не перехватывает happ:// / incy:// в системе на Android, iOS и macOS; на Windows и Linux регистрирует их только если другого обработчика нет, так что установленный Happ или INCY свои ссылки не теряет.