| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455 |
- <!DOCTYPE html>
- <html>
- <head>
- <title>Browser Dialer</title>
- </head>
- <body>
- <script>
- // Copyright (c) 2021 XRAY. Mozilla Public License 2.0.
- var url = "ws://" + window.location.host + "/websocket"
- var count = 0
- setInterval(check, 1000)
- function check() {
- if (count <= 0) {
- count += 1
- console.log("Prepare", url)
- var ws = new WebSocket(url)
- var wss = undefined
- var first = true
- ws.onmessage = function (event) {
- if (first) {
- first = false
- count -= 1
- var arr = event.data.split(" ")
- console.log("Dial", arr[0], arr[1])
- wss = new WebSocket(arr[0], arr[1])
- var opened = false
- wss.onopen = function (event) {
- opened = true
- ws.send("ok")
- }
- wss.onmessage = function (event) {
- ws.send(event.data)
- }
- wss.onclose = function (event) {
- ws.close()
- }
- wss.onerror = function (event) {
- !opened && ws.send("fail")
- wss.close()
- }
- check()
- } else wss.send(event.data)
- }
- ws.onclose = function (event) {
- if (first) count -= 1
- else wss.close()
- }
- ws.onerror = function (event) {
- ws.close()
- }
- }
- }
- </script>
- </body>
- </html>
|