Sebastian Mark
ab2e8c161d
- add goroutine to remove stale clients from the connection pool
- update client struct to track `LastPong` time
- set write deadline for websocket connections
- move package variables and const to `vars.go`
- log additional information when broadcasting errors
🤖
18 lines
420 B
Go
18 lines
420 B
Go
package websocket
|
|
|
|
import (
|
|
"net"
|
|
"sync"
|
|
|
|
"git.smsvc.net/pomodoro/GoTomato/pkg/models"
|
|
)
|
|
|
|
const SEND_TIMEOUT = 10
|
|
const STALE_CLIENT_TIMEOUT = 90
|
|
const STALE_CHECK_INTERVALL = 30
|
|
|
|
// Clients is a map of connected WebSocket clients, where each client is represented by the WebsocketClient struct
|
|
var Clients = make(map[net.Addr]*models.WebsocketClient)
|
|
|
|
// Mutex to protect access to the Clients map
|
|
var mu sync.Mutex
|