Проблема с отображением меню бота в супергруппах на iOS

    Добрый день. На протяжении нескольких лет мы стабильно использовали собственного Telegram-бота в супергруппах без каких-либо сбоев.

    Сейчас возникла следующая проблема, характерная исключительно для клиента Telegram на iOS (последняя версия):

    • В обычных группах меню бота отображается корректно.
    • В супергруппах меню отсутствует.

    На всех других платформах (ПК, веб-версия, Android) меню бота функционирует нормально как в обычных группах, так и в супергруппах.

    Вопрос: С чем может быть связана эта проблема и как её можно решить?

    Меню должно появляться в интерфейсе справа от поля ввода текста, в области переключения на смайлики и клавиатуру.

    Используемый код

    Исходная реализация функции start:

    async def start(update: Update, context: ContextTypes.DEFAULT_TYPE) -> None:
        """Отправляет сообщение при команде /start и показывает кнопку."""
        user_id = update.effective_chat.id
    
        # Определяем группу пользователя
        user_group = None
        for group, admins in GROUP_ADMINS.items():
            if user_id in admins:
                user_group = group
                break
    
        if user_group is None:
            await update.effective_message.reply_text("Вы не авторизованы для использования этого бота.")
            return
    
        # Получаем уровень доступа для группы
        access_level = GROUP_ACCESS_LEVELS.get(user_group, 0)
    
        # Формируем набор кнопок на основе уровня доступа
        button_set = [button for button, level in BUTTON_ACCESS_LEVELS.items() if level <= access_level]
    
        keyboard = [[KeyboardButton(button_text)] for button_text in button_set]
        reply_markup = ReplyKeyboardMarkup(keyboard, resize_keyboard=True)
    
        # Задержка в функции start
        await asyncio.sleep(2)
    
        # Отправка сообщения с меню
        if update.message:
            await update.effective_message.reply_text('Привет! Выберите действие или используйте *Меню (⌘)*!', parse_mode='Markdown', reply_markup=reply_markup)
        else:
            await update.effective_message.edit_message_text('Привет! Выберите действие или используйте *Меню (⌘)*!', parse_mode='Markdown', reply_markup=reply_markup)
    
    def main() -> None:
        """Запуск бота."""

    После обнаружения проблемы код был немного модифицирован (добавлены параметры one_time_keyboard и is_persistent), но это не привело к изменению ситуации:

    keyboard = [[KeyboardButton(button_text)] for button_text in button_set]
    reply_markup = ReplyKeyboardMarkup(
        keyboard,
        resize_keyboard=True,
        one_time_keyboard=False,
        is_persistent=True
    )