首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >从缩放iOS SDK自定义会议实现中获取当前活动用户

从缩放iOS SDK自定义会议实现中获取当前活动用户
EN

Stack Overflow用户
提问于 2021-04-30 16:23:18
回答 2查看 150关注 0票数 1

我已经实现了缩放iOS软件开发工具包来使用自定义的UI。一切正常,但我还不知道如何才能得到当前活跃用户的userID。

我已经实现了下面的委托方法,它告诉了当前活跃的视频用户,但不幸的是,它显示了会议中除我之外的所有其他参与者。

代码语言:javascript
复制
func onSinkMeetingActiveVideo(_ userID: UInt) {
    if let service = MobileRTC.shared().getMeetingService(), let username = service.userInfo(byID: userID)?.userName {
        print("\(#function) : \(userID) : \(username)")
    }
}

我需要知道谁是当前的活跃用户,即使是我在说话。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2021-05-06 15:33:29

您可以从会议服务MobileRTCMeetingService中检索此类信息。

MobileRTCMeetingService

代码语言:javascript
复制
func getActiveUserId() -> UInt? {
    if let meetingService = MobileRTC.shared().getMeetingService() {
        return meetingService.activeUserID()
    }
    return nil
}

额外注意:在Zoom中还有固定用户的概念,它覆盖了活动视频单元中的活动用户。固定的用户id可以通过以下方式检索:

代码语言:javascript
复制
func getPinnedUserId() -> UInt? {
    if let meetingService = MobileRTC.shared().getMeetingService(), let userList = meetingService.getInMeetingUserList(){
        for userId in userList {
            if let userId = userId as? UInt, meetingService.isUserPinned(userId) {
                return userId
            }
        }
        return nil
    }
    return nil
}

因此,为了确定哪一个是活动视频单元中视频的用户id,您必须同时检查两个,并优先考虑固定的用户。

代码语言:javascript
复制
let currentVideoUserId = getPinnedUserId() ?? getActiveUserId()

在会议期间,您永远不会成为自己的视频单元中的活动用户,因为即使您正在发言,您也会继续在活动的视频单元中看到其他人。

另一方面,如果您有兴趣知道谁在说话,那么您必须检索用户列表并检查audioStatus MobileRTCAudioStatus。

MobileRTCAudioStatus

MobileRTCMeetingUserInfo

请注意,您可以有多个用户同时发言。

如果您对活动扬声器用户感兴趣,还有另一个可能有用的回调:它是MobileRTCVideoServiceDelegate中的onSinkMeetingActiveVideoForDeck

MobileRTCVideoServiceDelegate

根据文档,每次有新的扬声器时都应该触发它。缩放UI使用它来更改活动扬声器用户周围的黄色边框。

票数 1
EN

Stack Overflow用户

发布于 2021-05-06 11:30:28

I根据文档,为了获得当前活跃的视频用户信息,您应该使用以下类: MobileRTCMeetingUserInfo。

查看文档中的视频状态类MobileRTCVideoStatus:https://marketplacefront.zoom.us/sdk/meeting/ios/interface_mobile_r_t_c_video_status.html

您将看到这与MobileRTCMeetingUserInfo相关:https://marketplacefront.zoom.us/sdk/meeting/ios/interface_mobile_r_t_c_meeting_user_info.html

在这个类上,你可以找到当前用户的信息。

希望你能解决你的问题!致以问候!加斯通·蒙特斯。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/67330569

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档