Swift и ZoomSDK, присоединиться к встрече - PullRequest
1 голос
/ 02 мая 2020

У меня последняя версия ZoomSDK от их GitHub, но она все еще действительно устарела, и их документация даже не соответствует их SDK. Пример также содержит ошибки и содержит целый набор дополнительного кода, который едва работает должным образом.

Кто-нибудь успешно использовал ZoomSDK для ПРИСОЕДИНИТЬСЯ к собранию без входа в систему ?

Вот что у меня есть:

let zoom: MobileRTC = MobileRTC.shared()
func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?) -> Bool {

    let context = MobileRTCSDKInitContext.init()
    context.appGroupId = AppConfig.Constants.AppTitle
    context.domain = AppConfig.Constants.WebDomain
    context.enableLog = true

    zoom.initialize(context)

    let auth: MobileRTCAuthService = zoom.getAuthService()!
    auth.clientKey = AppConfig.Constants.AppKey
    auth.clientSecret = AppConfig.Constants.AppSecret
    auth.delegate = self
    auth.sdkAuth()

    return true
}

public func startMeeting(meetingId: String) {

    let user: MobileRTCMeetingStartParam4WithoutLoginUser = MobileRTCMeetingStartParam4WithoutLoginUser.init()
    user.userType = MobileRTCUserType_APIUser
    user.meetingNumber = meetingId
    user.userID = AppConfig.UserHash.UID
    user.isAppShare = false

    guard let meetingService = zoom.getMeetingService() else { return }
    meetingService.customizeMeetingTitle(AppConfig.Constants.AppTitle)
    meetingService.delegate = self

    window = UIApplication.shared.windows.count != 0 ? UIApplication.shared.windows[0] : nil

    // THIS ACTUALLY CRASHES
    meetingService.joinMeeting(with: [
        kMeetingParam_Username: user.userID,
        kMeetingParam_MeetingNumber: user.meetingNumber! as String,
        kMeetingParam_MeetingPassword: ""
    ])

    // Have also tried, does not crash though:
    //let options = MobileRTCMeetingStartParam.init()
    //options.meetingNumber = meetingId
    //options.participantID = AppConfig.UserHash.UID
    //meetingService.startMeeting(with: param)
}

Все значения в порядке, и я даже получаю успешный ответ Auth. Он просто не откроет интерфейс Zoom или что-либо еще при попытке начать собрание.

...