Marzban - добавить подписку в 1 клик
Коварный телеграм
Телеграм клиент не дает сделать кнопки или ссылки со специализированным содержанием (необходимым для перехода в приложение), отличным от http://* и https://*.
Решить эту проблему можно с помощью простой конфигурации nginx
Подключаем конфигурацию в nginx:
subdomain.domain.ru - заменить на ваше доменное имя
mkdir -p /etc/nginx/sites-enabled /etc/nginx/sites-available; \
SERVICE_NAME="subdomain.domain.ru"
cat > /etc/nginx/sites-enabled/$SERVICE_NAME <<EOF
server {
listen 80;
server_name $SERVICE_NAME;
location / {
if (\$arg_url) {
return 301 \$arg_url;
}
}
}
EOF
ln -s /etc/nginx/sites-available/$SERVICE_NAME /etc/nginx/sites-enabled; \
sudo nginx -t; \
sudo certbot --nginx; \
systemctl restart nginx
sleep 5; \
systemctl status nginx
Форматирование ссылки
Из документации marzban мы видим, что определенные приложения для подключения могут принимать специальные ссылки, разберем на примере Streisand для iOS и V2rayNG для Android, схема ссылок:
- streisand://import/URL#NAME
- v2rayng://install-sub?url=URL&name=NAME
Интеграция в бота
Итого в боте мы должны будем отдать пользователю кнопку или ссылку со следующим содержанием:
- v2rayng:
https://subdomain.domain.ru/?url=v2rayng://install-sub?url=ССЫЛКА_НА_ПОДПИСКУ&name=ИМЯ(опционально)
- Streisand:
https://subdomain.domain.ru/?url=streisand://import/ССЫЛКА_НА_ПОДПИСКУ#ИМЯ(опционально)
Если вам лень заморачиваться с собственным сервисом редиректа ссылок - можете воспользоваться моим - apps.artydev.ru
, заменив subdomain.domain.ru из примера ссылок выше на apps.artydev.ru
Также рекомендую: Интеграция XRay (VLESS) в телеграм бота используя API Marzban
На пиво
Если данный материал оказался вам полезен - готов принять ваши копеечки :)
в крипте:
ETH (ERC20): 0xcdc3231527a1ad105d527678ccbcf5e827747e7b
TON: UQAiIMLC2_j9tPlmQakdbz2Zh0rkTHH7tK2RTcO3rYAkr8QV
в рублях: https://pay.cloudtips.ru/p/2a3d8e06
Итог
Пример использования механизма подключения в 1 клик можете посмотреть в моём боте.
Cсылка: https://t.me/artydev_wg_payment_bot?start=go2app
Большое спасибо всем за внимание! Если вам интересны подобные рассуждения - подписывайтесь на мой канал artydev & Co.