直播后台:新增按 IP 发言管控与在线会话视图。
支持全体禁言、单 IP 禁言/解禁与同 IP 本地限频,同时在开播页展示在线会话明细并补充实时优先码率策略,兼顾实时性与并发承载。 Made-with: Cursor
This commit is contained in:
@@ -218,12 +218,14 @@ func handleViewerWS(c *gin.Context, h *Hub) {
|
||||
}
|
||||
vid := uuid.New().String()
|
||||
vs := &viewerSession{id: vid, ws: ws}
|
||||
sessionID := RegisterOnlineSession("viewer", c.ClientIP(), "***")
|
||||
|
||||
h.mu.Lock()
|
||||
h.viewers[vid] = vs
|
||||
h.mu.Unlock()
|
||||
|
||||
defer func() {
|
||||
UnregisterOnlineSession(sessionID)
|
||||
h.removeViewer(vid)
|
||||
_ = ws.Close()
|
||||
}()
|
||||
@@ -255,6 +257,7 @@ func handleViewerWS(c *gin.Context, h *Hub) {
|
||||
if err != nil {
|
||||
return
|
||||
}
|
||||
TouchOnlineSession(sessionID)
|
||||
var env wsEnvelope
|
||||
if err := json.Unmarshal(data, &env); err != nil {
|
||||
continue
|
||||
|
||||
Reference in New Issue
Block a user