优化代码

This commit is contained in:
dushixiang 2022-05-06 21:15:24 +08:00
parent 7357cebc34
commit 41768cbec9
2 changed files with 12 additions and 19 deletions

View File

@ -83,13 +83,8 @@ func (r *TermHandler) writeToWebsocket() {
if r.isRecording {
_ = r.nextTerminal.Recorder.WriteData(s)
}
nextSession := session.GlobalSessionManager.GetById(r.sessionId)
// 监控
if nextSession != nil && nextSession.Observer != nil {
nextSession.Observer.Range(func(key string, ob *session.Session) {
_ = ob.WriteMessage(dto.NewMessage(Data, s))
})
}
SendObData(r.sessionId, s)
buf = []byte{}
}
case data := <-r.dataChan:
@ -113,3 +108,12 @@ func (r *TermHandler) WriteMessage(msg dto.Message) error {
message := []byte(msg.ToString())
return r.webSocket.WriteMessage(websocket.TextMessage, message)
}
func SendObData(sessionId, s string) {
nextSession := session.GlobalSessionManager.GetById(sessionId)
if nextSession != nil && nextSession.Observer != nil {
nextSession.Observer.Range(func(key string, ob *session.Session) {
_ = ob.WriteMessage(dto.NewMessage(Data, s))
})
}
}

View File

@ -5,8 +5,6 @@ import (
"strings"
"next-terminal/server/api"
"next-terminal/server/dto"
"next-terminal/server/global/session"
"next-terminal/server/term"
"github.com/gliderlabs/ssh"
@ -51,24 +49,15 @@ func (w *Writer) Write(p []byte) (n int, err error) {
if err != nil {
return 0, err
}
sendObData(w.sessionId, s)
api.SendObData(w.sessionId, s)
}
} else {
err := w.recorder.WriteData(s)
if err != nil {
return 0, err
}
sendObData(w.sessionId, s)
api.SendObData(w.sessionId, s)
}
}
return (*w.sess).Write(p)
}
func sendObData(sessionId, s string) {
nextSession := session.GlobalSessionManager.GetById(sessionId)
if nextSession != nil && nextSession.Observer != nil {
nextSession.Observer.Range(func(key string, ob *session.Session) {
_ = ob.WriteMessage(dto.NewMessage(api.Data, s))
})
}
}