[2026-09-17] eagle: family/how-to/zont-config-compiler.md family/tech/zont-config-object-types.md

This commit is contained in:
Alexey Martemyanov
2026-09-17 18:46:26 +06:00
parent 7661a573d1
commit b7e945e787
2 changed files with 88 additions and 55 deletions
+12 -6
View File
@@ -99,10 +99,15 @@ Modbus-регистры (тип 52) в конфиге — **отдельные
### 2.3. Сценарии (11 + 46 + 49 + 45)
> 🔴 **ИСПРАВЛЕНО 2026-09-17 (тостинг в UI):** поле 5 типа 11 = **тип запуска + флаг «выключен»**:
> `kind = field5 & 7` (0 = ручной/расписание, 1 = триггер, 2 = интервал),
> `enabled = not (field5 & 8)`. Ручной и расписание — один `kind`, различаются полями 3/4.
> Подробности и тосты — [[family/tech/zont-scenario-logic-11109]] §8.17(а).
> **РАСКРЫТО 2026-09-17 (типы назвал Alex):** поле 5 типа 11 = **тип сценария + флаг «выключен»**:
> `тип`: `0` = `manual` | `schedule`, `1` = `trigger`, `2` = `interval`;
> `поле5 = тип + 8`, если сценарий **выключен**; `enabled = not (field5 & 8)`.
> `manual` и `schedule` дают одно число `0` — различаются только полями 3/4 (`days_mask`/`time`).
> Подробности и таблица 70 сценариев — [[family/how-to/zont-config-compiler]] §5j.
>
> ❌ **Снято:** `kind = field5 & 7` (это не «kind», а тип) и гипотеза «поле5 = значение условия
> шага 46» (32 расхождения из 70). Старая модель `{0:manual, 8:schedule, 9:trigger, 10:interval}`
> — выдумка, удалена из кода.
Тип 11 парсится **целиком** — из него собирается `steps[]` (шаги 46 со своими условиями 49), включая многошаговые сценарии и много действий в шаге.
@@ -116,7 +121,7 @@ Modbus-регистры (тип 52) в конфиге — **отдельные
> enabled: true
> trigger:
> - id: 9729
> object: '9495'
> object: 9495
> value: 1
> steps:
> - id: 9819
@@ -124,7 +129,8 @@ Modbus-регистры (тип 52) в конфиге — **отдельные
> ```
>
> `trigger` ← поле 3 шага 46 (`9729`), `steps[].action` ← поле 4 (`[9563]`).
> Слова `if`/`then`/`condition`/`operator`/`group` в YAML **запрещены** — их нет в конфиге.
> `trigger` поднят на **уровень сценария**, не шага. Слова `if`/`then`/`condition`/`operator`/
> `group`/`kind` в YAML **запрещены** — их нет в конфиге.
> Полностью — [[family/how-to/zont-config-compiler]] §5j.
Полная структура, формат полей и разобранный боевой кейс — [[family/tech/zont-scenario-logic-11109]].