踩坑1:所有人员都赋予了创建房间的权限,当其中一个人员自动重联时,会自动创建一个新房间,之前相同名称的房间自动销毁,人员全部被迫退出房间
分析原因:livekit前端方法掉用是有坑,重连会导致自动创建新房间,导致原房间销毁。
解决方法:
步骤1:如果断网,前端处理,不让当前人员进行自动重连。监测设备网络状态,断网自动掉线,不再自动重连
步骤2: 根据使用情况,控制人员发布权限,如果是音视频会议,仅仅赋予人员摄像头,麦克风的使用权限,不要赋予他共享屏幕视频和共享屏幕音频权限。
步骤3:仅仅赋予人员加入房间的权限,不要赋予所有人创建房间的权限。此时,如果房间不存在,第一个人加入房间时,房间会自动创建;如果房间已经存在,仅仅赋予了加入房间权限的人员,是无法重新创建房间的。
token.addGrants(RoomJoin(true), RoomName(param.roomName))
踩坑2:人员进入房间后,5分钟后自动掉线
分析原因:,观察房间内人员总数,每次当有人员进入房间后,房间内九宫格可以看到人员信息,但是查询房间信息时,发现房间人员总数并未上升。分析得出结论,发现如果给人员赋予了房间录制的权限 录制权限:token.addGrants(Recorder(true))、使用出口的权限 token.addGrants(RoomRecord(true)),那么房间会将这部分人员,看作是录制代理人员,当房间内全是录制代理人员时,房间人员总数查询为0,5分钟后房间自动销毁。
解决方法1:不要给房间内全部人员赋予录制权限,而是只给需要的人员赋予录制权限