Informatique

8 août 2011

Pachube racheté par LogMeIn

Plus d'articles de »
Ecrit par: Vincent PREMEL
Mots-clefs :

Connaissez vous Pachube ? Pachube (prononcé Patch-bay) est une société anglaise qui fournit une plateforme web permettant d’échanger des données entre machines (ce qu’on appelle « l’Internet des objets »). Une sorte de réseau social pour thermomètres et hygromètres. Petite présentation à l’occasion du rachat de la start-up anglaise par une société spécialisée dans la télémaintenance et l’accès informatique à distance, LogMeIn.

 

 

I. Concrètement, comment ça marche ?

 

Pachube fournit une API (Advanced Programming Interface) qui permet à une machine connectée à Internet, de fournir des données au serveur Pachube (ce que Pachube appelle des « feeds » – voir un exemple) dans un format compatible (JSON, XML, ou CSV). Bien entendu, il faut que la machine soit programmée pour accéder à Pachube. Il existe par exemple de nombreux programmes Arduino compatibles. La documentation de l’API permet toutefois à n’importe quel programmeur de créer un programme sur la plateforme de son choix. Pachube vous permet alors d’archiver vos données, de les visualiser et de les partager avec d’autres utilisateurs.

Pour utiliser Pachube, vous devez d’abord créer un compte. Il y a plusieurs formules, la première étant gratuite. Pachube vous fournira alors un identifiant avec lequel vous devrez configurer votre appareil. En fonction des options, vous disposerez de 5 à 250 feeds, d’un archivage allant de 1 mois à une durée indéterminée, et la possibilité ou non de créer des feeds privés.

 

II. Pour quoi faire ?

 

Pachube vous permet de créer facilement des graphiques, c’est la première utilisation qui saute aux yeux. Comment évolue la température de mon salon ou l’hygrométrie de mon jardin au cours du temps ? Pachube vous permet de l’enregistrer et de le visualiser.

 

Exemple de feeds Pachube - la température d'une pièce

 

Mais le plus intéressant, à mon avis, reste la possibilité de croiser les données de différents capteurs. Un tel réseau permettrait de mutualiser les informations entre systèmes domotiques. Vous n’avez pas d’anémomètre sur votre maison ? Votre voisin, lui, en a un et vous pouvez récupérer ses données et vous en servir pour remonter votre store électrique en cas de trop forte bourrasque. En échange, vous lui fournirez une information sur la présence de pluie qui lui permettra de retarder son arrosage automatique.

Ce genre de réseau permettrait également un maillage très fin pour des mesures météorologiques, par exemple.

Bien entendu, créer un programme pour Pachube nécessite de solides connaissances informatiques. Mais souhaitons que des appareils compatibles Pachube arrivent sous peu, simplifiant son utilisation pour les utilisateurs lambda.



A propos de l'auteur

Vincent PREMEL
Vincent PREMEL
Je travaille dans l'intégration audiovisuelle depuis 12 ans. Mon emploi m'a amené à travailler avec des systèmes domotiques « haut de gamme », AMX et Crestron notamment. Je suis également formé au système KNX. Ma maison tire donc partie de mes expériences et est équipée KNX et Crestron.




 
 

 
photo-3

Airplay enfin disponible sur Windows !

Depuis que Apple a mis à disposition la fonction Airplay, qui permet d’envoyer de la vidéo ou des photos de son iBidule vers son AppleTV, cela me tentait vraiment: pas de fil, vraiment facile à utiliser ! Un film dispo...
par Cédric Locqueneux
7

 
 
Happy money man

Les gagnants des 10 UDID sont…

Javais mis en jeu la semaine dernière 10 inscriptions sur mon programme Developer d’Apple, afin que 10 personnes puissent tester les beta d’IOS 5. Au final, seules 12 personnes ont participé. Pas beaucoup d’...
par Cédric Locqueneux
16

 
 
overview_hero

Concours: Gagner 10 UDID développeurs pour installer iOs 5

Depuis que j’ai eu mon premier iPhone, puis ensuite mon iPad, j’ai fini par me convertir au monde Mac, notamment en me montant un Hackintosh, en attendant d’avoir les moyens d’acheter un vrai Mac :p Je s...
par Cédric Locqueneux
15

 

 
reporting

FreeNAS 8 est disponible

Il y a un peu plus d’un an je vous avais expliqué comment réaliser un NAS soit même, fonctionnant avec Freenas. Et bien ce système vient d’être mis à jour en version 8, et les nouveautés sont nombreuses ! Tou...
par Cédric Locqueneux
22

 
 
media-browser

Nouvelle version de Media Browser: Titan

Media Browser, le plugin pour Windows Media Center qui permet d’avoir une présentation de ses films beaucoup plus sympa, vient d’être mis à jour en version 2.3.1, nom de code « Titan ». Pour...
par Cédric Locqueneux
8

 




7 Commentaires


  1. J’ai étudié un peu cette solution il y a peu de temps, dans le but d’envoyer les données receuillies par la Vera pour ensuite en avoir une représentation graphique, chose que ne sait pas faire la Vera. Il faut en effet avoir de bonnes notions de programmation, car la mise en place n’est pas si aisée :( Je n’ai pas encore réussi à faire ce que je voulais, mais dès que j’ai un peu e temps, je m’y remet, car cette solution est vraiment intéressante !


  2. Il y a aussi open.sen.se, une sorte de pachube français fait par des anciens de Violet qui est prometteur, mais bizarrement il n’évolue pas vite:
    http://open.sen.se/

    Il y a un connecteur pachube d’ailleurs dans open.sen.se
    Le plus intéressant je trouve dans cette solution c’est leur annonce du support d’xmpp, mais pour l’instant rien ne vient.

    @Cédric: tu veux faire quoi sur pachube ? J’ai aussi un peu les même besoin de pousser quelques infos de la vera
    Dernier article de Thomas:Installation d’un couple de serveurs dhcp et dns redondantsMy Profile


  3. A partir de la Vera, l’idée serait par exemple de remonter les températures, humidité, voire également la consommation électrique. Pour ce dernier point, il y a une représentation graphique dispo sur la Vera, mais elle ne convient pas à tous les besoins :/


  4. Vincent PREMEL
    Vincent

    @Thomas

    XMPP c’est pas mal en effet. J’avais un moment envisagé d’implémenter XMPP sur un automate AMX pour que le système me passe les alertes directement via la messagerie instantanée.

    Quant à Open Sense, je pense qu’ils cherchent à gérer eux mêmes les interactions alors que Pachube ne fait que du datalogging, à charge pour des systèmes externes de venir piocher dans la base de données.

    En tout cas, tout ce qui s’annonce pour l’avenir semble passionnant. En espérant que ça ne parte pas tous azimuts.

    A+
    Vincent


  5. Christophe

    Google met à disposition des outils sympathiques pour ce représenter dynamiquement des données sous forme de graphe. Le point le plus compliqué est à mon avis d’envoyer les données de la Vera (vivement que je la reçoive…) vers une Spreadsheet Google.
    Ensuite, un petit bout de code de Google Visualization API dans une page html et miracle, tout est en forme ! :mrgreen:
    http://www.mathieu-gerard.be/share/graph.html


  6. Vincent PREMEL
    Vincent

    Allez, tiens, je viens de m’inscrire à la beta de Sen.se.

    A+
    Vincent


  7. Voilà deux fonctions a mettre dans son startup lua, une pour patchube et l’autre pour sen.se
    Bon j’ai vite fait, c’est à tester (je l’ai testée sur des valeurs ‘light’ d’un EZMotion)

    Pour sense:
    function my_send_sense (feed, value)
    local apikey = "API_KEY"
    local base_url = "http://api.sen.se/events/"
    local method = "POST"

    require('ltn12')
    local socket = require("socket")
    local http = require("socket.http")

    local json_data = "{ \"feed_id\": " .. feed .. ", \"value\": \"" .. value .. "\" }"

    local response_body = {}
    local response, status, header = http.request{
    method = "POST",
    url = base_url .. "?sense_key=" .. apikey,
    headers = {
    ["Content-Type"] = "application/json",
    ["Content-Length"] = string.len(json_data),
    ["sense_key"] = apikey
    },
    source = ltn12.source.string(json_data),
    sink = ltn12.sink.table(response_body)
    }
    end

    pour patchube:
    function my_send_pachube (feed, datastream, value)
    local apikey = "API_KEY"
    local base_url = "http://api.pachube.com/v2/feeds/"
    local method = "PUT"

    require('ltn12')
    local socket = require("socket")
    local http = require("socket.http")

    local json_data = '{ "version":"1.0.0","datastreams":[ {"id":"' .. datastream .. '", "current_value":"' .. value .. '"}]}'
    local response_body = {}
    local response, status, header = http.request{
    method = method,
    url = base_url .. feed,
    headers = {
    ["Content-Type"] = "application/json",
    ["Content-Length"] = string.len(json_data),
    ["X-PachubeApiKey"] = apikey
    },
    source = ltn12.source.string(json_data),
    sink = ltn12.sink.table(response_body)
    }
    end

    Voilà, ensuite il suffit de créer une scène, déclenchée par timer (j’ai mis toutes les 5 minutes) avec un code lua qui appelle l’une, l’autre ou les deux.
    Ici pour mon capteur de lumière:
    local deviceID = 18

    local lumsalon = luup.variable_get("urn:micasaverde-com:serviceId:LightSensor1", "CurrentLevel", deviceID)

    my_send_pachube ("33991", "LightSalon", lumsalon)
    my_send_sense("4167", lumsalon)

    return true

    Si j’ai le temps demain je posterais un peu plus de choses dans le forum micasa
    A+
    Thomas
    Dernier article de Thomas:Installation d’un couple de serveurs dhcp et dns redondantsMy Profile



Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *

*

Vous pouvez utiliser ces balises et attributs HTML : <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

Afficher la dernière news de mon site perso