From 4adcb388e6aa3657d941386d407f2bce9442847d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ola=20Holmstr=C3=B6m?= Date: Thu, 14 May 2015 19:29:20 +0200 Subject: [PATCH] multi channel chat demo --- README.md | 36 +++++++++++++---------- examples/multichat/chan.html | 53 ++++++++++++++++++++++++++++++++++ examples/multichat/demo.gif | Bin 0 -> 152787 bytes examples/multichat/index.html | 34 ++++++++++++++++++++++ examples/multichat/main.go | 32 ++++++++++++++++++++ melody.go | 10 +++---- session.go | 17 ++++++----- 7 files changed, 154 insertions(+), 28 deletions(-) create mode 100644 examples/multichat/chan.html create mode 100644 examples/multichat/demo.gif create mode 100644 examples/multichat/index.html create mode 100644 examples/multichat/main.go diff --git a/README.md b/README.md index 094889d..a992ecf 100644 --- a/README.md +++ b/README.md @@ -1,17 +1,15 @@ -# melody +# melody [![Build Status](https://travis-ci.org/olahol/melody.svg)](https://travis-ci.org/olahol/melody) [![GoDoc](https://godoc.org/github.com/olahol/melody?status.svg)](https://godoc.org/github.com/olahol/melody) -[![GoDoc](https://godoc.org/github.com/olahol/melody?status.svg)](https://godoc.org/github.com/olahol/melody) -[![Build Status](https://travis-ci.org/olahol/melody.svg)](https://travis-ci.org/olahol/melody) - -> :notes: Simple websocket framework for Go +> :notes: Minimalist websocket framework for Go. Melody is websocket framework based on [github.com/gorilla/websocket](https://github.com/gorilla/websocket) -that abstracts away the more tedious parts of handling websockets. Features include: +that abstracts away the tedious parts of handling websockets. It gets out of +your way so you can write real-time apps. Features include: -* [x] Timeouts for write and read. -* [x] Built-in ping/pong handling. -* [x] Message buffer for connections making concurrent writing easy. -* [x] Simple broadcasting to all or selected sessions. +* [x] Clear and easy interface similar to `net/http` or Gin. +* [x] A simple way to broadcast to all or selected connected sessions. +* [x] Message buffers making concurrent writing safe. +* [x] Automatic handling of ping/pong and session timeouts. ## Install @@ -21,10 +19,10 @@ go get github.com/olahol/melody ## [Example](https://github.com/olahol/melody/tree/master/examples) -[Simple broadcasting chat server](https://github.com/olahol/melody/tree/master/examples/chat), +[Multi channel chat server](https://github.com/olahol/melody/tree/master/examples/multichat), error handling left as en exercise for the developer. -[![Chat demo](https://cdn.rawgit.com/olahol/melody/master/examples/chat/demo.gif "Demo")](https://github.com/olahol/melody/tree/master/examples/chat) +[![Chat demo](https://cdn.rawgit.com/olahol/melody/master/examples/chat/demo.gif "Demo")](https://github.com/olahol/melody/tree/master/examples/multichat) ```go package main @@ -43,16 +41,24 @@ func main() { http.ServeFile(c.Writer, c.Request, "index.html") }) - r.GET("/ws", func(c *gin.Context) { + r.GET("/channel/:name", func(c *gin.Context) { + http.ServeFile(c.Writer, c.Request, "chan.html") + }) + + r.GET("/channel/:name/ws", func(c *gin.Context) { m.HandleRequest(c.Writer, c.Request) }) m.HandleMessage(func(s *melody.Session, msg []byte) { - m.Broadcast(msg) + m.BroadcastFilter(msg, func(q *melody.Session) bool { + return q.Request.URL.Path == s.Request.URL.Path + }) }) r.Run(":5000") } ``` -### [Documentation](https://godoc.org/github.com/olahol/melody) +### [More examples](https://github.com/olahol/melody/tree/master/examples) + +## [Documentation](https://godoc.org/github.com/olahol/melody) diff --git a/examples/multichat/chan.html b/examples/multichat/chan.html new file mode 100644 index 0000000..4ea76ba --- /dev/null +++ b/examples/multichat/chan.html @@ -0,0 +1,53 @@ + + + Melody example: chatting + + + + + +
+

+

+      
+    
+ + + + diff --git a/examples/multichat/demo.gif b/examples/multichat/demo.gif new file mode 100644 index 0000000000000000000000000000000000000000..0bd7afe848d6ae442a056ec4e9e426a76ca5ceb7 GIT binary patch literal 152787 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

F?H|&4&Vj}&?&qEVw2=)P)iaI_(17| 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 literal 0 HcmV?d00001 diff --git a/examples/multichat/index.html b/examples/multichat/index.html new file mode 100644 index 0000000..c93fd66 --- /dev/null +++ b/examples/multichat/index.html @@ -0,0 +1,34 @@ + + + Melody example: chatting + + + + + +

+

Join a channel

+ +
+ + + + diff --git a/examples/multichat/main.go b/examples/multichat/main.go new file mode 100644 index 0000000..20c4acd --- /dev/null +++ b/examples/multichat/main.go @@ -0,0 +1,32 @@ +package main + +import ( + "../../" + "github.com/gin-gonic/gin" + "net/http" +) + +func main() { + r := gin.Default() + m := melody.New() + + r.GET("/", func(c *gin.Context) { + http.ServeFile(c.Writer, c.Request, "index.html") + }) + + r.GET("/channel/:name", func(c *gin.Context) { + http.ServeFile(c.Writer, c.Request, "chan.html") + }) + + r.GET("/channel/:name/ws", func(c *gin.Context) { + m.HandleRequest(c.Writer, c.Request) + }) + + m.HandleMessage(func(s *melody.Session, msg []byte) { + m.BroadcastFilter(msg, func(q *melody.Session) bool { + return q.Request.URL.Path == s.Request.URL.Path + }) + }) + + r.Run(":5000") +} diff --git a/melody.go b/melody.go index 0b4b982..21a1da7 100644 --- a/melody.go +++ b/melody.go @@ -63,14 +63,14 @@ func (m *Melody) HandleError(fn func(*Session, error)) { } // Handles a http request and upgrades it to a websocket. -func (m *Melody) HandleRequest(w http.ResponseWriter, r *http.Request) error { +func (m *Melody) HandleRequest(w http.ResponseWriter, r *http.Request) { conn, err := m.upgrader.Upgrade(w, r, nil) if err != nil { - return err + return } - session := newSession(m.Config, conn) + session := newSession(m.Config, conn, r) m.hub.register <- session @@ -83,8 +83,6 @@ func (m *Melody) HandleRequest(w http.ResponseWriter, r *http.Request) error { m.hub.unregister <- session go m.disconnectHandler(session) - - return nil } // Broadcasts a message to all sessions. @@ -94,7 +92,7 @@ func (m *Melody) Broadcast(msg []byte) { } // Broadcasts a message to all sessions that fn returns true for. -func (m *Melody) BroadcastFilter(fn func(*Session) bool, msg []byte) { +func (m *Melody) BroadcastFilter(msg []byte, fn func(*Session) bool) { message := &envelope{t: websocket.TextMessage, msg: msg, filter: fn} m.hub.broadcast <- message } diff --git a/session.go b/session.go index 7090ac8..3f4e471 100644 --- a/session.go +++ b/session.go @@ -2,21 +2,24 @@ package melody import ( "github.com/gorilla/websocket" + "net/http" "time" ) // A melody session. type Session struct { - conn *websocket.Conn - output chan *envelope - config *Config + Request *http.Request + conn *websocket.Conn + output chan *envelope + config *Config } -func newSession(config *Config, conn *websocket.Conn) *Session { +func newSession(config *Config, conn *websocket.Conn, req *http.Request) *Session { return &Session{ - conn: conn, - output: make(chan *envelope, config.MessageBufferSize), - config: config, + Request: req, + conn: conn, + output: make(chan *envelope, config.MessageBufferSize), + config: config, } }