diff options
Diffstat (limited to 'server/message.go')
| -rw-r--r-- | server/message.go | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/server/message.go b/server/message.go new file mode 100644 index 0000000..8d89797 --- /dev/null +++ b/server/message.go @@ -0,0 +1,29 @@ +package server + +import ( + "log" + "time" + + "git.rctt.net/solec/core" +) + +func (s *Server) SendBroadcast(msg string) { + payload := core.Message{ + Source: "op@example.org", + Target: "*@example.org", + Timestamp: time.Now(), + Content: msg, + } + data, err := core.Encode(payload) + if err != nil { + panic(err) + } + + for _, u := range s.users { + for c := range u.Conns { + if _, err := c.Write(data); err != nil { + log.Println("cannot send", err) + } + } + } +} |
