Глубокая ссылка на бот телеграммы - PullRequest
3 голосов
/ 14 января 2020

У меня есть простой случай использования. Когда пользователь щелкает ссылку ниже,

T.me / MycompanynameBot? Start = Microsoft

Я хочу показать ему 3 встроенные кнопки, соответствующие 3 каналам Telegram в Microsoft , Возможно ли это?

Ключ в том, что бот должен быть в состоянии получить параметры из URL.

Спасибо.

1 Ответ

4 голосов
/ 15 января 2020

Да, можно получить параметр бота через answerCallbackQuery

Кроме того, пользователь может быть перенаправлен на указанный URL-адрес игры. Чтобы эта опция работала, вы должны сначала создать игру для своего бота через @Botfather и принять условия. В противном случае вы можете использовать ссылки, такие как: * +1009 * t.me / your_bot? Начать = XXXX которые открывают вашего бота с параметром.

Вот пример, который я сделал для вас:

 {
   "ok": true,
   "result": [{
     "update_id": 89590932,
     "message": {
       "message_id": 5978,
       "from": {
         "id": 223110107,
         "is_bot": false,
         "first_name": "Ğąme",
         "last_name": "Ǿver!",
         "username": "GameO7er",
         "language_code": "en"
       },
       "chat": {
         "id": 223110107,
         "first_name": "Ğąme",
         "last_name": "Ǿver!",
         "username": "GameO7er",
         "type": "private"
       },
       "date": 1579094448,
       "text": "/start Microsoft",
       "entities": [{
         "offset": 0,
         "length": 6,
         "type": "bot_command"
       }]
     }
   }]
 }

Как видите, type = bot_command , чтобы вы могу проанализировать сообщение if (type == "bot_command") и получить текст и подстроку /start из исходного текста или того, что вы хотите сделать.

Во многих случаях я обнаруживаю пользователей с параметрами, например, когда хочу узнать, кто пригласил этого пользователя на бот Я делюсь ссылкой в ​​этом формате:

t.me / NameBot? start = ReferUserID

например:

t.me / NameBot? Start = 223110107

- это мой идентификатор, и я могу видеть, сколько пользователей я пригласил в бот.

Надеюсь быть полезным.

...