Клавиатура в telebot не удаляется после нажатия

Программа проходит все этапы и нигде не выдаёт ошибки, но клавиатура продолжает жить в чате. Где я неправильно записал код тоже пока что не могу понять.

import telebot
from database import Bd

def move(user_id):
#Здесь получаем данные с ячейки БД. Добавлять полный код не стал, ибо думаю это очевидно
#Этим самым дал понять что клавиатура в функции и причина в передаваемом аргументе,
#от которого зависит какие клавиши в ней будут
    starting_point = Bd().whereabouts(user_id)[1] 
# Вот здесь сам экземпляр клавиатуры с которым  работаем и которую нужно скрыть после клика
    if starting_point == 'koord':
        koord = telebot.types.InlineKeyboardMarkup()
        koord_move1 = telebot.types.InlineKeyboardButton(
            text='Шагнуть влево', callback_data='koord1')
        koord.add(koord_move1)
        koord_move2 = telebot.types.InlineKeyboardButton(
            text='Шагнуть вправо', callback_data='koord2')
        koord.add(koord_move2)
        koord_move3 = telebot.types.InlineKeyboardButton(
            text='Шагнуть вперёд', callback_data='koord3')
        koord.add(koord_move3)
        return koord
#Ну и так далее. Одного блока хватит для экспериментов

Сам исполняемый файл, откуда собственно и запускаем бота:

import telebot
import datasafe
import keyboard
from database import Bd

bot = telebot.TeleBot(datasafe.token, parse_mode='MarkdownV2')

@bot.message_handler(func=lambda m: True)
def echo_all(message):
    incoming_message = message.text.lower()
    if message.text == 'go':
        kb = keyboard.move(message.from_user.id)
        bot.send_message(message.chat.id, 'Выбери перемещение', reply_markup=kb)


@ bot.callback_query_handler(func=lambda call: True)
def answer(call):
# Тут у нас калбэк от клавиатур, который проверяет чо там выбрал юзер 
    if call.data in Bd().loclist(): #loclist() - Список всех возможных позиций игрока
        for loc in Bd().loclist():
            if call.data == loc:
                Bd().moving(loc, call.from_user.id) #двигаем игрока записью в БД
                bot.send_message(call.message.chat.id,
                                 'Вы перешли на другую позицию', reply_markup=telebot.types.ReplyKeyboardRemove())
#Ну и собственно последняя строка это скрытие клавиатуры, 
#дабы игрок не смог в истории чата (на старой клавиатуре) нажать на другую кнопку 
#и "телепортироваться" на любую локацию 

Однако после выбора пользователем одного из вариантов на клавиатуре, появляется текст 'Вы перешли на другую позицию', но клавиатуре так и висит. В чём может быть дело? Упрощать код ещё больше чем здесь не стал, так как в сделанной мной конструкции может и таится ошибка.


Ответы (0 шт):