MM-34389: Reliable websockets: First commit (#17297)
* MM-34389: Reliable websockets: First commit This is the first commit which makes some basic changes to get it ready for the actual implementation. Changes include: - A config field to conditionally enable it. - Refactoring the WriteMessage along with setting the deadline to a separate method. The basic idea is that the client sends the connection_id and sequence_number either during the handshake (via query params), or during challenge_auth (via added parameters in the map). If the conn_id is empty, then we create a new one and set it. Otherwise, we get the queues from a connection manager (TBD) and attach them to WebConn. ```release-note NONE ``` https://mattermost.atlassian.net/browse/MM-34389 * Incorporate review comments * Trigger CI * removing telemetry Co-authored-by: Mattermod <mattermod@users.noreply.github.com>
Этот коммит содержится в:
коммит произвёл
GitHub
родитель
ca9f4c9ed8
Коммит
4ba0c09fc7
@@ -55,11 +55,12 @@ func (wr *WebSocketRouter) ServeWebSocket(conn *WebConn, r *model.WebSocketReque
|
||||
conn.WebSocket.Close()
|
||||
return
|
||||
}
|
||||
|
||||
conn.SetSession(session)
|
||||
conn.SetSessionToken(session.Token)
|
||||
conn.UserId = session.UserId
|
||||
|
||||
// TODO: Same logic to reconnect queue as api4/websocket.go
|
||||
|
||||
wr.app.HubRegister(conn)
|
||||
|
||||
wr.app.Srv().Go(func() {
|
||||
|
||||
Ссылка в новой задаче
Block a user