# 📡 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/raw/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 минуту.