Программируемая облачная кнопка
Разработка программного обеспечения для IoT-устройства «Sapfir» — отечественного аналога Amazon Dash Button. Проект совместно с АО «Сбербанк Технологии».
Программируемая облачная кнопка
Совместный проект с
В 2016 году к нам обратилась компания Unicorn за разработкой ПО для продукта «Sapfir» — отечественного аналога Amazon Dash Button. Sapfir — это решение, призванное увеличить повторные заказы благодаря геймификации. Проект разрабатывался совместно с АО «Сбербанк Технологии».
Для повышения лояльности клиента компания может предоставить своему клиенту беспроводную Wi-Fi кнопку, по нажатию на которую будет автоматически выполнено то или иное действие пользователя.
Такси
Служба такси может дать своему клиенту возможность по одному лишь нажатию на кнопку вызвать авто на домашний адрес
Интернет-магазин
Производитель может добавить в корзину интернет-магазина комплект товаров лишь по нажатию на кнопку
Любой сервис
Способов применения данной технологии масса — от заказа пиццы до вызова службы поддержки
Наша задача
Разработать ПО для IoT-устройства на базе ESP8266, а также веб-сервис, который бы позволил партнёрам осуществлять настройку своих устройств и реализовать интеграцию с собственными сервисами посредством API.
Подробнее о концепции можно ознакомиться на странице Amazon IoT Button
Функционал IoT-устройства
Решения для разных партнёров могут иметь разный набор аппаратных компонентов. Это необходимо учесть при разработке ПО, т.к. с целью унификации, а также удешевления стоимости обслуживания, все устройства должны иметь единую прошивку.
Возможности устройств
- Исполнение одной или нескольких команд (при наличии нескольких кнопок или переключателя)
- Обратная связь с LED-индикатором и звуковым сигналом
- Автоматическое обновление прошивок «по воздуху»
- Шифрование данных с помощью SHA512
- Передача уникального идентификатора и уровня заряда
- Уведомления о низком уровне заряда
К слову, такие возможности являются конкурентным преимуществом перед Amazon Dash Button, которые в этот момент патентовали своё решение в РФ.
Для работы с интернетом в устройстве был реализован следующий функционал — если подключение к сети интернет отсутствует, IoT-устройство превращается в точку доступа WiFi, пароль к данной точке доступа уникален и указан на этикетке устройства. Если подключиться к этой точке доступа с любого устройства — будет открыта веб-страничка для выбора необходимой точки доступа и авторизации.
API и личный кабинет партнёра
В своём личном кабинете партнёр может видеть перечень приобретённых им IoT-устройств, их идентификаторы, уровень заряда, статус активации конечным пользователем, дату и время последней отправки команды.
Функционал личного кабинета
- Перечень устройств с идентификаторами и уровнем заряда
- Статус активации и дата последней команды
- Статистика по вызовам команд (по всем устройствам и в разрезе конкретного)
- Журнал действий и ошибок по устройствам
- Настройка URL для получения веб-хуков
- Выпуск ключа доступа для шифрования API-запросов
При отправке запроса с устройства он фиксируется в системе Sapfir. Далее в зависимости от идентификатора устройства определяется партнёр, с которым связано данное устройство. Запрос шифруется и пересылается в API партнёра.
Таким же способом, используя API Sapfir и свой ключ доступа, партнёр может отправить запрос на устройство для того, чтобы оно издало звуковой сигнал или зажгло LED-индикатор.
В случае каких-либо ошибок при работе с API или на устройстве в своём личном кабинете партнёр может увидеть подробное описание возникшей ошибки и устранить её причины.
