Плагин автоматического ответа на запросы обратного вызова
Этот плагин автоматически отвечает на события callback_query
методом answerCallbackQuery
, если вы этого еще не сделали.
Установка
bash
npm install @gramio/auto-answer-callback-query
bash
yarn add @gramio/auto-answer-callback-query
bash
pnpm add @gramio/auto-answer-callback-query
bash
bun install @gramio/auto-answer-callback-query
ts
import { Bot, InlineKeyboard } from "gramio";
import { autoAnswerCallbackQuery } from "@gramio/auto-answer-callback-query";
const bot = new Bot(process.env.BOT_TOKEN as string)
.extend(autoAnswerCallbackQuery())
.command("start", (context) =>
context.send("Привет!", {
reply_markup: new InlineKeyboard()
.text("тест", "test")
.text("тест2", "test2"),
})
)
.callbackQuery("test", () => {
// Плагин вызовет метод answerCallbackQuery, так как вы его не вызвали
return context.send("Привет");
})
.callbackQuery("test2", (context) => {
// вы уже ответили, поэтому плагин не будет пытаться ответить
return context.answer("ПРИВЕТ");
});
Параметры
Вы можете передать параметры для метода answerCallbackQuery
ts
bot.extend(
autoAnswerCallbackQuery({
text: "Автоматический ответ",
show_alert: true,
})
);
IMPORTANT
Этот плагин перехватывает методы context.answerCallbackQuery
(и context.answer
), чтобы понять, был ли уже отправлен ответ на запрос обратного вызова. Старайтесь не использовать напрямую метод bot.api.answerCallbackQuery
в контексте - это может помешать корректной работе плагина.