umbot - v2.0.8
    Preparing search index...

    Class mmApp

    mmApp Основной класс приложения

    Предоставляет статические методы и свойства для управления конфигурацией, командами и состоянием приложения.

    // Настройка режима разработки
    mmApp.setDevMode(true);

    // Добавление команды
    mmApp.addCommand('greeting', ['привет'], (text, controller) => {
    controller.text = 'Привет!';
    });

    // Сохранение данных
    mmApp.saveData({
    path: './data',
    fileName: 'config.json'
    }, JSON.stringify(config));
    Index

    Constructors

    Properties

    userDbController: IDbControllerModel

    Пользовательский контроллер базы данных

    Используется для подключения альтернативных СУБД вместо MongoDB

    DbControllerModel

    isSaveDb: boolean = false

    Флаг сохранения данных в базу данных

    false
    
    appType: null | TAppType

    Тип платформы приложения

    config: IAppConfig = ...

    Конфигурация приложения

    params: IAppParam = ...

    Параметры приложения

    commands: ICommand = {}

    Добавленные команды для обработки

    Accessors

    • get isDevMode(): boolean

      Возвращает текущий режим работы приложения

      Returns boolean

      true, если включен режим разработки

    Methods

    • Устанавливает режим разработки

      Parameters

      • isDevMode: boolean = false

        Флаг включения режима разработки

      Returns void

      В режиме разработки в консоль выводятся все ошибки и предупреждения

    • Объединяет два массива объектов

      Parameters

      • array1: object[]

        Основной массив

      • Optionalarray2: object[]

        Массив для объединения

      Returns object

      Объединенный массив

    • Устанавливает конфигурацию приложения

      Parameters

      • config: IAppConfig

        Пользовательская конфигурация

      Returns void

    • Устанавливает параметры приложения

      Parameters

      • params: IAppParam

        Пользовательские параметры

      Returns void

    • Добавляет команду для обработки пользовательских запросов

      Type Parameters

      Parameters

      • commandName: string

        Уникальный идентификатор команды

      • slots: string[]

        Триггеры для активации команды

      • Optionalcb: (userCommand: string, botController: TBotController) => string | void

        Функция-обработчик команды

      • isPattern: boolean = false

        Использовать регулярные выражения (по умолчанию false)

      Returns void

      Простая команда со словами:

      mmApp.addCommand(
      'greeting',
      ['привет', 'здравствуй'],
      (cmd, ctrl) => {
      if (ctrl) ctrl.text = 'Здравствуйте!';
      }
      );

      Команда с регулярными выражениями:

      // Обработка чисел от 1 до 999
      mmApp.addCommand(
      'number',
      ['\\b([1-9]|[1-9][0-9]|[1-9][0-9][0-9])\\b'],
      (cmd, ctrl) => {
      if (ctrl) ctrl.text = `Вы ввели число: ${cmd}`;
      },
      true // включаем поддержку регулярных выражений
      );

      Команда с доступом к состоянию:

      mmApp.addCommand(
      'stats',
      ['статистика'],
      async (cmd, ctrl) => {
      if (ctrl) {
      // Доступ к пользовательским данным
      const visits = ctrl.userData?.visits || 0;
      ctrl.text = `Вы использовали бота ${visits} раз`;

      // Доступ к кнопкам и другим UI элементам
      ctrl.buttons
      .addBtn('Сбросить статистику')
      .addBtn('Закрыть');
      }
      }
      );
      • Команды обрабатываются в порядке добавления
      • При isPattern=true используются регулярные выражения JavaScript
      • В callback доступен весь функционал BotController
      • Можно использовать async функции в callback
    • Удаляет команду

      Parameters

      • commandName: string

        Имя команды

      Returns void

    • Устанавливает способ хранения пользовательских данных

      Parameters

      • isSaveDb: boolean = false

        true для сохранения в БД, false для сохранения в файл

      Returns void

    • Сохраняет данные в файл

      Parameters

      • dir: IDir

        Объект с путем и названием файла

      • data: string

        Сохраняемые данные

      • Optionalmode: string

        Режим записи

      Returns boolean

      true в случае успешного сохранения

    • Сохраняет данные в JSON файл

      Parameters

      • fileName: string

        Имя файла

      • data: any

        Данные для сохранения

      Returns boolean

      true в случае успешного сохранения

    • Сохраняет лог ошибки

      Parameters

      • fileName: string

        Имя файла лога

      • errorText: null | string = ''

        Текст ошибки

      Returns boolean

      true в случае успешного сохранения