Documentação do HTTP SDK dos brinquedos Enjox

Visão geral

As aplicações de terceiros podem usar o HTTP SDK da Enjox para obter capacidades de controlo sobre os brinquedos.

A funcionalidade do HTTP SDK é fornecida pela aplicação EnjoxRemote. Neste caso, a aplicação EnjoxRemote funciona como um proxy Bluetooth ↔ HTTP, permitindo-te controlar facilmente todos os brinquedos no mesmo telemóvel (ou na mesma rede Wi-Fi) através do protocolo HTTP padrão. O utilizador tem de iniciar primeiro a aplicação EnjoxRemote antes de abrir a tua aplicação para usar o HTTP SDK.

Arquitetura do HTTP SDK da Enjox: a aplicação comunica com a EnjoxRemote por HTTP e a EnjoxRemote com os brinquedos por Bluetooth

Arquitetura: a tua aplicação comunica com a aplicação EnjoxRemote através do HTTP SDK, e a aplicação EnjoxRemote comunica com os brinquedos Enjox via Bluetooth.

Página de teste >>

Nota: ao aceder através da rede Wi-Fi, substitui 127.0.0.1 pelo endereço IP do dispositivo que está a executar a aplicação EnjoxRemote. A porta predefinida é 8089.

Método de invocação

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

Método do pedido

GET, POST

Parâmetros do pedido

Parâmetro Descrição Valores
command Comando vibrate, rotate, preset, pattern
param Parâmetros Varia consoante o comando
token Token Valor fixo: 6b9a21fb055343f8b10113a1b78b7229 (atualmente fixo, poderá ser exigido em versões futuras)

Formato da resposta

{"ret": 0, "data": 0}
ret data Descrição
0 - Sucesso
1 10 Erro desconhecido
1 11 Brinquedo não ligado
1 12 Bateria do brinquedo fraca

API simples

Fazer o brinquedo vibrar

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

Função

Faz o brinquedo vibrar durante msec milissegundos

Método do pedido

GET

Parâmetros do pedido

Parâmetro Descrição Valores
speed Velocidade 0-100, 0 para parar, 100 para intensidade máxima
time Tempo Milissegundos

Exemplo

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

Limitação

O intervalo mínimo entre dois comandos é de 100 ms

Fazer o brinquedo rodar

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

Função

Faz o brinquedo rodar durante msec milissegundos

Método do pedido

GET

Parâmetros do pedido

Parâmetro Descrição Valores
speed Velocidade 0-100, 0 para parar, 100 para intensidade máxima
time Tempo Milissegundos

Exemplo

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

Parar o brinquedo

http://127.0.0.1:8089/stop

Função

Para todas as ações do brinquedo

Método do pedido

GET

Parâmetros do pedido

Nenhum

API de padrões

Padrões predefinidos

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

Função

Faz o brinquedo vibrar usando padrões predefinidos

Método do pedido

GET

Parâmetros do pedido

Parâmetro Descrição Valores
id ID do padrão 1 Pulse, 2 Wave, 3 Firework, 4 Earthquake

Exemplo

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

Notas

O brinquedo pode ser parado a qualquer momento através da API simples. Se não for parado, o brinquedo continua a repetir o padrão indefinidamente até a bateria se esgotar.

Fluxo de padrões

http://127.0.0.1:8089/pattern

Função

Envia uma série de comandos para o brinquedo

Método do pedido

POST

Parâmetros do pedido

Parâmetro Descrição Valores
data Fluxo de padrões String do fluxo de padrões (no corpo do pedido)

Exemplo

http://127.0.0.1:8089/pattern

Corpo do pedido

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

Os fluxos de padrões podem ser escritos manualmente ou gravados na aplicação EnjoxRemote deslizando o dedo.

Formato do fluxo de padrões

Um fluxo de padrões é composto por um cabeçalho de padrão e dados de padrão, separados por #. A descrição do cabeçalho de padrão é apresentada na tabela abaixo. Os dados de padrão são uma string de pares de números separados por vírgulas e divididos por ponto e vírgula, em que cada par corresponde aos tipos de ação no cabeçalho de padrão (por exemplo, para F=v,r, cada par contém valores para vibrate e rotate).

Palavra-chave Conteúdo Descrição
V 1 Número da versão
F v,r Tipos de ação: v = vibrate, r = rotate, p = contract
S 100 Intervalo de tempo em milissegundos

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.