annotate service/wallscreen/websocket.js @ 114:4cd065b97fa1

bugs in async http client. move trig helpers to rdflibtrig, which can work with rdflib 4 Ignore-this: 81dc30256f5d2658e53fce60abea66db
author drewp@bigasterisk.com
date Tue, 10 Sep 2013 00:38:52 -0700
parents 1afb0564636d
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
61
1afb0564636d use websockets for temperature update
drewp@bigasterisk.com
parents:
diff changeset
1 // from the light9/rdfdb one
1afb0564636d use websockets for temperature update
drewp@bigasterisk.com
parents:
diff changeset
2
1afb0564636d use websockets for temperature update
drewp@bigasterisk.com
parents:
diff changeset
3 function reconnectingWebSocket(url, onMessage) {
1afb0564636d use websockets for temperature update
drewp@bigasterisk.com
parents:
diff changeset
4 var pong = 0;
1afb0564636d use websockets for temperature update
drewp@bigasterisk.com
parents:
diff changeset
5 function connect() {
1afb0564636d use websockets for temperature update
drewp@bigasterisk.com
parents:
diff changeset
6 var ws = new WebSocket(url);
1afb0564636d use websockets for temperature update
drewp@bigasterisk.com
parents:
diff changeset
7
1afb0564636d use websockets for temperature update
drewp@bigasterisk.com
parents:
diff changeset
8 ws.onopen = function() { $("#status").text(""); };
1afb0564636d use websockets for temperature update
drewp@bigasterisk.com
parents:
diff changeset
9 ws.onerror = function(e) { $("#status").text("error: "+e); };
1afb0564636d use websockets for temperature update
drewp@bigasterisk.com
parents:
diff changeset
10 ws.onclose = function() {
1afb0564636d use websockets for temperature update
drewp@bigasterisk.com
parents:
diff changeset
11 pong = 1 - pong;
1afb0564636d use websockets for temperature update
drewp@bigasterisk.com
parents:
diff changeset
12 $("#status").text("disconnected (retrying "+(pong ? "😼":"😺")+")");
1afb0564636d use websockets for temperature update
drewp@bigasterisk.com
parents:
diff changeset
13 setTimeout(connect, 2000);
1afb0564636d use websockets for temperature update
drewp@bigasterisk.com
parents:
diff changeset
14 };
1afb0564636d use websockets for temperature update
drewp@bigasterisk.com
parents:
diff changeset
15 ws.onmessage = function (evt) {
1afb0564636d use websockets for temperature update
drewp@bigasterisk.com
parents:
diff changeset
16 onMessage(JSON.parse(evt.data));
1afb0564636d use websockets for temperature update
drewp@bigasterisk.com
parents:
diff changeset
17 };
1afb0564636d use websockets for temperature update
drewp@bigasterisk.com
parents:
diff changeset
18 }
1afb0564636d use websockets for temperature update
drewp@bigasterisk.com
parents:
diff changeset
19 connect();
1afb0564636d use websockets for temperature update
drewp@bigasterisk.com
parents:
diff changeset
20 }