浏览代码

fix:修复禁言

jinx 4 年之前
父节点
当前提交
f987bebcb7
共有 1 个文件被更改,包括 23 次插入3 次删除
  1. 23 3
      daikan/rtc-live.js

+ 23 - 3
daikan/rtc-live.js

@@ -133,9 +133,29 @@ class ClientRequest {
         // 静音
         this.socket.on("muted", (muted, userId) => this.onMuted(muted, userId))
         //禁言
-        this.socket.on("forbidden", (data) =>
-            // this.socket.broadcast.to(this.option.roomId).emit("forbidden", data)
-            io.to(this.option.roomId).emit("forbidden", data)
+        this.socket.on("forbidden", (data) => {
+                let user = null
+                let users = __rooms[this.option.roomId]
+                if (data.userId) {
+                    for (let i = 0; i < users.length; i++) {
+                        if (users[i].userId == data.userId) {
+                            user = users[i]
+                            user.can_speak = !data.can_speak
+                            break
+                        }
+                    }
+
+                    // 没找到指定参与人时不做操作
+                    if (!user) {
+                        return
+                    }
+                }
+                io.to(this.option.roomId).emit("forbidden", data)
+                // this.socket.broadcast.to(this.option.roomId).emit("forbidden", data)
+
+            }
+
+
         )
         // 成员关闭推流后通知静音
         this.socket.on("mutedChanged", (muted, userId) => io.to(this.option.roomId).emit("mutedChanged", muted, userId))