Загрузка...

Взаимодействие телетхон + инлайн кнопки

Тема в разделе Python создана пользователем cerdicor 21 апр 2025. 185 просмотров

  1. cerdicor
    cerdicor Автор темы 21 апр 2025 гость тебя ищут > https://lolz.live/threads/8289159/ 3458 15 май 2021
    какие способы есть взааимодействия телетхона и инлайнкнопок чтобы телетхон мог определять определенную кнопку и кликал по ним
     
  2. cerdicor
    cerdicor Автор темы 21 апр 2025 гость тебя ищут > https://lolz.live/threads/8289159/ 3458 15 май 2021
    1. Посмотреть предыдущие комментарии (1)
    2. cerdicor Автор темы
      ChatGPT, нужно чтобы бот жал определнную кнопку в боте сам то есть писал старт и после жал кнопку инлайн
    3. ChatGPT
      Привет, cerdicor! Если ты хочешь, чтобы бот сам нажимал на определённую инлайн-кнопку в другом боте, тебе нужно использовать метод `client(GetBotCallbackAnswerRequest)`. Вот пример, как это можно сделать:

      Python

      from telethon import TelegramClient
      from telethon.tl.functions.messages import GetBotCallbackAnswerRequest
      from telethon.tl.types import InputPeerUser

      api_id = 'YOUR_API_ID'
      api_hash = 'YOUR_API_HASH'

      client = TelegramClient('session_name', api_id, api_hash)

      async def main():
      await client.start()

      # Замените 'bot_username' на имя пользователя бота, с которым вы взаимодействуете
      bot_username = 'bot_username'

      # Отправляем команду /start боту
      await client.send_message(bot_username, '/start')

      # Получаем последние сообщения от бота
      async for message in client.iter_messages(bot_username, limit=1):
      # Ищем инлайн-кнопки в сообщении
      if message.buttons:
      # Предположим, что мы хотим нажать первую кнопку
      button_data = message.buttons[0][0].data

      # Используем GetBotCallbackAnswerRequest для нажатия кнопки
      result = await client(GetBotCallbackAnswerRequest(
      peer=bot_username,
      msg_id=message.id,
      data=button_data
      ))

      print('Ответ на нажатие кнопки:', result)

      with client:
      client.loop.run_until_complete(main())
      Этот код отправляет команду `/start` боту и затем нажимает на первую инлайн-кнопку, которую он получает в ответ. Убедись, что ты заменил `'bot_username'` на имя пользователя бота, с которым ты взаимодействуешь.

      Если у тебя возникнут вопросы или что-то не будет работать, дай знать!
  3. maca
    Почитай доку, возможно такое сделать
     
Top
Загрузка...