Динамические reply команды из json файла

Библиотека предоставляет возможность работать с динамическими reply командами. Это значит, что значения можно сохранить в json файле, и потом изменять название кнопок без перекомпиляции приложения.

Для работы с динамическими командами используется атрибут ReplyMenuDynamicHandlerAttribute

/// <summary>
/// Конструктор.
/// </summary>
/// <param name="botId">Идентификатор бота.</param>
/// <param name="botIds">Идентификаторы ботов.</param>
/// <param name="commandComparison">Как сравнивать команду.</param>
/// <param name="stringComparison">Как сравнивать строку.</param>
/// <param name="commands">Команды.</param>
public ReplyMenuDynamicHandlerAttribute(params string[] commands)
public ReplyMenuDynamicHandlerAttribute(long botId, params string[] commands)
public ReplyMenuDynamicHandlerAttribute(long[] botIds, params string[] commands)
public ReplyMenuDynamicHandlerAttribute(CommandComparison commandComparison, params string[] commands)
public ReplyMenuDynamicHandlerAttribute(long botId, CommandComparison commandComparison, params string[] commands)
public ReplyMenuDynamicHandlerAttribute(long[] botIds, CommandComparison commandComparison, params string[] commands)
public ReplyMenuDynamicHandlerAttribute(StringComparison stringComparison, params string[] commands)
public ReplyMenuDynamicHandlerAttribute(long botId, StringComparison stringComparison, params string[] commands)
public ReplyMenuDynamicHandlerAttribute(long[] botIds, StringComparison stringComparison, params string[] commands)
public ReplyMenuDynamicHandlerAttribute(CommandComparison commandComparison, StringComparison stringComparison, params string[] commands)
public ReplyMenuDynamicHandlerAttribute(long botId, CommandComparison commandComparison, StringComparison stringComparison, params string[] commands) 
public ReplyMenuDynamicHandlerAttribute(long[] botIds, CommandComparison commandComparison, StringComparison stringComparison, params string[] commands)

Пример: Создадим json файл commands.json. Формат файла key:value. В нем будут находится команды.

Создание бота с загрузкой динамических команд.

Создаем метод обработки динамической команды:

Пишем в боте сообщение "Динамическая команда" и получаем результат выполнения.

Теперь можно без всякой компиляции, просто отредактировать файл commands.json, поменять название команды и она будет выполнена.

Last updated