settings_server¶
Плагин пакета clover2_ui/clover2_http_plugins. Предоставляе доступ к конфигурации launch запуска, через clover2_ui::api::settings::config_field — того же класса, на котором построен TUI-редактор clover2_ui settings. Схема и значения хранятся в YAML: схема описывает дерево полей (type: str/bool/int/float/object, default, description, enum, вложенные fields), значения — переопределения поверх дефолтов.
Маршруты¶
Метод |
Путь |
Описание |
|---|---|---|
GET |
|
Дерево схемы; на каждом листе — текущее значение ( |
PUT |
|
Заменить значения |
Параметры¶
Параметр |
По умолчанию |
Описание |
|---|---|---|
|
(пусто) |
Путь к YAML-схеме, например |
|
(пусто) |
Путь к файлу значений (тот же конфиг, что подаётся в лаунчер и используется для TUI) |
Чтение схемы¶
{"valid": true, "root": {"children": [{"name": "fcu_bridge", "type": "object",
"description": "Flight controller unit bridge", "children": [
{"name": "fcu_conn", "type": "str", "description": "FCU connection type",
"default": "uart", "enum": ["usb", "uart", "tcp", "udp"], "value": "tcp"}]}]}}
Сохранение значений¶
Тело запроса — полное дерево текущих значений (формат совпадает с выводом TUI):
{"values": {"fcu_bridge": {"fcu_conn": "tcp"}, "main_camera": {"enable": true}}}
неизвестный ключ, несоответствие типа или значение вне
enum— ошибка400;
Capability: settings. Присутствует в манифесте только если схема успешно загружена; иначе маршруты отвечают 503.