https://negezor.github.io/vk-io/ru/guide/keyboard....
Если кнопка внизу, (не под сообщением), то нажатия, по идеи, считываются обработчиком сообщений
вот нашел такой код
vk.updates.use(async (context, next) => { //прослушка сообщений
if (!context.senderId) // Если отсуствует id отправителя - выйти
return;
if (context.senderId < 0) // Если сообщение не из лс с ботом - выйти
return;
if (context.isGroup) // Если сообщение от группы - выйти
return;
if (context.is('message') && context.isOutbox) // Если сообщение исходящее - выйти
return;
console.log('[' + await getFirstName(context.senderId) + ']: ' + context.text);
await next(); // Продолжить промежуточный код
});
vk.updates.hear(/!помощь/i, async(context) => {
await context.reply(`Команд нету`);
});
получается, в
vk.updates.hear
первым аргументом засовывай текст кнопки (точь в точь), а ниже то что будет происходить при нажатии