Окно с сообщением на telethon

введите сюда описание изображения

Здравствуйте. Экспериментирую на питоне с библиотекой telethon. Хочу сделать такую окошку при нажатие на кнопку. Если как на скрине, то окошка появляется при нажатие на кнопу "Получить пиццу". Как мне вызвать такое окно на telethon?


Ответы (1 шт):

Автор решения: Сергей Борисов

Чтобы создать всплывающее окно в чате с помощью Telethon, можно использовать inline-кнопки с обработкой callback-запросов.

Сначала необходимо отправить сообщение с inline-кнопкой, которая содержит callback-данные. Когда пользователь нажимает на эту кнопку, происходит событие CallbackQuery, которое можно отследить и обработать.

В обработке callback-запроса нужно использовать метод event.answer() с параметром alert=True. Это вызовет всплывающее окно у пользователя с заданным сообщением.

from telethon import TelegramClient, events, Button

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

@client.on(events.NewMessage(pattern='/start'))
async def send_button(event):
    await event.respond(
        'Нажми на кнопку ниже:',
        buttons=[
            [Button.inline('Показать всплывающее окно', b'show_popup')]
        ]
    )

@client.on(events.CallbackQuery(data=b'show_popup'))
async def callback_handler(event):
    await event.answer('Это всплывающее окно!', alert=True)

client.start()
client.run_until_disconnected()
→ Ссылка