Forum dédié aux karot:z, nabaztag:tag, mir:ror, dal:dal...


 
AccueilAccueil  FAQFAQ  RechercherRechercher  S'enregistrerS'enregistrer  Connexion  

Partager | 
 

 NabML, un dialecte XML pour le lapin

Voir le sujet précédent Voir le sujet suivant Aller en bas 
AuteurMessage
Harfangdesneiges
Special Nabz
Special Nabz


Age: 16
Localisation: Quelque part sur la côte d'Azur
Nom du Nabaztag: Formalhaut (v2) - Nom du mir:ror : Schpygel
Nbr de messages: 1398
Points: 1959

MessageSujet: NabML, un dialecte XML pour le lapin   Ven 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. winknabz

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


Age: 45
Localisation: Rouen - France
Nom du Nabaztag: Caulfield (v2.1)
Nbr de messages: 9839
Points: 4333

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

Bon boulot !
VeryHapnadz

_____________________________


Revenir en haut Aller en bas
http://www.nabzone.com
 

NabML, un dialecte XML pour le lapin

Voir le sujet précédent Voir le sujet suivant Revenir en haut 
Page 1 sur 1

 Sujets similaires

-
» Screen - Pour le meilleur... et pour le pire :)
» pour le forum
» programmes pour TI
» "pub" pour le fofo
» AddOns pour wow 3.3.5

Permission de ce forum:Vous ne pouvez pas répondre aux sujets dans ce forum
Forum dédié aux karot:z, nabaztag:tag, mir:ror, dal:dal... :: nabaztag - nabaztag:tag - karotz :: L'univers de Nabaztag :: Archives :: API-