ab869558
aknockae
La com série entr...
|
1
2
|
window.WebSocket=(window.WebSocket||window.MozWebSocket);
var websocket=new WebSocket('ws://192.168.1.111:9000','myprotocol');
|
926848d0
aknockae
Site web terminé,...
|
3
4
|
websocket.binaryType = 'arraybuffer'; //On utilise un objet arraybuffer pour envoyer et recevoir les données
//Cette objet permet de transformer automatiquement un buffer de plusieurs octets en un tableau de données d'un certain type, dans notre cas des entiers non signés.
|
ab869558
aknockae
La com série entr...
|
5
|
|
4972db79
aknockae
Reception et envo...
|
6
|
|
ab869558
aknockae
La com série entr...
|
7
8
9
|
websocket.onopen=function(){ $('h3 .connecOn').css('color','green'); };
websocket.onerror=function(){ $('h3 .connecOff').css('color','red'); };
|
ab869558
aknockae
La com série entr...
|
10
|
|
926848d0
aknockae
Site web terminé,...
|
11
|
//on créé le tableau des octets à envoyer pour la requete :
|
4972db79
aknockae
Reception et envo...
|
12
13
14
15
|
var requete = new Uint8ClampedArray(3);
requete[0] = 'G'.charCodeAt(0);
requete[1] = 'E'.charCodeAt(0);
requete[2] = 'T'.charCodeAt(0);
|
ab869558
aknockae
La com série entr...
|
16
|
|
ab869558
aknockae
La com série entr...
|
17
18
|
//affiche le contenu du tableau dans une alert
|
4972db79
aknockae
Reception et envo...
|
19
|
//alert(String.fromCharCode(reponseView.getUint8(0))+String.fromCharCode(reponseView.getUint8(1))+String.fromCharCode(reponseView.getUint8(2)));
|
ab869558
aknockae
La com série entr...
|
20
21
22
|
websocket.onmessage=function(message){ //Evenement surveillant la reception de message
|
926848d0
aknockae
Site web terminé,...
|
23
|
$('h4').show();
|
4972db79
aknockae
Reception et envo...
|
24
|
var reponse = new Uint8Array(message.data);
|
926848d0
aknockae
Site web terminé,...
|
25
26
27
28
29
|
//on extrait les données du buffer
var temp = reponse[1];
var hum = reponse[2];
var press = reponse[0]+845;
var lum = (reponse[3]*10000/255).toFixed(2);
|
4972db79
aknockae
Reception et envo...
|
30
|
|
926848d0
aknockae
Site web terminé,...
|
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
|
$('#relevesMeteo .temperature').text(temp+' °C');
$('#relevesMeteo .humidite').text(hum+' %');
$('#relevesMeteo .pression').text(press+' hPa');
$('#relevesMeteo .luminosite').text(lum+' Lux');
//On estime l'état du ciel grâce aux données envoyées par les capteurs.
//http://leguidemeteo.com/prevoir-le-temps-a-partir-de-son-barometre/
if(lum >= 100 && lum <= 1000)
$('.nuage').text("nuageux");
else
$('.nuage').text("clair");
if(press <= 1006)
$('.pluie').text("pleut");
else
$('.pluie').text('ne pleut pas')
|
ab869558
aknockae
La com série entr...
|
47
48
49
50
|
};
function requeteEnvoi(){
|
4972db79
aknockae
Reception et envo...
|
51
|
websocket.send(requete.buffer);
|
ab869558
aknockae
La com série entr...
|
52
53
54
55
56
|
}
//setInterval(requeteEnvoi,1000);
|