Unable to Join meeting by an custCreate user from iOS SDK, where the meeting is for authenticated user

Description
I do have licensed users under my account, the users were created using custCreate action.
Now when I enable Only authenticated users can join meetings under my Account setting > meeting settings, the non-host user is unable to do JOIN meeting using iOS mobile SDK.
The error states You need to be signed in with the specified account to join the webinar. Please contact the host for more information.

Well, to resolve this issue I tried multiple ways like:

  1. Register custCreate user to the meeting using Zoom REST API call, got the join_url in API response. But not sure where to use this value in iOS mobile SDK to JOIN the meeting.
  2. Tried create meeting with below payload also
    payload = {
    “type”: 2,
    “password”: SecureRandom.hex(5),
    “settings”: {
    “join_before_host”: true,
    “approval_type”: 0,
    “registration_type”: 3
    }

But, seems no luck with any of the mentioned above ways to JOIN meeting.

Please help us out with resolving this issue.

Which version?
zoom iOS mobile SDK version = 5.2.4x

Hey @rituraj_zoom

Thanks for using the dev forum!

Can you try passing the join_url mentioned in 1, to the function handZoomWebUrl within MobileRTCMeetingService?

Let me know what happens.
Thanks!
Michael

Hello Michael,

Thanks for the reply.

Well, I tried handZoomWebUrl with passing join_url value as an argument like:

meetingService.handZoomWebUrl(callDetails.meetingUrl)

But still, encountering the same error at mobile iOS SDK like:

You need to be signed in with the specified account to join the webinar. Please contact the host for more information.

Please help me with some resolution.

Thanks

Hey @rituraj_zoom

You are using a ZAK token to join then correct?

Thanks!
Michael

Hello Michael,

I have tried multiple ways to JOIN meeting from mobile iOS SDK:
Trial 1: Made REST API call to

Register a participant for a meeting.
POST # /meetings/{meetingId}/registrants

The response has join_url, and consuming join_url, then do JOIN meeting like:

meetingService.handZoomWebUrl(callDetails.meetingUrl)

Trail 2: Made REST API call

/users/{user_id}/token?type=zak

The response has token, and consuming this zak token, along with other meeting details.
Now, to JOIN meeting passing values to MobileRTCMeetingJoinParam like:

    let joinParam = MobileRTCMeetingJoinParam()
    joinParam.userName = callDetails.userName
    joinParam.meetingNumber = callDetails.meetingId
    joinParam.password = callDetails.meetingPwd
    joinParam.participantID = callDetails.userId
    joinParam.zak = callDetails.zak
    meetingService.joinMeeting(with: joinParam)

This trial prompts the iOS device to enter a password to join the meeting, whereas, I do provide a password like joinParam.password = callDetails.meetingPwd .

In both the above trails always unable to join the meeting.
Let me know do I miss anything above to make JOIN.

Thanks
Rituraj

Hey @rituraj_zoom

Im sorry this is not working for you, that must be frustrating.
When you are retrieving a ZAK are you appending a Zoom RestAPI JWT to your endpoint?
https://api.zoom.us/v2/users/<USERID_HERE/token?type=zak&access_token=APIJWTTOKEN_HERE

Thanks!
Michael

Hello Michael,

Thanks for the reply.

I’m glad appending access_token=APIJWTTOKEN_HERE to get the user’s zak token worked for me.

Well, not sure why this is not documented to add access_token, whereas REST HTTP API header do have authorization with the same API JWT token.
It will be great if in the future this is documented for all of us. Thanks.

I hope the Android mobile SDK JOIN meeting will also work with this similar workflow?

Thanks
Rituraj

Hey @rituraj_zoom

Awesome! I am glad that worked for you!

You are absolutely right, that this should be documented. We will get that updated soon.

Yes Android should behave similarly. If you run into issues there @jon.zoom, is well-versed on the Android side of things and can definitely help out.

Let us know if you have any other issues or questions.
Thanks!
Michael

@rituraj_zoom @Michael_Condon
What about trail no.1? handZoomWebUrl?
Why this is not working?
I’m having the same issue… and I want to join the meeting with the join_url link

Hey @ofri ,

In trial 1, when I do handZoomWebUrl, the mobile app prompts a dialog to enter the meeting passcode.
My requirement was not to share a passcode by any means with any participants and every participant should JOIN the meeting silently without entering any extra details manually.

Thanks

I see, thanks for your reply.
On my end, I use a join_url which contains pwd and the meeting state is stay on connecting.

Hey @ofri

When you use handZoomWebUrl, what MobileRTCMeetError is returned? Are you also getting an error in onMeetingError in the MobileRTCMeetingServiceDelegate?

Thanks!
Michael

thanks for your reply @Michael_Condon.

I’m not getting any error, neither onMeetingError callback.

I’m using an Api user and from MobileRTCAuthService I’m not logged in. Maybe this is the reason?

We want that any user will. be able to join a meeting with handZoomWebUrl, giving the join_url we get from https://marketplace.zoom.us/docs/api-reference/zoom-api/meetings/meetingregistrantcreate, without any need to log in.

Hey @ofri,

Can you confirm that the URL returned from https://marketplace.zoom.us/docs/api-reference/zoom-api/meetings/meetingregistrantcreate is valid? As in can you join the meeting with that URL outside of the SDK?

Thanks!
Michael

Hey @Michael_Condon,
yes, this is the case. I can use that url with zoom desktop or mobile app without signin but using the ios sdk, an endless “waiting” take place

Hey @ofir.paz,

Interesting, I am going to try to reproduce and alert the team of this issue. I will let you know what we find.

Thank you!
Michael

I am facing same issue. Did you find any solution? I am also not able to join the meeting without signing in. This is terrible :frowning:

But it works in sample application, not only in my current app. I am unable to find the reason what’s wrong in my app. I have no idea at all. Seems like this issue is only on iOS because in android it works fine.

Hi @rabia,

Can you please provide steps to reproduce the behavior you are seeing?

Thanks!