Forum des Objets Communicants et Solutions pour les Libérer...


 
AccueilAccueil  GalerieGalerie  RechercherRechercher  S'enregistrerS'enregistrer  Connexion  

Partagez
 

 NabML, un dialecte XML pour le lapin

Aller en bas 
AuteurMessage
Harfangdesneiges
Special Nabz
Special Nabz
Harfangdesneiges

Age : 23
Localisation : Quelque part sur la côte d'Azur
Nbr de messages : 1383
Carottes : 4666

NabML, un dialecte XML pour le lapin Empty
MessageSujet: NabML, un dialecte XML pour le lapin   NabML, un dialecte XML pour le lapin Icon_minitimeVen 26 Nov 2010 - 16:40

Bonjour à tous !
J'ai codé un truc qui s'appelle le NabML : il s'agit d'un dialecte XML, accompagné de son parseur écrit en PHP, fait pour envoyer des messages au lapin et interagir avec son API. Il supporte actuellement toutes les commandes de l'API (enfin je crois bien).
Voici un exemple de code :
Code:
<app>
   <!-- Définition du serial et du token ; ici, c'est le script qui choisit -->
   <config serial="{SERIAL}" token="{TOKEN}" />
   
   <!-- Création d'une chorégraphie -->
   <chor tempo="10">
      <led pos="top" r="255" g="255" b="255" time="0" />
      <led pos="bottom" r="255" g="255" b="255" time="10" />
      <led pos="left" r="255" g="255" b="255" time="10" />
      <led pos="right" r="255" g="255" b="255" time="10" />
      <led pos="middle" r="255" g="255" b="255" time="10" />
      <motor ear="left" angle="60" direction="1" time="10" />
      <motor ear="right" angle="60" direction="0" time="10" />
   </chor>
   <!-- Envoi de la requête -->
   <sendRequest />
   
   <!-- Envoi de TTS -->
   <tts voice="FR-Archibald" text="YO" />
   <!-- Changement de position des oreilles -->
   <ear ear="left" pos="0" />
   <ear ear="right" pos="12" />
   <sendRequest />
   
   <!-- Inclusion d'un fichier NabML (peut être désactivé pour raisons de sécurité) -->
   <nabMLInclude url="ex2.xml" />
   
   <!-- Création d'un flux mp3 -->
   <streamMp3 url="http://url.com/mp3.mp3" />
   <streamMp3 url="http://url.com/mp3_2.mp3" />
   <!-- Envoi des deux flux -->
   <sendStream />
   
   <!-- Exécution d'une action (a peu d'intérêt suivant les actions, enfin toujours est-il que ça marche) -->
   <action id="1">
   <sendRequest />
   
   <!-- Bascule de l'état : si le Nabz dort, on le réveille ; si il est réveillé, on l'endort -->
   <sleepToggle />
</app>

Le code du parseur (qui devrait être compréhensible par n'importe qui sans grandes difficultés) :
Spoiler:
 

Un exemple d'utilisation :
Code:
<?php
include('parser.php');
$xml = file_get_contents('ex.xml');
$foo = nabml_parse('0118CF9A2680', '1234655660', $xml); // le couple serial/token n'existe pas réellement ;)

Je ne sais pas si ça sert à grand-chose, mais toujours est-il que ça marche. yellownabzwink

J'ai pas fait de DTD, si ça intéresse du monde je m'y attellerais...
Revenir en haut Aller en bas
nabazland
Karotzeur taquin
nabazland

Age : 52
Localisation : Rouen - France
Nabaztag : Caulfield (v2.1)
Nbr de messages : 9782
Carottes : 11485

NabML, un dialecte XML pour le lapin Empty
MessageSujet: Re: NabML, un dialecte XML pour le lapin   NabML, un dialecte XML pour le lapin Icon_minitimeVen 26 Nov 2010 - 18:35

Bon boulot !
yellownabzhappy

_____________________________


Revenir en haut Aller en bas
http://www.nabzone.com
 
NabML, un dialecte XML pour le lapin
Revenir en haut 
Page 1 sur 1
 Sujets similaires
-
» Opéra pour 100 lapin
» [En cours] Lapin minuteur
» Stuff pour un Pandawa feu de cercle 134 minimum...
» Superbe idée de personnalisation de son lapin !
» Lapin de la savane

Permission de ce forum:Vous ne pouvez pas répondre aux sujets dans ce forum
Forum des Objets Communicants et Solutions pour les Libérer... :: II. Nabaztag, Karotz, mir:ror, Dal:Dal (Violet Object Operating System) :: L'univers de Nabaztag :: Archives :: API-
Sauter vers: