diff options
author | Joram Wilander <jwawilander@gmail.com> | 2016-07-18 11:10:03 -0400 |
---|---|---|
committer | GitHub <noreply@github.com> | 2016-07-18 11:10:03 -0400 |
commit | c0ab2636d699c8544ce03a58f61b95cfd66ff7ce (patch) | |
tree | c7d07934e0ff1a75aafb097a184ae150888199c0 /api/websocket_handler.go | |
parent | 180adc79af3d14de6ce62f6e687a6735db3fe82f (diff) | |
download | chat-c0ab2636d699c8544ce03a58f61b95cfd66ff7ce.tar.gz chat-c0ab2636d699c8544ce03a58f61b95cfd66ff7ce.tar.bz2 chat-c0ab2636d699c8544ce03a58f61b95cfd66ff7ce.zip |
PLT-2241 Refactored statuses into a more real-time system (#3573)
* Refactored statuses into a more real-time system
* Updated package.json with correct commit and fixed minor bug
* Minor updates to statuses based on feedback
* When setting status online, update only LastActivityAt if status already exists
Diffstat (limited to 'api/websocket_handler.go')
-rw-r--r-- | api/websocket_handler.go | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/api/websocket_handler.go b/api/websocket_handler.go index 8abec6715..5a313fe13 100644 --- a/api/websocket_handler.go +++ b/api/websocket_handler.go @@ -10,12 +10,12 @@ import ( "github.com/mattermost/platform/utils" ) -func ApiWebSocketHandler(wh func(*model.WebSocketRequest, map[string]interface{}) *model.AppError) *webSocketHandler { +func ApiWebSocketHandler(wh func(*model.WebSocketRequest) (map[string]interface{}, *model.AppError)) *webSocketHandler { return &webSocketHandler{wh} } type webSocketHandler struct { - handlerFunc func(*model.WebSocketRequest, map[string]interface{}) *model.AppError + handlerFunc func(*model.WebSocketRequest) (map[string]interface{}, *model.AppError) } func (wh *webSocketHandler) ServeWebSocket(conn *WebConn, r *model.WebSocketRequest) { @@ -25,9 +25,10 @@ func (wh *webSocketHandler) ServeWebSocket(conn *WebConn, r *model.WebSocketRequ r.T = conn.T r.Locale = conn.Locale - data := make(map[string]interface{}) + var data map[string]interface{} + var err *model.AppError - if err := wh.handlerFunc(r, data); err != nil { + if data, err = wh.handlerFunc(r); err != nil { l4g.Error(utils.T("api.web_socket_handler.log.error"), "/api/v3/users/websocket", r.Action, r.Seq, r.Session.UserId, err.SystemMessage(utils.T), err.DetailedError) err.DetailedError = "" conn.Send <- model.NewWebSocketError(r.Seq, err) |