Телеметрия для умного дома, дисплеев и дашбордов
Приложение теперь само пишет канонический плоский JSON — /tmp/5gmodem_tele.json: сигнал в процентах, оператор, RSRP/RSRQ/SINR, диапазон и активная агрегация (B3+B7), режим (4G/4G+/5G), температура, пинг, скорости rx/tx, непрочитанные SMS. Файл собирается из уже готового снимка метрик — ни одного лишнего запроса к модему — и обновляется тиком сторожа даже при закрытой странице. Рядом — файл-приложение 5gmodem_tele_cell.json с деталями соты (PCI, EARFCN, eNB, Cell ID, TAC, APN, несущие агрегации, номер SIM) — строго локальный.
Правила честные: нет данных — нет ключа (никаких нулей-заглушек); модем вынут — поля исчезают, а не замораживаются; осечка опроса при занятом порте не затирает хороший файл; в публикуемый файл никогда не попадают IMEI, ICCID, номер и идентификаторы соты.
Опционально — публикация в MQTT с автообнаружением Home Assistant: настроил брокер в uci, выполнил telemetry.sh discovery — и устройство со всеми сенсорами появляется само. Полная инструкция со всеми способами забора (файл, SSH, MQTT/HA, HTTP): docs/telemetry.md. Формат обкатан встречной отладкой с экраном Almond на трёх живых аппаратах.
Обновления работают из-за операторских белых списков
Кнопка проверки/установки обновлений и обновление базы APN теперь умеют ходить через локальный clash/mihomo: прямая попытка, при неудаче — автоматический повтор через его HTTP-порт (порт находится сам: из конфига или через рантайм-API, при закрытом — открывается на 127.0.0.1). Это та же лестница, что давно возит Telegram-уведомления в РФ. Без прокси на роутере поведение прежнее.