Le Nabaztag communique avec son serveur uniquement en HTTP. Cela diminue les pré-requis pour monter un serveur V1. Seulement, le Nabaztag ne travaille pas par noms d'hôtes (via la directive HTTP “Host: URL” ) mais par IP, il est donc assez improbable de pouvoir l'utiliser sur des hébergeurs gratuits…
Type d'URL appelée par le Nabaztag: /vl/FR/p3.jsp?sn=MAC_ADDRESS&ex=000000000000&v=20&st=01&tc=00000001
Les différents arguments peuvent changer suivant les actions mais en fixes restent:
On peut trouver d'autres arguments suivant les actions effectuées:
Les arguments utiles sont décrits plus en détail à la suite
Il peut prendre deux valeurs
Cet argument permet de déterminer si le lapin vient juste de (re)booter ou pas. A part ça, je ne lui vois pas d'autre utilité
C'est l'argument que je trouve le plus utile, il permet de déterminer quels événements ont été déclenchés ou terminés sur le lapin
Après avoir reçu une requête de la part du Nabaztag le serveur doit répondre avec une trame si il y a une action à effectuer, sinon, une page vide suffit à contenter le Nabaztag.
<note important>Ces trames sont ici détaillées en Hexadécimal (type hexdump), mais il faut les convertir en octets avant de l'afficher pour le Nabaztag, (envoyer la trame en texte ne fonctionnera pas)</note>
Cette trame permet de régler le délai d'attente entre deux requêtes (aussi désignées par PING) du Nabaztag vers le Serveur.
Une trame 03 complète est 7F0300000101FF
En détail:
7F Header
03 Type
000001 Longueur du message
01 Valeur
FF Fin du message
La valeur est donnée en dizaines de secondes ( 01 = 10s, 02 = 20s …). La valeur par défaut est 03. A confirmer
Cette trame permet d'activer les différents services du bytecode en fonctionnement sur le Nabaztag. C'est la trame la plus courante pour les opérations simples.
Voir la page dédiée Les services lumineux du V1
Cette trame permet d'envoyer un nouveau bytecode au Nabaztag, remplacant le bytecode en fonctionnement, sans reboot du Nabaztag.
Ces trames sont de la forme 7F05000040616D626572000000010100000029000101FFA80105030404A7458004A0001B7E04000301FFA80105030404A7458004A0002E7E049C001100000000506D696E64
En détail
7F Header
05 Type
000040 Longueur de la trame type 05
616D626572 amber
00000001 Trame ID
01 Flag de Transition (01: transition immédiate)
00000029 Taille du programme/bytecode
00......11 Programme assemblé
00000000 Nombre de fichiers audio inclus
...... Ensuite vont les données des fichiers audio, il n'y en a pas sur cet exemple
50 Checksum de la Trame 05
6D696E64 mind
FF Fin de la Trame
Il est possible avant le FF final d'ajouter des trames d'autres types (sans les 7F initiaux et FF finaux)
<note tip>A confirmer et compléter</note>
Cette trame permet de répéter le dernier message envoyé au Nabaztag. Sur un firmware version 20, elle ne semble pas nécessaire pour les Trames, peut-être pour les fichiers Audio.
Une trame 06 complète est: 7F060000047FFFFFFFFF
En détail:
7F Header
06 Type
000004 Longueur du message
7FFFFFFF Valeur
FF Fin du message