Схема URL-адреса Telegram: какой URL-адрес запускает клиент для открытия диалога «отправить / отправить» - PullRequest
0 голосов
/ 30 июня 2018

Я работаю над ботом-телеграммой и ищу точную схему URL-адреса, чтобы открыть диалоговое окно «Поделиться / Выбрать группу / Отправить» в клиенте телеграммы.

Я видел эту ссылку в @pollbot, для которой я сделал следующие скриншоты.

When click this link, Telegram client will popup send to dialogue


Немного подробнее:

  1. Я хочу предоставить конечному пользователю простой способ добавить бота в свою группу, точно так же, как это делает PollBot: когда создается опрос, PollBot возвращает пользователю особый статус. Любой, нажав эту ссылку, пользователь может легко добавить PollBot в группу. Поэтому я ищу точную схему URL этой ссылки.
  2. Затем я проверяю ту ссылку, которую PollBot отправил мне в веб-клиенте telegram, и обнаружил, что это tg URL-адрес протокола: tg://resolve?domain=PollBot&startgroup=5148bed5f90678b93246464b3e132052. Поэтому я попытался отправить этот URL через bot.sendMessage. Но оказалось, что сервер Telegram api не будет анализировать URL tg://resolve.
  3. Итак, как может бот отправлять такую ​​ссылку пользователю?

1 Ответ

0 голосов
/ 02 июля 2018

Ссылка там работает с Deeplinking, пожалуйста, прочитайте об этом здесь: https://core.telegram.org/bots#deep-linking

URL имеет следующую схему: https://telegram.me/<YourBotUsername>?startgroup=<Payload>

часть (параметр) URL startgroup сообщает телеграмме, что нужно открыть диалоговое окно «Добавить в группу». когда вы выбираете там группу (и вы можете добавить в нее бота), бот будет добавлен в группу и /start PAYLOAD будет отправлен в эту группу. Payload - это то, что вы определили как значение параметра startgroup, так что ваш бот может связать его с чем-то и отправить соответствующий ответ.

обратите внимание, что Payload может содержать только определенные символы, и не обращайте внимания на то, что клиенты телеграммы могут внутренне преобразовать эту ссылку в tg: // url.

Вы также можете использовать start вместо startgroup, чтобы открыть личный чат.

...