Есть обработчик события на case yes, и он отлично выполняет его, но я обнаружил баг когда несколько раз выполняешь
событие дублируется уведомление "Ваш город успешно сохранен/изменен" . Если два раз выполняешь то 2 раза дублируется, если 3 то 3 раза и т.д. Как можно пофиксить этот баг?
//обрабатываем инлайн клавиатуру
bot.on('callback_query', query => {
const { chat, message_id, text } = query.message
switch (query.data) {
case 'yes':
//проверяем наличие юзера в бд если его нет заносим, иначе обновляем данн
users.update({ids: `${msg.from.id}`},{$set:{login: `${chat.first_name}`,coords: `${coord}`,fullAddress:`${fullAddress}`}},{upsert:true})
.then(users => {
bot.sendMessage(chat.id, 'Ваш город успешно сохранен/изменен',{
reply_markup:{keyboard:keyboard.home,resize_keyboard: true}
})
})
.catch(e => bot.sendMessage(chat.id, 'Неизвестная ошибка, повторите ваш запрос позже'))
break
case 'no':
bot.sendMessage(chat.id, 'Хорошо попробуйте ввести город еще раз\nНапример /gorod Самара,Россия')
break
}
bot.answerCallbackQuery({
callback_query_id: query.id
})
})