8. Utilisation du Yocto-Color en PHP
Enumération des modules
Obtenir la liste des modules connectés se fait à l'aide de la fonction
le premier module trouvé, il suffit ensuite d'appeler la fonction
trouver les modules suivants, et ce tant que la réponse n'est pas un
exemple listant les module connectés
<HTML>
<HEAD>
<TITLE>inventory</TITLE>
</HEAD>
<BODY>
<H1>Device list</H1>
<TT>
<?php
include('yocto_api.php');
yRegisterHub("http://127.0.0.1:4444/");
$module
= yFirstModule();
while (!is_null($module)) {
printf("%s
$module->get_productName());
$module=$module->nextModule();
}
yFreeAPI();
?>
</TT>
</BODY>
</HTML>
8.4. API par callback HTTP et filtres NAT
La librairie PHP est capable de fonctionner dans un mode spécial appelé Yocto-API par callback
HTTP. Ce mode permet de contrôler des modules Yoctopuce installés derrière un filtre NAT tel qu'un
routeur DSL par exemple, et ce sans avoir à un ouvrir un port. L'application typique est le contrôle de
modules Yoctopuce situés sur réseau privé depuis un site Web publique.
Le filtre NAT, avantages et inconvénients
Un routeur DSL qui effectue de la traduction d'adresse réseau (NAT) fonctionne un peu comme un
petit central téléphonique privé: les postes internes peuvent s'appeler l'un l'autre ainsi que faire des
appels vers l'extérieur, mais vu de l'extérieur, il n'existe qu'un numéro de téléphone officiel, attribué
au central téléphonique lui-même. Les postes internes ne sont pas atteignables depuis l'extérieur.
Configuration DSL typique, les machines du LAN sont isolées de l'extérieur par le router DSL
Ce qui, transposé en terme de réseau, donne : les appareils connectés sur un réseau domestique
peuvent communiquer entre eux en utilisant une adresse IP locale (du genre 192.168.xxx.yyy), et
contacter des serveurs sur Internet par leur adresse publique, mais vu de l'extérieur, il n'y a qu'une
46
(%s)<br>", $module->get_serialNumber(),
yFirstModule()
de cet objet pour
nextModule()
. Ci-dessous un petit
NULL
www.yoctopuce.com
qui renvoie