Обработка Inline команд

Telegram позволяет использовать максимум 64 байта для содержимого callback_data. В PRTelegramBot для удобной работы с inline кнопками используется сериализатор данных, по умолчанию это json. Начиная с версии 0.8.4 был добавлен toon сериализатор, который позволяет экономить несколько байт. Так же можно реализовать интерфейс IPRSerializer и сделать собственный инициализатор для Inline кнопок.

var telegram = new PRBotBuilder("token")
                    .SetInlineSerializer(new ToonSerializerWrapper())
                    .Build();

var telegram = new PRBotBuilder("token")
                    .SetInlineSerializer(new JsonSerializerWrapper())
                    .Build();

В статье "Создание Inline меню" есть информация, как обойти ограничение в 64 байта.

Описание параметров

Под inline командами подразумеваю inline меню и обработку этих менюшек. В PRTelegram бот можно задействовать 3 основных пунктов inline меню:

  • InlineCallback – обработчик команд.

  • InlineURL – Работает со ссылками.

  • InlineWebApp – Работает с WebApp. (Разбор будет в следующих главах)

Перед созданием Inline меню требуется создать новое перечисление которое будет в себе содержать набор команд. Перечисление обязательно должен быть отмечено атрибутом InlineCommand так же для избежания ошибок присвойте номер больше 100 первому значению.

Last updated