Документация HTTP SDK для игрушек Enjox

Обзор

Сторонние приложения могут использовать Enjox HTTP SDK, чтобы получить возможность управлять игрушками.

Функциональность HTTP SDK предоставляет приложение EnjoxRemote. Оно работает как прокси Bluetooth ↔ HTTP и позволяет тебе легко управлять всеми игрушками на том же телефоне (или в той же сети Wi-Fi) по стандартному протоколу HTTP. Чтобы использовать HTTP SDK, пользователю нужно сначала запустить приложение EnjoxRemote, а уже затем — твоё приложение.

Архитектура HTTP SDK Enjox: приложение связывается с EnjoxRemote по HTTP, а EnjoxRemote — с игрушками по Bluetooth

Архитектура: твоё приложение общается с приложением EnjoxRemote через HTTP SDK, а приложение EnjoxRemote общается с игрушками Enjox по Bluetooth.

Тестовая страница >>

Примечание: при доступе через сеть Wi-Fi замени 127.0.0.1 на IP-адрес устройства, на котором запущено приложение EnjoxRemote. Порт по умолчанию — 8089.

Способ вызова

http://127.0.0.1:8089/{command}?param=value[&token=xxx]

Метод запроса

GET, POST

Параметры запроса

Параметр Описание Значения
command Команда vibrate, rotate, preset, pattern
param Параметры Зависят от команды
token Токен Фиксированное значение: 6b9a21fb055343f8b10113a1b78b7229 (сейчас фиксировано, может потребоваться в будущих версиях)

Формат ответа

{"ret": 0, "data": 0}
ret data Описание
0 - Успех
1 10 Неизвестная ошибка
1 11 Игрушка не подключена
1 12 Низкий заряд батареи игрушки

Простой API

Вибрация игрушки

http://127.0.0.1:8089/vibrate?speed=num&time=msec

Функция

Заставляет игрушку вибрировать в течение msec миллисекунд

Метод запроса

GET

Параметры запроса

Параметр Описание Значения
speed Скорость 0-100, 0 — остановка, 100 — максимальная интенсивность
time Время Миллисекунды

Пример

http://127.0.0.1:8089/vibrate?speed=20&time=1000

Ограничение

Минимальный интервал между двумя командами — 100 мс

Вращение игрушки

http://127.0.0.1:8089/rotate?speed=num&time=msec

Функция

Заставляет игрушку вращаться в течение msec миллисекунд

Метод запроса

GET

Параметры запроса

Параметр Описание Значения
speed Скорость 0-100, 0 — остановка, 100 — максимальная интенсивность
time Время Миллисекунды

Пример

http://127.0.0.1:8089/rotate?speed=20&time=1000

Остановка игрушки

http://127.0.0.1:8089/stop

Функция

Останавливает все действия игрушки

Метод запроса

GET

Параметры запроса

Нет

API паттернов

Готовые паттерны

http://127.0.0.1:8089/preset?id=num

Функция

Заставляет игрушку вибрировать по заранее заданным паттернам

Метод запроса

GET

Параметры запроса

Параметр Описание Значения
id ID паттерна 1 Pulse, 2 Wave, 3 Firework, 4 Earthquake

Пример

http://127.0.0.1:8089/preset?id=1

Примечания

Игрушку можно в любой момент остановить с помощью простого API. Если её не остановить, игрушка будет бесконечно повторять паттерн, пока не разрядится батарея.

Поток паттерна

http://127.0.0.1:8089/pattern

Функция

Отправляет игрушке серию команд

Метод запроса

POST

Параметры запроса

Параметр Описание Значения
data Поток паттерна Строка потока паттерна (в теле запроса)

Пример

http://127.0.0.1:8089/pattern

Тело запроса

Content-Type: application/x-www-form-urlencoded

data=V:1;F:v,r;S:100;#0,0;2,0;4,3;5,5;6,6;

Примечания

Потоки паттернов можно написать вручную или записать в приложении EnjoxRemote, проводя пальцем по экрану.

Формат потока паттерна

Поток паттерна состоит из заголовка паттерна и данных паттерна, разделённых символом #. Описание заголовка паттерна приведено в таблице ниже. Данные паттерна — это строка из пар чисел, разделённых запятыми, при этом пары отделяются точкой с запятой, и каждая пара соответствует типам действий из заголовка паттерна (например, для F=v,r каждая пара содержит значения для вибрации и вращения).

Ключевое слово Содержимое Описание
V 1 Номер версии
F v,r Типы действий: v = вибрация, r = вращение, p = сжатие
S 100 Интервал времени в миллисекундах

Our site uses cookies. By continuing to use our site, you agree to the use of cookies. For more information about the use of cookies on our website, please see our Cookie Policy.