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

This commit is contained in:
Alexey Martemyanov
2026-09-17 13:56:16 +06:00
parent 3768e8c1d4
commit ab2993cd59
2 changed files with 106 additions and 12 deletions
+81 -11
View File
@@ -19,12 +19,16 @@ tags:
- zont
- api
- reference
title: "\U0001F310 ZONT Cloud API — что умеет и чего в нём нет"
title: "🌐 ZONT — облачный API, локальный UI, прошивки"
type: reference
updated: 2026-09-17b
updated: 2026-09-17c
---
# 🌐 ZONT Cloud API — что умеет и чего в нём нет
# 🌐 ZONT — облачный API, локальный UI и прошивки
> **Раздел §1–§7** — облачный API `my.zont.online` (исследован 2026-09-17).
> **Раздел §6bis** — локальный интерфейс контроллера (там реально есть конфиг).
> **Раздел §10** — настроечная утилита и прошивки.
> **Исследовано 2026-09-17** по запросу Alex: «У зонта есть api и вероятно свой какой-то формат
> включая все датчики и автоматику. Изучай подробно вопрос… что нам для комфортного управления
@@ -407,15 +411,81 @@ node zont-ws-probe.js ws://192.168.0.50/ws admin 1316261
> 🔴 `.enc` — энтропия 7.9986 = **шифрование, не простое сжатие**. Просто так не распакуется; расшифровка — задача отдельного исследования и, скорее всего, требует ключа из exe или подписи облака.
### 10.4. Что это даёт для наших задач
### 10.5. 🎯 Прошивка для НАШЕЙ платы (723 / 678) — найдена
| Задача | Путь |
|---|---|
| Снять текущий конфиг | ✅ `curl http://192.168.0.50/config.txt` (без авторизации) |
| Правка сценариев | по-прежнему конвертер `.txt ⇄ .yml` + заливка через UI/утилиту |
| Мониторинг в реальном времени | ✅ WebSocket `ws://192.168.0.50/ws` (`req_ids`, `req_state`) |
| Обновление прошивки | облако ZONT или утилита по USB (Windows) |
| Автоматизация без UI | возможна — WS-протокол простой, читается `config.txt` |
**Схема имени файла** (выведена из рабочего примера и подтверждена попаданием):
```text
H2000_PRO_<HW>__<FW>_<PROFILE>.zip
723 678 1
```
Двойное подчёркивание — перед версией ПО. Только эта схема дала `200 OK`:
```bash
curl -O https://lk.zont-online.ru/download/firmwares/H2000_PRO_723__678_1.zip # 1.2 MB
# внутри: h2000_pro_v2_.enc
```
> ⚠️ Неверные варианты, все `404`: `H2000_723__678_1.zip`, `H2000_723__678.zip`,
> `H2000_723__678_290.zip`, `H2000PRO_723__678_1.zip`, `H2000_723__330_678.zip`,
> `H2000_678__723_290.zip`. Листинг `/download/firmwares/` тоже `404`.
> **Ключ к успеху — префикс `H2000_PRO_` и ровно два подчёркивания.**
### 10.6. Сверка с API веб-морды (`get_firmware_releases`)
JSON снят из DevTools на локальном UI (сохранён как `api_get_firmware_releases.json`):
```json
{ "ok": true, "local_control_version": "26.02.1",
"firmwares": [
{"id":"69e8776449f39a24ed6d8210","version":"678:1","firmware_version":678,
"profile_version":1,"beta":false,
"changelog":"- Улучшение стабильности работы пользовательских кнопок\n- Улучшение в работе контура отопления с ПИД"}
] }
```
| Источник | Значение | Сходится? |
|---|---|---|
| Конфиг прибора `#S7` | `H2000_PRO 723 678` | — |
| API морды | `678:1` / `firmware_version: 678` | ✅ |
| Имя файла | `H2000_PRO_723__678_1.zip` | ✅ |
Итого: **`723` = версия платы (HW), `678` = прошивка, `1` = `profile_version`.**
**Все 6 релизов в нашем дереве:**
| Версия | beta | id |
|---|---|---|
| **678:1** ← последняя стабильная | ❌ | `69e8776449f39a24ed6d8210` |
| 602:1 | ✅ | `69172c55b007f1b8976b4a71` |
| 585:1 | ✅ | `68cd151d71fc6970ef4764d8` |
| 564:1 | ✅ | `68676e92134c4eabf9f52ed0` |
| 541:1 | ❌ | `678f930591b734a50e708d53` |
| 407:1 | ❌ | `6639f918b3f9a6f88e9b185b` |
`changelogs[]` в том же JSON — **151 запись** истории (от версии 270). Записи < 407 относятся к другим сериям (Climatic/SMART).
**Скачивание по `id` не работает** (нужен токен облака): `/download/firmware/<id>` → 404,
`/api/get_firmware?firmware_id=<id>` → 403. Прямая ссылка по имени — работает без авторизации.
### 10.7. 📁 Материалы разведки — в проекте
Всё перенесено из `~/rasputin-tmp` в проект:
```text
/Users/admin/Automation/HA-ZONT-Modbus/zont_local_ui_recon/
├── README.md ← сводка (этот материал + команды)
├── config_live_192.168.0.50.txt ← живой конфиг (32 KB)
├── api_get_firmware_releases.json ← ответ API морды (§10.6)
├── firmware/H2000_PRO_723_678/h2000_pro_v2_.enc ← НАША прошивка (1.2 MB)
├── firmware/H2000_515_330_290/ ← старая серия: STM_MEGA_400_.enc, main_c.evc
├── utility/h1000_utility_beta.bin + util_beta_2.8.5/ + H2000_default.zip
│ + H-2000-driver-1.zip + extract.py
└── scripts/zont-{auth-probe,recon,recon2,ws-probe}.js
```
53 файла, 17 MB. Рабочие копии в `~/rasputin-tmp/` остались (не удалялись).
---