Ответы пользователя по тегу Telegram
  • Пропадает обычная клавиатура в декстопной версии Telegram, в чем может быть проблема?

    @Gridev
    Аналогичная проблема на десктоп версии.
    Баг проявляется если перезапустить Telegram - клавиатура KeyboardMarkup пропадает, при этом кнопки для отображения клавиатуры нет, вызвать её можно командой /start или скроллом вверх на несколько сообщений.
    Также чтобы баг воспроизводился, нужно чтобы сообщений в чате с ботом было много (20 хватит, чтобы прокрутка была).
    При этом заметил, что у чужих ботов (например @WeathersBot) с аналогичной клавиатурой - бага нет, значит проблема в коде.

    Разобрался, это не баг телеграм клиента, скорее фича.
    Это происходит когда мы используем клавиатуру KeyboardMarkup.
    При этом, мы отправляем клавиатуру только с первым сообщением, например при /start и в дальнейшем не отправляем её, клавиатура как-бы вызывается этим сообщением, и если наше сообщение уплыло далеко вверх, то при следующем запуске клиента она не отобразится.
    Когда мы будем прокручивать вверх сообщения, и приблизимся к сообщению в котором отправлена клава, она сразу отобразится, в принципе наверное это логичное поведение.

    Проблемы не будет если клавиатуру отправлять с каждым сообщением отправляемым ботом.

    Кстати, проверил, фича проявляется и в мобильном клиенте, чтобы она проявилась, нужно:
    Написать достаточно сообщений (штук 20) в бот, так чтобы сообщение в котором вызывается клавиатура уплыло вверх.
    Потом нужно выполнить: Настройки -> Данные и память -> Использование памяти -> Очистить базу данных
    Телеграм можно не перезапускать, заходим в наш бот, и увидим что клавиатура пропала, прокручиваем вверх и она появится.
    Ответ написан
    Комментировать