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


 
AccueilAccueil  GalerieGalerie  FAQFAQ  RechercherRechercher  S'enregistrerS'enregistrer  Connexion  
Autopassion.net le site dédié à l'automobile créé par ses utilisateurs
Partagez | 
 

 NabML, un dialecte XML pour le lapin

Aller en bas 
AuteurMessage
Harfangdesneiges
Special Nabz
Special Nabz
Harfangdesneiges

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

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. 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 : 11240

MessageSujet: Re: NabML, un dialecte XML pour le lapin   Ven 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
-
» De la Pub pour le Lapin
» Opéra pour 100 lapin
» RADIONAB ! L'Interface web pour écouter vos radios favorites sur votre lapin-pin!
» Petite interface web PHP pour votre Lapin... avec API V2 ?
» [RESOLU] Pas de nourriture (WI-FI) pour mon Lapin :(

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: