Files
tether/reactivity/client.go
T

31 lines
565 B
Go

package reactivity
import (
"log/slog"
"github.com/google/uuid"
"github.com/gorilla/websocket"
)
type Client struct {
ID string
Conn *websocket.Conn
Send chan []byte
}
func NewClient(conn *websocket.Conn) *Client {
return &Client{ID: uuid.NewString(), Conn: conn, Send: make(chan []byte, 256)}
}
func (c *Client) WritePump() {
defer c.Conn.Close()
for message := range c.Send {
err := c.Conn.WriteMessage(websocket.TextMessage, message)
if err != nil {
slog.Error("Client write pump failed", "error", err, "client", c.ID)
return
}
}
}