|
@@ -74,7 +74,6 @@ func WsHandler(w http.ResponseWriter, r *http.Request) {
|
|
|
for {
|
|
for {
|
|
|
_, msg, err := conn.ReadMessage()
|
|
_, msg, err := conn.ReadMessage()
|
|
|
if err != nil {
|
|
if err != nil {
|
|
|
- return
|
|
|
|
|
}
|
|
}
|
|
|
var payload structs.WsPayload
|
|
var payload structs.WsPayload
|
|
|
// if it fails to marshal, assume that means no token
|
|
// if it fails to marshal, assume that means no token
|
|
@@ -85,7 +84,6 @@ func WsHandler(w http.ResponseWriter, r *http.Request) {
|
|
|
newToken, err := auth.CreateToken(conn, r, false)
|
|
newToken, err := auth.CreateToken(conn, r, false)
|
|
|
if err != nil {
|
|
if err != nil {
|
|
|
config.Logger.Error("Unable to create token")
|
|
config.Logger.Error("Unable to create token")
|
|
|
- continue
|
|
|
|
|
}
|
|
}
|
|
|
result := map[string]interface{}{
|
|
result := map[string]interface{}{
|
|
|
"type": "activity",
|
|
"type": "activity",
|
|
@@ -98,11 +96,9 @@ func WsHandler(w http.ResponseWriter, r *http.Request) {
|
|
|
if err != nil {
|
|
if err != nil {
|
|
|
errmsg := fmt.Sprintf("Error marshalling token: %v", err)
|
|
errmsg := fmt.Sprintf("Error marshalling token: %v", err)
|
|
|
config.Logger.Error(errmsg)
|
|
config.Logger.Error(errmsg)
|
|
|
- return
|
|
|
|
|
}
|
|
}
|
|
|
if err := conn.WriteMessage(websocket.TextMessage, respJson); err != nil {
|
|
if err := conn.WriteMessage(websocket.TextMessage, respJson); err != nil {
|
|
|
config.Logger.Error(fmt.Sprintf("Error writing response: %v", err))
|
|
config.Logger.Error(fmt.Sprintf("Error writing response: %v", err))
|
|
|
- return
|
|
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
|
payload.Payload = structs.WsLoginPayload{}
|
|
payload.Payload = structs.WsLoginPayload{}
|
|
@@ -132,19 +128,16 @@ func WsHandler(w http.ResponseWriter, r *http.Request) {
|
|
|
if err := broadcast.BroadcastToClients(); err != nil {
|
|
if err := broadcast.BroadcastToClients(); err != nil {
|
|
|
errmsg := fmt.Sprintf("Unable to broadcast to peer(s): %v", err)
|
|
errmsg := fmt.Sprintf("Unable to broadcast to peer(s): %v", err)
|
|
|
config.Logger.Error(errmsg)
|
|
config.Logger.Error(errmsg)
|
|
|
- return
|
|
|
|
|
}
|
|
}
|
|
|
default:
|
|
default:
|
|
|
errmsg := fmt.Sprintf("Unknown request type: %s", payload.Type)
|
|
errmsg := fmt.Sprintf("Unknown request type: %s", payload.Type)
|
|
|
config.Logger.Warn(errmsg)
|
|
config.Logger.Warn(errmsg)
|
|
|
- return
|
|
|
|
|
}
|
|
}
|
|
|
} else {
|
|
} else {
|
|
|
switch payload.Type {
|
|
switch payload.Type {
|
|
|
case "login":
|
|
case "login":
|
|
|
if err = loginHandler(conn, msg, payload); err != nil {
|
|
if err = loginHandler(conn, msg, payload); err != nil {
|
|
|
config.Logger.Error(fmt.Sprintf("%v", err))
|
|
config.Logger.Error(fmt.Sprintf("%v", err))
|
|
|
- return
|
|
|
|
|
}
|
|
}
|
|
|
case "setup":
|
|
case "setup":
|
|
|
config.Logger.Info("Setup")
|
|
config.Logger.Info("Setup")
|
|
@@ -152,13 +145,12 @@ func WsHandler(w http.ResponseWriter, r *http.Request) {
|
|
|
default:
|
|
default:
|
|
|
errmsg := fmt.Sprintf("Unknown request type: %s", payload.Type)
|
|
errmsg := fmt.Sprintf("Unknown request type: %s", payload.Type)
|
|
|
config.Logger.Warn(errmsg)
|
|
config.Logger.Warn(errmsg)
|
|
|
- return
|
|
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
|
- }
|
|
|
|
|
- // default to unauth
|
|
|
|
|
- if !auth.WsAuthCheck(conn) {
|
|
|
|
|
- unauthHandler(conn, r)
|
|
|
|
|
|
|
+ // default to unauth
|
|
|
|
|
+ if !auth.WsAuthCheck(conn) {
|
|
|
|
|
+ unauthHandler(conn, r)
|
|
|
|
|
+ }
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
|
|
|
|