Accès aux données enregistrées sur le datalogger par l'interface REST
Cette section s'applique uniquement aux modules dotés d'un enregistreur de donnée.
La version résumée des données enregistrées dans le datalogger peut être obtenue au format JSON
à l'aide de l'URL suivante:
http://127.0.0.1:4444/bySerial/YCTOPOC1-12345/dataLogger.json
Le détail de chaque mesure pour un chaque tranche d'enregistrement peut être obtenu en ajoutant à
l'URL l'identifiant de la fonction désirée et l'heure de départ de la tranche:
http://127.0.0.1:4444/bySerial/YCTOPOC1-12345/dataLogger.json?id=led1&utc=1389801080
18.3. Utilisation des librairies dynamiques
L'API Yoctopuce bas niveau est disponible sous différents formats de librairie dynamiques écrites en
C, dont les sources sont disponibles avec l'API C++. Utiliser une de ces librairies bas niveau vous
permettra de vous passer du Virtual Hub.
Filename
libyapi.dylib
libyapi-amd64.so
libyapi-armel.so
libyapi-armhf.so
libyapi-i386.so
yapi64.dll
yapi.dll
Ces librairies dynamiques contiennent toutes les fonctionnalités nécessaires pour reconstruire
entièrement toute l'API haut niveau dans n'importe quel langage capable d'intégrer ces librairies. Ce
chapitre se limite cependant à décrire une utilisation de base des modules.
Contrôle d'un module
Les trois fonctions essentielles de l'API bas niveau sont les suivantes:
int yapiInitAPI(int
int yapiUpdateDeviceList(int
int yapiHTTPRequest(char
char
*errmsg);
La fonction yapiInitAPI permet d'initialiser l'API et doit être appelée une fois en début du programme.
Pour une connection de type USB, le paramètre connection_type doit prendre la valeur 1. errmsg est
un pointeur sur un buffer de 255 caractères destiné à récupérer un éventuel message d'erreur. Ce
pointeur peut être aussi mis à NULL. La fonction retourne un entier négatif en cas d'erreur, ou zéro
dans le cas contraire.
La fonction yapiUpdateDeviceList gère l'inventaire des modules Yoctopuce connectés, elle doit être
appelée au moins une fois. Pour pouvoir gérer le hot plug, et détecter d'éventuels nouveaux modules
connectés, cette fonction devra être apellée à intervalles réguliers. Le paramètre forceupdate devra
être à la valeur 1 pour forcer un scan matériel. Le paramètre errmsg devra pointer sur un buffer de
255 caractères pour récupérer un éventuel message d'erreur. Ce pointeur peut aussi être à
null.Cette fonction retourne un entier négatif en cas d'erreur, ou zéro dans le cas contraire.
Enfin, la fonction yapiHTTPRequest permet d'envoyer des requêtes HTTP à l'API REST du module.
Le paramètre device devra contenir le numéro de série ou le nom logique du module que vous
cherchez à atteindre. Le paramètre request doit contenir la requête HTTP complète (y compris les
sauts de ligne terminaux). buffer doit pointer sur un buffer de caractères suffisamment grand pour
contenir la réponse. buffsize doit contenir la taille du buffer. fullsize est un pointeur sur un entier qui
sera affecté à la taille effective de la réponse. Le paramètre errmsg devra pointer sur un buffer de
www.yoctopuce.com
Plateforme
Max OS X
Linux Intel (64 bits)
Linux ARM EL
Linux ARM HL
Linux Intel (32 bits)
Windows (64 bits)
Windows (32 bits)
connection_type,
char
forceupdate,
*device,
char
*request, char*
18. Utilisation avec des langages non supportés
*errmsg);
char
*errmsg);
buffer,int buffsize,int
*fullsize,
105