Захотел написать бота приёма заявок в тиму. Хотел что бы при нажатие кнопки "✅ Принять" у пользователя который отправил заявку срабатывала команда /good, а если "⛔ 0тклонить"то /bad. Вот получил вроде бы хороший код по довольно длинном промту от Chat GPT: // Automatic fix var msg // Automatic fix var msg var admin_chat = Bot.getProperty("admin_chat") if (!admin_chat) { Bot.sendMessage("Извините, мы не принемаем заявки на данный момент. ") return // exit } var user_link = Libs.commonLib.getLinkFor(user) msg = "Заявка от:: " + user_link + "\n" + message + "\n Ответить текстом: /reply" + user.telegramid Bot.sendMessageToChatWithId(admin_chat, msg) // Добавляем кнопки "Принять" и "Отклонить" к сообщению администратору var adminKeyboard = [ [{ text: "✅ Принять", callback_data: "good" }], [{ text: "⛔ Отклонить", callback_data: "bad" }] ] Api.sendMessage({ chat_id: admin_chat, text: msg, reply_markup: { inline_keyboard: adminKeyboard } }) // Обработка нажатия кнопок Bot.onCallbackQuery(function(callbackQuery) { var data = callbackQuery.data var message = callbackQuery.message var userId = message.from.id if (data === "good") { // Выполнение команды "good" для пользователя Bot.runCommand("/good " + userId) } else if (data === "bad") { // Выполнение команды "bad" для пользователя Bot.runCommand("/bad " + userId) } }) /* Api.forwardMessage({ chat_id: admin_chat, message_id: request.message_id }); */ Bot.sendMessage(" Заявка отправлена, ожидайте... ") Всё бы хорошо, если бы не ошибка при вызове команды отвечающий за этот код. См. изображение ниже
Ну эт очевидно что чатжпт может глючить и выдавать неправильный код Только по коду, который ты кинул мало чё можно понять (даже библиотеку которую ты используешь) --- Сообщение объединено с предыдущим 3 окт 2023 если правильно понял какую либу ты юзаешь, то там нету функции onCallbackQuery у бота И делается это вот так bot.on('callback_query', function onCallbackQuery(callbackQuery) { //че то там }); JS bot.on('callback_query', function onCallbackQuery(callbackQuery) { //че то там });