mirror of
https://github.com/m1k1o/neko.git
synced 2024-07-24 14:40:50 +12:00
add session to host change.
This commit is contained in:
@ -26,7 +26,7 @@ func (h *MessageHandlerCtx) controlRelease(session types.Session) error {
|
||||
}
|
||||
|
||||
h.desktop.ResetKeys()
|
||||
h.sessions.ClearHost()
|
||||
session.ClearHost()
|
||||
|
||||
return nil
|
||||
}
|
||||
@ -58,7 +58,7 @@ func (h *MessageHandlerCtx) controlRequest(session types.Session) error {
|
||||
}
|
||||
}
|
||||
|
||||
h.sessions.SetHost(session)
|
||||
session.SetAsHost()
|
||||
|
||||
return nil
|
||||
}
|
||||
|
@ -56,7 +56,7 @@ func (h *MessageHandlerCtx) SessionDisconnected(session types.Session) error {
|
||||
// clear host if exists
|
||||
if session.IsHost() {
|
||||
h.desktop.ResetKeys()
|
||||
h.sessions.ClearHost()
|
||||
session.ClearHost()
|
||||
}
|
||||
|
||||
if session.Profile().IsAdmin {
|
||||
|
@ -110,18 +110,20 @@ func (manager *WebSocketManagerCtx) Start() {
|
||||
Msg("session state changed")
|
||||
})
|
||||
|
||||
manager.sessions.OnHostChanged(func(session types.Session) {
|
||||
manager.sessions.OnHostChanged(func(session, host types.Session) {
|
||||
payload := message.ControlHost{
|
||||
HasHost: session != nil,
|
||||
ID: session.ID(),
|
||||
HasHost: host != nil,
|
||||
}
|
||||
|
||||
if payload.HasHost {
|
||||
payload.HostID = session.ID()
|
||||
payload.HostID = host.ID()
|
||||
}
|
||||
|
||||
manager.sessions.Broadcast(event.CONTROL_HOST, payload)
|
||||
|
||||
manager.logger.Info().
|
||||
Str("session_id", session.ID()).
|
||||
Bool("has_host", payload.HasHost).
|
||||
Str("host_id", payload.HostID).
|
||||
Msg("session host changed")
|
||||
|
Reference in New Issue
Block a user