From 31b50efeedf09c1edcc38d425d7489cc58649e6b Mon Sep 17 00:00:00 2001 From: host Date: Wed, 29 Jul 2026 19:02:26 +0300 Subject: [PATCH] =?UTF-8?q?=D0=9E=D0=B1=D0=BD=D0=BE=D0=B2=D0=BB=D0=B5?= =?UTF-8?q?=D0=BD=D0=B8=D0=B5=20=D1=84=D0=B0=D0=B9=D0=BB=D0=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.md | 72 +++++++++++++++++++++++++++++++++---------------------- 1 file changed, 44 insertions(+), 28 deletions(-) diff --git a/README.md b/README.md index 764f479..2c590dd 100644 --- a/README.md +++ b/README.md @@ -25,46 +25,60 @@ ## Установка -### 1. Скачайте файл +### Способ 1: через JSON-импорт (рекомендуемый) + +**Почему именно JSON**: Open WebUI «Импорт по URL» в Workspace → Tools принимает JSON-экспорт, а не голый `.py`. Поэтому мы сначала делаем JSON из Python. ```bash +# 1. Скачиваем оба файла curl -sSL https://gitea.nasweb.ru/host/home-assistant-tools/raw/branch/main/home_assistant_tools.py -o home_assistant_tools.py +curl -sSL https://gitea.nasweb.ru/host/home-assistant-tools/raw/branch/main/make_export.py -o make_export.py + +# 2. Генерируем JSON +python3 make_export.py +# -> создан home_assistant_tool_export.json + +# 3. Загрузите этот JSON-файл в Open WebUI +# Workspace -> Tools -> Импорт -> выберите файл ``` -### 2. Создайте Long-Lived Access Token в Home Assistant +### Способ 2: ручное копирование -1. Откройте HA → **Профиль** (левый нижний угол) -2. Прокрутите вниз до **Long-Lived Access Tokens** -3. Нажмите **Create Token**, дайте имя (например `open-webui`) -4. **Скопируйте токен** — он покажется только один раз +Если `make_export.py` по каким-то причинам не сработал, скопируйте код вручную: -### 3. Узнайте URL вашего Home Assistant +```bash +curl -sSL https://gitea.nasweb.ru/host/home-assistant-tools/raw/branch/main/home_assistant_tools.py +``` -- HAOS VM на Proxmox → `http://192.168.31.X:8123` -- Если HA в Docker → `http://:8123` - -### 4. Установите инструмент в Open WebUI - -1. Откройте Open WebUI → **Workspace → Tools** -2. Нажмите **+ Create Tool** -3. Скопируйте содержимое `home_assistant_tools.py` в редактор +Затем: +1. Open WebUI → **Workspace → Tools** +2. **+ Новый инструмент** +3. Вставьте всё содержимое в редактор 4. Сохраните -### 5. Настройте Valves +## Создание токена Home Assistant -В настройках инструмента укажите: +1. Откройте HA (https://ha.nasweb.ru) → **Профиль** (левый нижний угол) +2. Прокрутите вниз до **Long-Lived Access Tokens** +3. **Create Token**, имя — `open-webui` +4. **Скопируйте токен** (покажется один раз) -| Параметр | Значение | -|---|---| -| `ha_url` | `http://192.168.31.X:8123` | -| `ha_token` | ваш Long-Lived Token | -| `request_timeout` | `10` (по умолчанию) | -| `max_retries` | `2` (по умолчанию) | -| `cache_ttl` | `5` (секунд кэша состояний) | -| `confirm_global_actions` | `true` — спрашивать подтверждение для команд типа «выключи весь свет» | -| `dry_run` | `false` — если `true`, команды не выполняются, только показываются | +## Настройка Valves -### 6. Включите инструмент для пользователя +После импорта инструмента откройте его настройки (⚙️) и укажите: + +| Параметр | Значение | По умолчанию | +|---|---|---| +| `ha_url` | URL вашего HA | `https://ha.nasweb.ru` | +| `ha_token` | Long-Lived Token из шага выше | (пусто) | +| `verify_ssl` | Проверять SSL: `false` для самоподписанных | `false` | +| `request_timeout` | Таймаут HTTP, сек | `10` | +| `max_retries` | Количество ретраев | `2` | +| `cache_ttl` | TTL кэша состояний, сек | `5` | +| `confirm_global_actions` | Спрашивать подтверждение для «выключи весь свет» | `true` | +| `dry_run` | Только показывать, не выполнять | `false` | + +## Включение для пользователя Open WebUI → **Settings → Interface → Tools** → включите `Home Assistant Smart Control`. @@ -99,10 +113,12 @@ Open WebUI → **Settings → Interface → Tools** → включите `Home A - Глобальные команды («выключи весь свет») требуют подтверждения - Ошибки на одной сущности не валят весь сценарий — остальные устройства обрабатываются независимо - HTTP-запросы с ретраями и таймаутами +- Поддержка HTTPS с опцией отключения проверки сертификата (для самоподписанных) ## Версионирование -- **v2.2.0** — добавлены мониторинг (окна, свет, климат, батарейки, медиа, присутствие), dry-run, dry-run, ретраи, кэш состояний +- **v2.2.1** — HTTPS по умолчанию, verify_ssl в Valves, генератор JSON-экспорта +- **v2.2.0** — мониторинг (окна, свет, климат, батарейки, медиа, присутствие), dry-run, ретраи, кэш состояний - **v2.0.0** — базовое управление светом, климатом, медиа, шторами ## Лицензия