package websocket import ( "ChronoTomato/internal/notifications" "ChronoTomato/internal/shared" "encoding/json" "fmt" "github.com/charmbracelet/log" "github.com/gorilla/websocket" ) var Done = make(chan struct{}) func ProcessServerMessages(conn *websocket.Conn) { defer close(Done) for { _, message, err := conn.ReadMessage() if err != nil { fmt.Println() log.Error("Read error!", "reason", err) return } err = json.Unmarshal(message, &shared.ServerMessage) if err != nil { log.Error("Error unmarshalling!", "reason", err) continue } notifications.DesktopNotifications() notifications.TerminalOutput() } }