MandaGram MandaGram

Хранилище, настройки и Watchdog

5 мин чтения 3 раздела

Изолированное хранилище данных

Каждому плагину выделяются персональные пути на диске:

  • plugins/data/<plugin_name>/ — постоянное хранилище настроек, конфигурационных файлов и баз данных плагина. Сохраняется при обновлениях.
  • plugins/cache/<plugin_name>/ — кэш временных файлов (может быть очищен пользователем в настройках).

Плагин может запросить эти пути через api->get_data_dir() и api->get_cache_dir().

Декларативные настройки UI

Плагинам не нужно вручную верстать окна настроек. Достаточно экспортировать схему настроек, и MandaGram автоматически сгенерирует окно конфигурации с аутентичными компонентами Material 3 Expressive (переключатели, текстовые поля, выпадающие списки).

Защита Watchdog и Safe Mode

Сторожевой таймер Watchdog предотвращает зависание графического интерфейса клиента:

  • Если обработчик хука в нативном коде плагина выполняется дольше заданного таймаута (по умолчанию 2500 мс), поток отсекается.
  • При повторяющихся критических сбоях плагин временно отключается, а клиент переходит в Safe Mode с уведомлением пользователя.