--- /dev/null
+<!DOCTYPE html>\r
+<html>\r
+<head> <!-- Please copy the following files into here: -->\r
+<script src="./Long.min.js"></script> <!-- https://raw.github.com/dcodeIO/Long.js/master/dist/Long.min.js -->\r
+<script src="./ByteBufferAB.min.js"></script> <!-- https://raw.github.com/dcodeIO/ByteBuffer.js/master/dist/ByteBufferAB.min.js -->\r
+<script src="./ProtoBuf.min.js"></script> <!-- https://raw.github.com/dcodeIO/ProtoBuf.js/master/dist/ProtoBuf.min.js -->\r
+<script>\r
+if (typeof dcodeIO === 'undefined' || !dcodeIO.ProtoBuf) {\r
+ throw(new Error("ProtoBuf.js is not present. Please see www/index.html for manual setup instructions."));\r
+}\r
+// Initialize ProtoBuf.js\r
+var ProtoBuf = dcodeIO.ProtoBuf;\r
+var Message = ProtoBuf.loadProtoFile("./example.proto").build("Message");\r
+</script>\r
+</head>\r
+<body>\r
+<textarea id="log" style="width: 100%; height: 200px"></textarea><br />\r
+<input type="text" id="text" value="hello world!" /> <button onclick="send()">Send</button>\r
+\r
+<script>\r
+var log = document.getElementById("log");\r
+var text = document.getElementById("text");\r
+\r
+// Connect to our server: node server.js\r
+var socket = new WebSocket("ws://localhost:8080/ws");\r
+socket.binaryType = "arraybuffer"; // We are talking binary\r
+\r
+function send() {\r
+ if (socket.readyState == WebSocket.OPEN) {\r
+ var msg = new Message(text.value);\r
+ socket.send(msg.toArrayBuffer());\r
+ log.value += "Sent: "+msg.text+"\n";\r
+ } else {\r
+ log.value += "Not connected\n";\r
+ }\r
+}\r
+\r
+socket.onopen = function() {\r
+ log.value += "Connected\n";\r
+};\r
+\r
+socket.onclose = function() {\r
+ log.value += "Disconnected\n";\r
+};\r
+ \r
+socket.onmessage = function(evt) {\r
+ try {\r
+ // Decode the Message\r
+ var msg = Message.decode(evt.data);\r
+ log.value += "Received: "+msg.text+"\n";\r
+ } catch (err) {\r
+ log.value += "Error: "+err+"\n";\r
+ }\r
+};\r
+\r
+log.value = ""; // Clear log on reload\r
+</script>\r
+</body>\r
+</html>\r