Add ping2

This commit is contained in:
root
2024-05-08 09:05:36 +03:00
parent 5c77eb1783
commit e03e5e7c47
8 changed files with 609 additions and 15 deletions

View File

@@ -3,6 +3,7 @@
import (
"time"
"sync"
"net/http"
"github.com/gorilla/websocket"
@@ -11,6 +12,7 @@
type cmpWbsCliStruct struct {
W http.ResponseWriter
Connect *websocket.Conn
Mutex sync.Mutex
HostPort string
}
@@ -44,9 +46,12 @@
app.Log("New client: %s", HostPort)
var Mutex sync.Mutex
var cmpWbsCli cmpWbsCliStruct = cmpWbsCliStruct{
w,
conn,
Mutex,
HostPort,
}
@@ -107,14 +112,16 @@
}
} else {
out["error"] = "Unknown snip"
app.Log("Unknow snip:", inp["snip"])
app.Log("Unknow snip: %s", inp["snip"])
}
err = conn.WriteJSON(out)
/*
err = conn.Write-JSON(out)
if err != nil {
app.Log(err)
}
*/
app.HttpWebSockSendRawTo(cmpWbsCli, out)
// for
}
@@ -122,21 +129,34 @@
return
}
func (app *App) HttpWebSockSendTo(cmpWbsCli cmpWbsCliStruct, snip string, result map[string]interface{}) {
func (app *App) HttpWebSockSendRawTo(cmpWbsCli cmpWbsCliStruct, raw map[string]interface{}) {
var err error
out := map[string]interface{}{
"snip": snip,
"result": result,
}
app.Log("LOCK")
err = cmpWbsCli.Connect.WriteJSON(out)
cmpWbsCli.Mutex.Lock()
defer cmpWbsCli.Mutex.Unlock()
err = cmpWbsCli.Connect.WriteJSON(raw)
if err != nil {
app.Log(err)
return
}
return
}
func (app *App) HttpWebSockSendTo(cmpWbsCli cmpWbsCliStruct, snip string, result map[string]interface{}) {
out := map[string]interface{}{
"snip": snip,
"result": result,
}
app.HttpWebSockSendRawTo(cmpWbsCli, out)
return
}