Paso 8: Utilización de d'orbidot/ubidot
Nous allons maintenant mettre nos données sur un serveur participatif carrera un tout à chacun de partager ses données de températures et de pression capter.
Se rendre sur la página ci-dessous et s'inscrire
Une fois l'inscription terminée il faudra suivre le tutoriel proposé par ubidots.
Nous devrons donc modificador le script python de façon à ce qu'il comunicado les données relevées.
Pour ceux dans le código ci-dessous il faudra écrire hijo token d'accès à la place de 'Su TOKEN de acceso'
from ubidots import ApiClient import math import time import os import sys import pexpect import time import urllib2 import urllib ble_addr="E5:AE:C1:71:96:E4" class Sensortag: def __init__(self,ble_addr): self.ble_addr=ble_addr self.child = pexpect.spawn('gatttool -t random -b ' + ble_addr + ' -I') self.child.expect('\[LE\]>') print("Try to connect to the board") self.child.sendline('connect') self.child.expect('Connection successful') print("Connected") return def getTemperature(self): print("try to update the temperature") self.child.sendline('char-write-req 0x0011 0100 -listen') self.child.expect('Characteristic value was written successfully') print("wait line") self.child.sendline('char-write-cmd 0x000e A00100') self.child.expect('Notification handle = 0x0010 value: 0b .*') rval = self.child.after.split() temperature = int(rval[7], 16) print(temperature) return temperature def getPressure(self): print("try to update the pressure") self.child.sendline('char-write-req 0x0011 0100 -listen') self.child.expect('Characteristic value was written successfully') self.child.sendline('char-write-cmd 0x000e A00300') self.child.expect('Notification handle = 0x0010 value: 0b .*') rval = self.child.after.split() pressure = "" + rval[6] + rval[7] print("pressure: " + str(int(pressure, 16))) return int(pressure,16) def exit(self): self.child.sendline('exit'); return def main(): api = ApiClient(token='YOUR ACCESS TOKEN') variable = api.get_variable('574b8722762542450b077fa1') sensortag=Sensortag(ble_addr) i = 0 while i < 50: response = variable.save_value({"value": sensortag.getTemperature()}) print response time.sleep(10) i -= 1 sensortag.exit(); if __name__ == "__main__": main()