Fixing websocket connection
Этот коммит содержится в:
@@ -22,19 +22,19 @@ const (
|
||||
type WebConn struct {
|
||||
WebSocket *websocket.Conn
|
||||
Send chan *model.Message
|
||||
SessionId string
|
||||
SessionToken string
|
||||
UserId string
|
||||
hasPermissionsToChannel map[string]bool
|
||||
hasPermissionsToTeam map[string]bool
|
||||
}
|
||||
|
||||
func NewWebConn(ws *websocket.Conn, userId string, sessionId string) *WebConn {
|
||||
func NewWebConn(ws *websocket.Conn, userId string, sessionToken string) *WebConn {
|
||||
go func() {
|
||||
achan := Srv.Store.User().UpdateUserAndSessionActivity(userId, sessionId, model.GetMillis())
|
||||
achan := Srv.Store.User().UpdateUserAndSessionActivity(userId, sessionToken, model.GetMillis())
|
||||
pchan := Srv.Store.User().UpdateLastPingAt(userId, model.GetMillis())
|
||||
|
||||
if result := <-achan; result.Err != nil {
|
||||
l4g.Error(utils.T("api.web_conn.new_web_conn.last_activity.error"), userId, sessionId, result.Err)
|
||||
l4g.Error(utils.T("api.web_conn.new_web_conn.last_activity.error"), userId, sessionToken, result.Err)
|
||||
}
|
||||
|
||||
if result := <-pchan; result.Err != nil {
|
||||
@@ -46,7 +46,7 @@ func NewWebConn(ws *websocket.Conn, userId string, sessionId string) *WebConn {
|
||||
Send: make(chan *model.Message, 64),
|
||||
WebSocket: ws,
|
||||
UserId: userId,
|
||||
SessionId: sessionId,
|
||||
SessionToken: sessionToken,
|
||||
hasPermissionsToChannel: make(map[string]bool),
|
||||
hasPermissionsToTeam: make(map[string]bool),
|
||||
}
|
||||
@@ -125,7 +125,7 @@ func (c *WebConn) InvalidateCacheForChannel(channelId string) {
|
||||
func (c *WebConn) HasPermissionsToTeam(teamId string) bool {
|
||||
perm, ok := c.hasPermissionsToTeam[teamId]
|
||||
if !ok {
|
||||
session := GetSession(c.SessionId)
|
||||
session := GetSession(c.SessionToken)
|
||||
if session == nil {
|
||||
perm = false
|
||||
c.hasPermissionsToTeam[teamId] = perm
|
||||
|
||||
Ссылка в новой задаче
Block a user