21. Utilisation avec des langages non supportés
Pour énumérer les modules, on peut appeler la méthode
module.GetSimilarFunctions()
qui retourne un tableau de chaînes de caractères contenant les identifiants de tous les module
trouvés.
Pas de fonctions de callback
Les fonctions de callback sont implémentées en interne et mettent à jour les propriétés des objets.
Vous pouvez donc simplement faire du polling sur les propriétés, sans pénalité significative de
performance. Prenez garde au fait que si vous utilisez l'une des méthodes qui désactive les
callbacks, le rafraichissement automatique des propriétés des objets en sera altéré.
Une nouvelle méthode
permet de récupérer les logs de diagnostiques de bas
YAPIProxy.GetLog
niveau sans recourir à l'utilisation de callbacks.
Types énumérés
Pour maximiser la compatibilité avec les applications hôte, la librairie .NET Proxy n'utilise pas de
véritables types énumérés .NET, mais des simples entiers. Pour chaque type énuméré, la librairie
publie des constantes entières nommées correspondant aux valeurs possibles. Contrairement aux
librairies Yoctopuce classiques, les valeurs utiles commencent toujours à
, la valeur
étant
1
0
réservée pour signifier une valeur invalide, par exemple lorsque le module est débranché.
Valeurs numériques invalides
Pour toutes les grandeurs numériques, plutôt qu'une constante arbitraire, la valeur invalide retournée
en cas d'erreur est NaN. Il faut donc utiliser la fonction isNaN() pour détecter cette valeur.
Utilisation de l'Assembly .NET sans la librairie Proxy
Si pour une raison ou une autre vous ne désirez pas utiliser la librairie Proxy, et que votre
environnement le permet, vous pouvez utiliser l'API C# standard puisqu'elle se trouve dans
l'Assembly, sous le namespace
. Attention toutefois à ne pas mélanger les deux
YoctoLib
utilisations: soit vous passez par la librairie Proxy, soit vous utilisez directement la version
, mais pas les deux !
YoctoLib
Compatibilité
Pour que la librairie .NET Proxy fonctionne correctement avec vos modules Yoctopuce, ces derniers
doivent avoir au moins le firmware 37120.
Afin d'être compatible avec un maximum de version de Windows, y compris Windows XP, la librairie
DotNetProxyLibrary.dll est compilée en .NET 3.5, qui est disponible par défaut sur toutes les
versions de Windows depuis XP. A ce jour nous n'avons pas trouvé d'environnement hormis
Windows qui supporte le chargement d'Assemblys, donc seules les dll de bas niveau pour Windows
sont distribuées avec l'Assembly.
21.3. Virtual Hub et HTTP GET
Le Virtual Hub est disponible pour presque toutes les plateformes actuelles, il sert généralement de
passerelle pour permettre l'accès aux modules Yoctopuce depuis des langages qui interdisent
l'accès direct aux couches matérielles d'un ordinateur (Javascript, PHP, Java...).
Il se trouve que le Virtual Hub est en fait un petit serveur Web qui est capable de router des requêtes
HTTP vers les modules Yoctopuce. Ce qui signifie que si vous pouvez faire une requête HTTP
depuis votre langage de programmation, vous pouvez contrôler des modules Yoctopuce, même si ce
langage n'est pas officiellement supporté.
Interface REST
A bas niveau, les modules sont pilotés à l'aide d'une API REST. Ainsi pour contrôler un module, il
suffit de faire les requêtes HTTP appropriées sur le Virtual Hub. Par défaut le port HTTP du Virtual
Hub est 4444.
www.yoctopuce.com
159