File: example.js

package info (click to toggle)
libwebsockets 4.3.5-2
  • links: PTS
  • area: main
  • in suites: forky, sid
  • size: 31,288 kB
  • sloc: ansic: 194,407; javascript: 1,550; sh: 1,387; cpp: 505; java: 461; perl: 405; xml: 118; makefile: 76; awk: 5
file content (38 lines) | stat: -rw-r--r-- 834 bytes parent folder | download | duplicates (4)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
document.addEventListener("DOMContentLoaded", function() {

var head = 0, tail = 0, ring = new Array(), es;

	es = new EventSource("/sse/sourcename");
	try {
		es.onopen = function() {
			// console.log("EventSource opened");
			document.getElementById("r").disabled = 0;
		};

		es.onmessage = function got_packet(msg) {
			var n, s = "";
	
			// console.log(msg.data);
			ring[head] = msg.data + "\n";
			head = (head + 1) % 50;
			if (tail === head)
				tail = (tail + 1) % 50;
	
			n = tail;
			do {
				s = s + ring[n];
				n = (n + 1) % 50;
			} while (n !== head);
	
			document.getElementById("r").value = s; 
			document.getElementById("r").scrollTop =
				document.getElementById("r").scrollHeight;
		};

		/* there is no onclose() for EventSource */

	} catch(exception) {
		alert("<p>Error" + exception);  
	}

}, false);