Serveur web offrant une API Web REST full sur un RASPBERRY PI pour la consultation de l'état du port GPIO. Le serveur présente également des composants web (Web Component du W3C).
Ce service est une application de l'API rpi-gpio : https://www.npmjs.com/package/rpi-gpio
Ce service est une application du web sémantique des données. Les données échangées respectent le format RDF, la syntaxe json-ld (W3C) et hydra (W3C) et définit un vocabulaire pour la description de l'état d'une port GPIO sur RASPBERRY.
Ce service est une application de Web component Polymer.
Requête :
GET /gpio/broches/7 HTTP/1.1
Host: <www>
Réponse :
HTTP1/1 200 OK
{
context:{
gpio: http://www/gpio/vocabulaire
}
@id: http://www/gpio/broches/7,
@type: gpio:Etat,
etat: true
}
La requête renvoie l'état de la broche (pin) 7 du port GPIO.
Exemple d'intégration dans une page web.
<!-- Import element -->
<link rel="import" href="gpio-broche.html">
<!-- Use element -->
<gpio-broche pin="7"></gpio-broche>
<!-- Import element -->
<link rel="import" href="gpio-sonde-temperature.html">
<!-- Use element -->
<gpio-sonde-temperature></gpio-sonde-temperature>
L'installation et la configuration réseau du RASPBERRY PI est un prérequis.
L'installation de nodejs est un prérequis.
Installer les sources de l'application
Dans le répertoire de l'application lancer la commande de résolution des dépendances npm :
npm install
Lancement
npm start
Pour la production, voir le wiki sur la dockerisation
Ouvrir l'application dans votre navigateur à l'adresse :
http://[addresse-ip-pi]:[port-ip-pi]/#!/lum
Le service communique l'adresse de l'application web.
Documentation complète sur le wiki : https://github.com/dahuchao/gpio-wapi/wiki