📈 Telemetry API
Зачем это нужно
Мы хотим, чтобы наши устройства и собственные проекты клиентов могли передавать нам данные, чтобы:
- пчеловоды отслеживали пасеки в телеметрических дашбордах веб-приложения
- пчеловоды сопоставляли данные для получения инсайтов
- мы могли генерировать уведомления
Оценка прироста веса пчелиных семей в интенсивный медосборный период
Метрики низкого объёма, которые Entrance Observer может отправлять в веб-приложение
- температура (мин. интервал - 10 мин)
- влажность (мин. интервал - 10 мин) - см. Мониторинг влажности
- вес (мин. интервал - 10 мин) → [Beep.nl интеграция телеметрии веса](https://www.notion.so/Beep-nl-weight-telemetry-integration-a72ed2ce25004a3c853bb41fa08abc48?pvs=21)
- счётчики пчёл у входа в улей (мин. интервал - 10 сек)
- сколько рабочих пчёл вошло и вышло
- сколько из них с клещом varroa
- сколько с пыльцой
- сколько сторожевых пчёл обнаружено
- сколько трутней обнаружено
- сколько маток обнаружено → Распознавание случки матки по видео летка
- сколько рабочих пчёл вошло и вышло
- счётчик ос (мин. интервал 10 сек) → Обнаружение атаки ос
- средний уровень аудиошума (мин. интервал - 1 сек)
- не путать с полноценным аудиопотоком из 6-канального аудиомониторинга в рамках роботизированного улья, так как у Entrance Observer ограничено число USB-портов и микрофоны там недоступны
Критерии приёмки
- гибкий GraphQL API в telemetry-api для хранения метрик временных рядов
- хранение данных в time-series хранилище telemetry-api. MySQL - текущий fallback, когда отдельная time-series БД не оправдана
- отрисовка графиков временных рядов в веб-приложении через запросы к telemetry-api через
graphql-router