Documentación del SDK HTTP de los juguetes Enjox
Descripción general
Las apps de terceros pueden usar el SDK HTTP de Enjox para controlar los juguetes.
La funcionalidad del SDK HTTP la proporciona la EnjoxRemote App. En este caso, la EnjoxRemote App actúa como un proxy Bluetooth ↔ HTTP, lo que te permite controlar fácilmente todos los juguetes del mismo teléfono (o de la misma red Wi-Fi) mediante el protocolo HTTP estándar. Los usuarios deben abrir primero la EnjoxRemote App antes de iniciar tu app para poder usar el SDK HTTP.

Arquitectura: tu app se comunica con la EnjoxRemote App a través del SDK HTTP, y la EnjoxRemote App se comunica con los juguetes Enjox por Bluetooth.
Nota: cuando accedas a través de una red Wi-Fi, reemplaza 127.0.0.1 por la dirección IP del dispositivo que ejecuta la EnjoxRemote App. El puerto por defecto es 8089.
Método de invocación
http://127.0.0.1:8089/{command}?param=value[&token=xxx]
Método de solicitud
GET, POST
Parámetros de solicitud
| Parámetro | Descripción | Valores |
|---|---|---|
| command | Comando | vibrate, rotate, preset, pattern |
| param | Parámetros | Varía según el comando |
| token | Token | Valor fijo: 6b9a21fb055343f8b10113a1b78b7229 (actualmente fijo, podría ser necesario en futuras versiones) |
Formato de respuesta
{"ret": 0, "data": 0}
| ret | data | Descripción |
|---|---|---|
| 0 | - | Éxito |
| 1 | 10 | Error desconocido |
| 1 | 11 | Juguete no conectado |
| 1 | 12 | Batería del juguete baja |
API simple
Hacer vibrar el juguete
http://127.0.0.1:8089/vibrate?speed=num&time=msec
Función
Hace vibrar el juguete durante msec milisegundos
Método de solicitud
GET
Parámetros de solicitud
| Parámetro | Descripción | Valores |
|---|---|---|
| speed | Velocidad | 0-100, 0 para detener, 100 para la intensidad máxima |
| time | Tiempo | Milisegundos |
Ejemplo
http://127.0.0.1:8089/vibrate?speed=20&time=1000
Limitación
El intervalo mínimo entre dos comandos es de 100 ms
Rotar el juguete
http://127.0.0.1:8089/rotate?speed=num&time=msec
Función
Hace rotar el juguete durante msec milisegundos
Método de solicitud
GET
Parámetros de solicitud
| Parámetro | Descripción | Valores |
|---|---|---|
| speed | Velocidad | 0-100, 0 para detener, 100 para la intensidad máxima |
| time | Tiempo | Milisegundos |
Ejemplo
http://127.0.0.1:8089/rotate?speed=20&time=1000
Detener el juguete
http://127.0.0.1:8089/stop
Función
Detiene todas las acciones del juguete
Método de solicitud
GET
Parámetros de solicitud
Ninguno
API de patrones
Patrones predefinidos
http://127.0.0.1:8089/preset?id=num
Función
Hace vibrar el juguete usando patrones predefinidos
Método de solicitud
GET
Parámetros de solicitud
| Parámetro | Descripción | Valores |
|---|---|---|
| id | ID del patrón | 1 Pulso, 2 Onda, 3 Fuegos artificiales, 4 Terremoto |
Ejemplo
http://127.0.0.1:8089/preset?id=1
Notas
El juguete puede detenerse en cualquier momento usando la API simple. Si no se detiene, el juguete seguirá repitiendo el patrón indefinidamente hasta que se agote la batería.
Flujo de patrones
http://127.0.0.1:8089/pattern
Función
Envía una serie de comandos al juguete
Método de solicitud
POST
Parámetros de solicitud
| Parámetro | Descripción | Valores |
|---|---|---|
| data | Flujo de patrones | Cadena del flujo de patrones (en el cuerpo de la solicitud) |
Ejemplo
http://127.0.0.1:8089/pattern
Cuerpo de la solicitud
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;
Notas
Los flujos de patrones pueden escribirse de forma personalizada o grabarse en la EnjoxRemote App deslizando el dedo.
Formato del flujo de patrones
Un flujo de patrones consta de una cabecera de patrón y los datos del patrón, separados por #. La descripción de la cabecera del patrón se muestra en la tabla siguiente. Los datos del patrón son una cadena de pares de números separados por comas y delimitados por punto y coma, donde cada par corresponde a los tipos de acción de la cabecera del patrón (por ejemplo, para F=v,r, cada par contiene los valores de vibración y rotación).
| Palabra clave | Contenido | Descripción |
|---|---|---|
| V | 1 | Número de versión |
| F | v,r | Tipos de acción: v = vibrar, r = rotar, p = contraer |
| S | 100 | Intervalo de tiempo en milisegundos |