diff --git a/README.md b/README.md new file mode 100644 index 0000000..f3f0f4e --- /dev/null +++ b/README.md @@ -0,0 +1,62 @@ +# 📡 OpenWrt HA Presence Tracker + +Легковесный и мгновенный скрипт отслеживания присутствия устройств по Wi-Fi для OpenWrt с интеграцией в Home Assistant через MQTT. + +## ⚡ Возможности +- **Мгновенная реакция**: Использует `hostapd_cli` для отслеживания событий подключения/отключения (без опроса сети). +- **Несколько MAC на устройство**: Поддержка агрегации состояний (например, телефон + умные часы = одно устройство). +- **Защита от ложных срабатываний**: Настраиваемый таймер задержки (grace timer) перед отправкой статуса "отключен". +- **Два типа устройств**: + - `tracker` (для людей): статусы `home` / `not_home` + - `alarm` (для IoT/розеток): статусы `online` / `offline` +- **Автоматическое обнаружение**: Полная поддержка Home Assistant MQTT Discovery. +- **Интерактивная установка**: Мастер настройки прямо в терминале. + +## 🚀 Установка + +Выполните эту команду на вашем роутере OpenWrt от имени пользователя `root`. + +```bash +sh <(wget --no-check-certificate -O - https://git.darkmode.duckdns.org/sirmrak/openwrt-ha-presence/src/branch/main/install.sh) +``` + +Скрипт автоматически: +1. Установит необходимые пакеты (`mosquitto-client-nossl`, `hostapd-utils`). +2. Запросит настройки MQTT брокера и базовый топик. +3. Позволит добавить устройства с указанием MAC-адресов и типа. +4. Настроит автозапуск службы и задачу в cron. + +## ✅ Быстрая проверка + +После установки выключите Wi-Fi на добавленном устройстве. Через указанную вами задержку выполните в SSH роутера: + +```bash +logread | grep wifi_tracker +``` + +Вы должны увидеть сообщения о том, что устройство отключилось и данные успешно отправлены в Home Assistant. + +## ⚙️ Управление и настройка + +Все настройки хранятся в нативном формате UCI OpenWrt. + +- **Просмотр настроек**: `uci show openwrt_ha` +- **Редактирование вручную**: `vi /etc/config/openwrt_ha` +- **Перезапуск службы после изменений**: + ```bash + /etc/init.d/openwrt_presence restart + /usr/bin/mqtt_ha_discovery.sh + ``` +- **Полное удаление**: Запустите скрипт установки повторно и выберите пункт `3) Uninstall completely`. + +--- + +### 💡 Совет для Gitea +Чтобы получить правильную ссылку для установки: +1. Откройте файл `install.sh` в веб-интерфейсе Gitea. +2. Нажмите кнопку **"Raw"** (или "Сырой файл"). +3. Скопируйте URL из адресной строки браузера и вставьте его в команду выше (убрав `/install.sh` с конца, если копируете базовый путь, или оставив как есть для полной ссылки). + +--- + +Этот README легко читается, выглядит профессионально и дает пользователю всё необходимое для старта за 1 минуту. \ No newline at end of file