Documentation du SDK HTTP des jouets Enjox
Aperçu
Les applications tierces peuvent utiliser le SDK HTTP Enjox pour obtenir des capacités de contrôle sur les jouets.
Les fonctionnalités du SDK HTTP sont fournies par l'application EnjoxRemote App. Celle-ci agit comme un proxy Bluetooth ↔ HTTP, qui te permet de contrôler facilement tous les jouets présents sur le même téléphone (ou le même réseau Wi-Fi) via le protocole HTTP standard. Pour utiliser le SDK HTTP, tu dois d'abord lancer l'application EnjoxRemote App avant de démarrer ta propre application.

Architecture : ton application communique avec EnjoxRemote App via le SDK HTTP, et EnjoxRemote App communique avec les jouets Enjox via Bluetooth.
Remarque : pour un accès via le réseau Wi-Fi, remplace 127.0.0.1 par l'adresse IP de l'appareil sur lequel s'exécute EnjoxRemote App. Le port par défaut est 8089.
Méthode d'invocation
http://127.0.0.1:8089/{command}?param=value[&token=xxx]
Méthode de requête
GET, POST
Paramètres de la requête
| Paramètre | Description | Valeurs |
|---|---|---|
| command | Commande | vibrate, rotate, preset, pattern |
| param | Paramètres | Varie selon la commande |
| token | Jeton | Valeur constante pour l'instant : 6b9a21fb055343f8b10113a1b78b7229 (sa vérification pourra être exigée dans les versions futures) |
Format de la réponse
{"ret": 0, "data": 0}
| ret | data | Description |
|---|---|---|
| 0 | - | Succès |
| 1 | 10 | Erreur inconnue |
| 1 | 11 | Jouet non connecté |
| 1 | 12 | Batterie du jouet faible |
API simple
Faire vibrer le jouet
http://127.0.0.1:8089/vibrate?speed=num&time=msec
Fonction
Fait vibrer le jouet pendant msec millisecondes
Méthode de requête
GET
Paramètres de la requête
| Paramètre | Description | Valeurs |
|---|---|---|
| speed | Vitesse | 0-100, 0 pour arrêter, 100 pour l'intensité maximale |
| time | Durée | Millisecondes |
Exemple
http://127.0.0.1:8089/vibrate?speed=20&time=1000
Limitation
L'intervalle minimum entre deux commandes est de 100 ms
Faire tourner le jouet
http://127.0.0.1:8089/rotate?speed=num&time=msec
Fonction
Fait tourner le jouet pendant msec millisecondes
Méthode de requête
GET
Paramètres de la requête
| Paramètre | Description | Valeurs |
|---|---|---|
| speed | Vitesse | 0-100, 0 pour arrêter, 100 pour l'intensité maximale |
| time | Durée | Millisecondes |
Exemple
http://127.0.0.1:8089/rotate?speed=20&time=1000
Arrêter le jouet
http://127.0.0.1:8089/stop
Fonction
Arrête toutes les actions du jouet
Méthode de requête
GET
Paramètres de la requête
Aucun
API de motifs
Motifs prédéfinis
http://127.0.0.1:8089/preset?id=num
Fonction
Fait vibrer le jouet selon des motifs prédéfinis
Méthode de requête
GET
Paramètres de la requête
| Paramètre | Description | Valeurs |
|---|---|---|
| id | ID du motif | 1 Pulse, 2 Wave, 3 Firework, 4 Earthquake |
Exemple
http://127.0.0.1:8089/preset?id=1
Remarques
Le jouet peut être arrêté à tout moment à l'aide de l'API simple. S'il n'est pas arrêté, le jouet continue de répéter le motif indéfiniment jusqu'à épuisement de la batterie.
Flux de motifs
http://127.0.0.1:8089/pattern
Fonction
Envoie une série de commandes au jouet
Méthode de requête
POST
Paramètres de la requête
| Paramètre | Description | Valeurs |
|---|---|---|
| data | Flux de motifs | Chaîne de flux de motifs (dans le corps de la requête) |
Exemple
http://127.0.0.1:8089/pattern
Corps de la requête
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;
Remarques
Les flux de motifs peuvent être écrits sur mesure ou enregistrés dans EnjoxRemote App en faisant glisser ton doigt.
Format du flux de motifs
Un flux de motifs se compose d'un en-tête de motif et de données de motif, séparés par #. La description de l'en-tête de motif est présentée dans le tableau ci-dessous. Les données de motif sont une chaîne de paires de nombres séparées par des virgules et délimitées par des points-virgules, chaque paire correspondant aux types d'action de l'en-tête de motif (par exemple, pour F=v,r, chaque paire contient les valeurs de vibration et de rotation).
| Mot-clé | Contenu | Description |
|---|---|---|
| V | 1 | Numéro de version |
| F | v,r | Types d'action : v = vibration, r = rotation, p = contraction |
| S | 100 | Intervalle de temps en millisecondes |