Forum des Objets Communicants et Solutions pour les Libérer...
Vous souhaitez réagir à ce message ? Créez un compte en quelques clics ou connectez-vous pour continuer.

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


 
AccueilAccueil  GalerieGalerie  RechercherRechercher  Dernières imagesDernières images  S'enregistrerS'enregistrer  Connexion  
Le Deal du moment : -21%
LEGO® Icons 10329 Les Plantes Miniatures, ...
Voir le deal
39.59 €

 

 les oreilles et la présence (ears=ok)

Aller en bas 
3 participants
AuteurMessage
mojito
Lapin nain
Lapin nain



Localisation : Paris
Nbr de messages : 6
Carottes : 5135

les oreilles et la présence (ears=ok) Empty
MessageSujet: les oreilles et la présence (ears=ok)   les oreilles et la présence (ears=ok) Icon_minitimeVen 30 Avr 2010 - 15:39

bonjour, je suis tout nouveau sur le forum et dans la communauté, je viens d'adopter un nabaztag la semaine dernière et j'essaie de lui faire faire toute sorte de choses. je connais un peu le php et suis en train de réaliser un site. pour l'instant hébergé ici en attente d'un espace ==> site de Mojito

je voudrais sur la page d'accueil créer une image qui indique si je suis présent dans la pièce grâce aux oreilles. Je sais qu'il existe des scripts tout faits, mais je voudrais rester uniquement sur mon site, et interagir avec ma base sql quand je l'aurais.

ex : oreille droite en l'air : je suis dans la pièce /derrière: dans une autre piece / en bas : absent ou le lapin dort.

j'ai donc tenté la commande ears=ok qui me renvoi comme expliqué dans les posts précédents sur un fichier xml avec la position. Je voudrais savoir comment transformer ces données en variables pour les utiliser dans une page php.
De plus quand je tape dans le navigateur http://api.nabaztag.com/vl/FR/api.jsp?token=****&sn=****&ears=ok --> j'ai une réponse

mais quand je fais

require_once( "../token.php" );
$url = "http://api.nabaztag.com/vl/FR/api.jsp?token=".$Token."&sn=".$Serial."&ears=ok";
file_get_contents($url,false);
?>

je n'obtiens rien pourquoi ?

merci de votre aide et à bientôt
julien

nabzhello1


Dernière édition par mojito le Mar 4 Mai 2010 - 10:15, édité 1 fois
Revenir en haut Aller en bas
mojito
Lapin nain
Lapin nain



Localisation : Paris
Nbr de messages : 6
Carottes : 5135

les oreilles et la présence (ears=ok) Empty
MessageSujet: Re: les oreilles et la présence (ears=ok)   les oreilles et la présence (ears=ok) Icon_minitimeLun 3 Mai 2010 - 11:11

personne ne m'a répondu nabzcry

mais je viens de la trouver, il faut faire un parsage du code xml renvoyé par l'API voici donc le script de parsage que j'ai adapté si cela peu servir à des gens.
Celui-ci affiche la position des oreilles et transforme cela en texte (les oreilles sont devant, ou derrière etc...)

il suffit ensuite de remplacer $postext par le chemin d'un image


Code:
<?php
require_once( "../token.php" );

function lit_xml($fichier,$item,$champs) {
  // on lit le fichier
  if($chaine = @implode("",@file($fichier))) {
      // on explode sur <item>
      // Dans l'exemple il s'agit de 'rsp'
      $tmp = preg_split("/<\/?".$item.">/",$chaine);
      // pour chaque <item> donc tous les profils
      for($i=1;$i<sizeof($tmp)-1;$i+=2)
        // on lit les champs demandés <champ> donc il s'agit de 'leftposition' et 'rightposition'
        foreach($champs as $champ) {
            $tmp2 = preg_split("/<\/?".$champ.">/",$tmp[$i]);
            // on ajoute l'élément au tableau
            $tmp3[$i-1][] = @$tmp2[1];
        }
      // et on retourne le tableau dans la fonction
      return $tmp3;
  }
}

// Lecture du FLUX XML sur le serveur
$xml = lit_xml("http://api.nabaztag.com/vl/FR/api.jsp?token=".$Token."&sn=".$Serial."&ears=ok","rsp",array("leftposition","rightposition"));

// Une petite boucle suffit pour retrouver les élément du tableau
// retourné dans la fonction lit_xml()
foreach($xml as $row) {

  echo 'position oreille gauche :'.$row[0].'<br>';

  echo 'position oreille droite :'.$row[1].'';

 
  if  (($row[1] <= 4)&&($row[1] >= 0)OR($row[1] == 16)) { $postext = 'en haut';
 
 }


  if  (($row[1] <= 7)AND($row[1] >= 5)) { $postext = 'devant';
 
 }
 
        
  if  (($row[1] <= 12)AND($row[1] >= 8)) { $postext = 'en bas';
 
 }

         
  if  (($row[1] <= 15)AND($row[1] >= 13)) { $postext = 'derriere';
 }
               
               
  }
   

echo "<br><br>l'oreille droite de Mojito est  ";
echo $postext;

?>
Revenir en haut Aller en bas
mojito
Lapin nain
Lapin nain



Localisation : Paris
Nbr de messages : 6
Carottes : 5135

les oreilles et la présence (ears=ok) Empty
MessageSujet: Re: les oreilles et la présence (ears=ok)   les oreilles et la présence (ears=ok) Icon_minitimeLun 3 Mai 2010 - 18:54

je continue de partager mes trouvailles, il est possible de faire la même chose pour savoir si le lapin dort, grâce à l'action 7 de l'API, elle ausis revoie un xml. voici le script pour l'utiliser.

sur mon site j'ai combiné les deux comme ça soit le lapin dort, soi il y a a quelqu'un soit il y a a personne


Code:
function lit_xml_dodo($fichier,$item,$champs) {
  // on lit le fichier
  if($chaine = @implode("",@file($fichier))) {
      // on explode sur <item>
      // Dans l'exemple il s'agit de 'rsp'
      $tmp = preg_split("/<\/?".$item.">/",$chaine);
      // pour chaque <item> donc tous les profils
      for($i=1;$i<sizeof($tmp)-1;$i+=2)
        // on lit les champs demandés <champ> donc il s'agit de 'rabbitSleep'
        foreach($champs as $champ) {
            $tmp2 = preg_split("/<\/?".$champ.">/",$tmp[$i]);
            // on ajoute l'élément au tableau
            $tmp3[$i-1][] = @$tmp2[1];
        }
      // et on retourne le tableau dans la fonction
      return $tmp3;
  }
}

// Lecture du FLUX XML sur le serveur
$xml = lit_xml_dodo("http://api.nabaztag.com/vl/FR/api.jsp?token=".$Token."&sn=".$Serial."&action=7","rsp",array("rabbitSleep"));

// Une petite boucle suffit pour retrouver les élément du tableau
// retourné dans la fonction lit_xml()
foreach($xml as $row) {


 
  if  ($row[0] == YES) { $dodo = 'dodo';
 
 }

else { $dodo = 'debout';
}
Revenir en haut Aller en bas
sitenreveuxyenrena
Lapin nain
Lapin nain



Localisation : Hellemmes
Nbr de messages : 36
Carottes : 5201

les oreilles et la présence (ears=ok) Empty
MessageSujet: Re: les oreilles et la présence (ears=ok)   les oreilles et la présence (ears=ok) Icon_minitimeSam 8 Mai 2010 - 13:14

En fait pour les oreilles, j'ai sorti le xml dans un tableau.

Code:
//On récupère la position des oreilles dans un tableau.
   $earpos=file_get_contents('http://api.nabaztag.com/vl/FR/api.jsp?sn='.$sn.'&token='.$token.'&ears=ok');
   $earxml = new SimpleXMLElement($earpos);
   
   //Si l'oreille est en haut (ou à peu près)
   if(($earxml->leftposition==0)||($earxml->leftposition==16)||($earxml->leftposition==1))
   
   //Si l'oreille est en bas (ou à peu près)
   elseif(($earxml->leftposition==9)||($earxml->leftposition==10)||($earxml->leftposition==11))
Revenir en haut Aller en bas
http://sitenreveuxyenrena.fr
Moon´s Heart
Crazy Geek
Crazy Geek
Moon´s Heart


Age : 55
Localisation : Liège, Belgique
Nabaztag : Irina (tag³), Ryu (tag³), Summer (tag³), Tchantchès (tag³ mutant humanoïde), Yoko (tag³)
Nbr de messages : 15886
Carottes : 103404

les oreilles et la présence (ears=ok) Empty
MessageSujet: Re: les oreilles et la présence (ears=ok)   les oreilles et la présence (ears=ok) Icon_minitimeSam 8 Mai 2010 - 14:26

Si on ne veut pas s'ennuyer avec le XML... nabzciao

$sleep = trim(strip_tags(file_get_contents("http://api.nabaztag.com/vl/FR/api.jsp?sn=" . $sn . "&token=" . $tk . "&action=7" )));

$name = trim(strip_tags(file_get_contents("http://api.nabaztag.com/vl/FR/api.jsp?sn=" . $sn . "&token=" . $tk . "&action=10")));

ce qui donne respectivement pour $sleep : 'YES' ou 'NO' et $name le nom du lapin.

C'est pas très 'déontologique' mais c'est rudement plus court! nabzhello1
Revenir en haut Aller en bas
http://www.moonsheart.com
Contenu sponsorisé





les oreilles et la présence (ears=ok) Empty
MessageSujet: Re: les oreilles et la présence (ears=ok)   les oreilles et la présence (ears=ok) Icon_minitime

Revenir en haut Aller en bas
 
les oreilles et la présence (ears=ok)
Revenir en haut 
Page 1 sur 1
 Sujets similaires
-
» 'Ears=ok - Envoi la position des oreilles'
» New Ears
» Problems with the ears
» Another new PHP interface, move the ears of any Nabaztag :)
» Did they flip the output of the ears data from the api?

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: