Почему не работает callback инлайн-кнопка через vk_api?



@MarkSmersh

Уже была прочитана документация сотни раз. Все нормально вызывается — сама кнопка есть. Она кликабельна, но потом никаких действий. Бесконечная загрузка и не более

import json

import vk_api, vk
from vk_api.keyboard import VkKeyboard, VkKeyboardColor
from vk_api.utils import get_random_id
from vk_api.bot_longpoll import VkBotLongPoll, VkBotEventType

vk_session = vk_api.VkApi(token='token')

from vk_api.bot_longpoll import VkBotLongPoll, VkBotEventType
longpoll = VkBotLongPoll(vk_session, 'groupid')
vk = vk_session.get_api()
from vk_api.longpoll import VkLongPoll, VkEventType

keyboard_1 = VkKeyboard(one_time=False, inline=True)
keyboard_1.add_callback_button(
        label="Кнопка",
        color=VkKeyboardColor.SECONDARY,
        payload={"type": "show_snackbar", "text": "Это исчезающее сообщение на экране"}
        )
        
for event in longpoll.listen():
    if event.type == VkBotEventType.MESSAGE_NEW:
        if event.object.message['text'] == 'Кнопка':
            if event.from_chat:
                 vk.messages.send(
                    keyboard = keyboard_1.get_keyboard(),
                    key = ('key'),
                    server = ('server'),
                    ts=('1'),
              	    message="Кнопка:",
                    )


Решения вопроса 1



@MarkSmersh Автор вопроса

Всё оказалось намного проще. Кнопка есть, но реакции на ответ не было, поэтому пишем:

elif event.type == VkBotEventType.MESSAGE_EVENT:
        vk.messages.sendMessageEventAnswer(
            event_id=event.object.event_id,
            user_id=event.object.user_id,
            peer_id=event.object.peer_id,
            event_data=json.dumps(event.object.payload)
            )

Комментировать

Ответы на вопрос 1



@egorttt_youtube

Выложи код, только тогда будет возможность помочь, скорее всего у тебя в условии прописано по типу

if a == 'привет':
   wtitemessage(id,'Приветик')

Но, кнопка не выдает тот текст на которую ты нажал, отследи все сообщения пользователя , а точнее когда ты нажимаешь на кнопку

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *