Перейти к содержанию

Проекты

https://cloud.kavlev.ru/projects.html — список проектов, в которые вы входите. Один человек может быть в нескольких.

Создание проекта

Кнопка + Новый проект. Поля:

Поле Назначение
Имя Человекочитаемое, для UI. Менять можно.
Описание Опционально.

После создания вы автоматически — owner проекта.

API key проекта

В карточке проекта — секция API key с длинной строкой. Это то, что вводится в каждой плате на странице Облако. Все платы проекта используют один и тот же API key — он идентифицирует проект, не отдельную плату (плату идентифицирует её UUID).

Ротация ключа

Кнопка 🔄 Сгенерировать новый. После этого:

  • Старый ключ моментально перестаёт работать.
  • Все привязанные платы получат 401 на следующем heartbeat'е и переключатся в «не отправлять» (логируют ошибку).
  • Чтобы вернуть платы в строй — обновить ключ в UI каждой платы.

Когда менять:

  • Подозреваете утечку (увидели в чужом коде, в Slack-канале).
  • Уходит человек, у которого был доступ к одной из плат — а вы хотите гарантировать что он больше не подключит «свою плату» обратно.
  • Стандартная ротация раз в N месяцев — у вас в политике.

Дашборд проекта

Открыть проект — https://cloud.kavlev.ru/project.html?id=<N>:

Карточки устройств

Сетка плат, группированных по группам устройств. Каждая карточка:

  • Имя платы + UUID (короткий)
  • Online / offline статус (offline = нет heartbeat'а > 60 секунд)
  • Последний heartbeat — давность
  • Версия прошивки (fw_version)
  • Состояние реле и датчиков из последнего heartbeat'а

Клик по карточке — детальная страница платы с командами, заметками, OTA.

Командные кнопки

На карточке платы:

  • Toggle реле — шлёт команду set_relay. Доставится на следующем heartbeat'е (≤ интервала heartbeat'а, по умолчанию 15 секунд).
  • OTA — заливка прошивки одной кнопкой (см. OTA из облака).
  • Перезагрузить — команда reboot.

Заметки

Текстовое поле, привязанное к проекту или к плате. Если включены email-нотификации — изменения шлются всем участникам с ролью ≥ viewer.

Инвайты

Кнопка + Пригласить в проекте:

Поле Назначение
Email На него уйдёт письмо со ссылкой https://cloud.kavlev.ru/join.html?token=...
Role admin или viewer (owner единственный, не выдаётся через инвайты)
Срок жизни По умолчанию 7 дней, диапазон 1–30.

Получатель: 1. Открывает ссылку. 2. Если не зарегистрирован — регистрируется (email + код, плюс роль уже привязана). 3. Автоматически добавлен в проект с указанной ролью.

Инвайт одноразовый — после принятия токен сгорает. Если ссылка скомпрометировалась — можно отозвать в Участниках → Pending invites.

Удалить проект

Только owner. Кнопка в правом нижнем углу карточки проекта, с двумя подтверждениями (type "delete" to confirm).

Удаление:

  • Удаляет project record + все group / member / firmware-records.
  • НЕ удаляет registered users — они остаются с другими своими проектами.
  • НЕ удаляет бинарники прошивок физически — только метаданные (gc через cleanup_firmwares.py раз в сутки).
  • Платы, привязанные к проекту, начинают получать 401 на heartbeat'ах. Сами по себе они работают, просто облако их больше не видит.

API за этой страницей

См. API → Projects.