Приложение для работы с умным замком
Задача
Перед нашей командой стояла задача разработать ПО для взаимодействия с умным замком. ПО должно было предоставить возможность открыть и закрыть домашний замок, отправив команду со смартфона, выдать пароль в виртуальной реальности и отозвать его при необходимости, позволить открыть дверь автоматически, распознавая владельца, предоставить возможность управления не только в случае прямой видимости, но и через Интернет.
- реализовать возможность объединять замки в секции и разрешить интегрироваться в системы умного дома;
- предугадать возможность настраивать виртуальный ключ, передавать его другим пользователям, заменяя его при необходимости, а также установить определенное время доступа для отдельных людей.
Также нужно было:
Решение
При разработке было решено использовать современные технологии, такие как беспроводные интерфейсы типа Bluetooth Low Energy. Это позволило экономно тратить заряд аккумулятора, продлить жизнь устройству и телефону. С помощью технологии NFC была обеспечена быстрая и удобная начальная настройка устройства.
Для удаленного использования устройства и коммуникации замка с сервером для делегирования доступа в помещение было использовано сокет-соединение с помощью технологии MQTT.
Реализация многоуровневого шифрования, нескольких уровней защиты и автономной работы без подключения к интернету.
Поскольку устройство, к которому разрабатывалось приложение, запускался с нуля, то было решено разработать собственное SDK для коммуникации с девайсом. То есть это была реализация кастомного протокола взаимодействия с устройством. Это позволило вести дальнейшую разработку любому разработчику без необходимости тратить время на онбординг по взаимодействию с устройством.
Result
Нам удалось разработать приложение для телефонов под управлением ОС Android, готовое к полноценному использованию конечными пользователями.