commit 2127ad36a99fbf74c1c355146d3a23eda23b4d87 Author: alex Date: Sun Dec 11 22:49:02 2022 +0100 init client diff --git a/index.html b/index.html new file mode 100644 index 0000000..de03d8c --- /dev/null +++ b/index.html @@ -0,0 +1,31 @@ + + + + + + + Document + + + +

UserID:

+ +
+ + + +
+
+ + + + + + + + \ No newline at end of file diff --git a/script.js b/script.js new file mode 100644 index 0000000..b9388b4 --- /dev/null +++ b/script.js @@ -0,0 +1,58 @@ +window.onload = () => { + const msg = document.getElementById("msg") + const receiver = document.getElementById("receiver") + + document.getElementById("btn-send").onclick = function() { + const chatMsg = {cmd: 2, rec: receiver.value, body: {msg: {"id": "1293", "body": msg.value}}} + + ws.send(JSON.stringify(chatMsg)) + + console.log("Send:", chatMsg, msg.value) + } + + document.getElementById("btn-clear").onclick = () => { + msg.value = "" + } + + document.getElementById("copy-userid").onclick = () => { + navigator.clipboard.writeText(document.getElementById("userid").innerHTML) + console.log("copied to clipboard") + } + + document.getElementById("btn-clear-rec").onclick = () => { + document.getElementById("receiver").value = "" + } + + connectWS() +} + +let ws = null + +function connectWS() { + ws = new WebSocket("ws://localhost:3000/") + + ws.onopen = () => { + console.info("ws open", document.getElementById("userid")) + } + + ws.onmessage = (msg) => { + console.log("rec msg:", msg.data) + + let data = JSON.parse(msg.data) + + if (data["Cmd"] == 99999) { + document.getElementById("userid").innerHTML = data["Body"] + } + } + + ws.onclose = (e) => { + console.log("ws closed", e.reason) + document.getElementById("userid").innerHTML = "" + setTimeout(() => connectWS(), 1000) + } + + ws.onerror = (err) => { + console.warn("err:", err) + } +} +