Cannot hide registration dialog when joining webinar via iOS SDK

We are developing a custom iOS app atop the Zoom platform and have run into an issue hiding the registration dialog when a user attempts to join a webinar. The webinar is created with approval_type set to 2 (registration not required) as this was suggested method to hide the prompt. We can confirm that approval type is set to 2 in the created webinar on Zoom’s dashboard but the registration prompt continues to show.

We’re at a loss as to where else to look to hide this prompt. Please help.

Thanks in advance.

1 Like

Hey @alex1 welcome to the Zoom developer community.

Are you using the iOS SDK? If yes, could you change the topic to the SDK please?

If not, I assume you’re using the Create Webinar REST API to create the webinar and I see the property approval_type you’re referring to with value “2” indicating registration not required.

To be certain I understand all the parameters, could you provide the specific POST request complete with headers (just omit any tokens or PII please) so I can try to recreate this issue and diagnose the problem?

Hi @bdeanindy.

Thanks for getting back to me.

We’re using the iOS SDK on the client side which is a cordova app. When we’re ready to start a webinar our client pings our backend where we create a new webinar using the REST API. The request might have the following header and body.

POST /v2/users/username@domain.com/webinars
HTTP/1.1
Host: api.zoom.us
Accept: /
Content-Type: application/json
Authorization: Bearer REMOVED_FOR_SECURITY
Content-Length: 568

{
“topic”: “Lorem Ipsum”,
“settings”: {
“host_video”: true,
“hd_video”: true,
“approval_type”: 2,
“audio”: “voip”,
“auto_recording”: “cloud”,
“enforce_login”: false,
“allow_multiple_devices”: false,
“show_share_button”: false,
“registrants_confirmation_email”: false,
“contact_name”: “ABC”,
“contact_email”: "ABC@ABC.com"
},
“api_key”: “[API KEY]”,
“api_secret”: “[API SECRET]”,
“data_type”: “JSON”
}

We get the meeting ID from the API response and send that back to the client.

If the user has rights to start the meeting we also send them a ZAK to append to our call to startMeetingWithStartParam using the SDK.

Users join the webinar using the SDK’s joinMeetingWithDictionary where we provide the meeting number and their userId and userName from our system.

Let me know if you need anything else to help us troubleshoot the issue.

Hi Alex,

Thanks for using Zoom SDK.

I just tested your use cases with our demo app(I scheduled the webinar on zoom.us, not from Zoom API) and unfortunately I am not able to reproduce this issue. If the webinar registration is correctly set to “no registration required”, then the prompt is not popping up on the SDK.

However, even with “no registration required”, you still need to pass the username and email info by implementing the following method:
(https://github.com/zoom/zoom-sdk-ios/blob/master/MobileRTCSample/MobileRTCSample/SDKPresenters/how_to_use_inmeeting_function/meeting_callback/SDKStartJoinMeetingPresenter%2BMeetingServiceDelegate.m#L45)

- (void)onSinkJoinWebinarNeedUserNameAndEmailWithCompletion:(BOOL (^_Nonnull)(NSString * _Nonnull username, NSString * _Nonnull email, BOOL cancel))completion
{
    if (completion)
    {
        NSString * username = [NSString stringWithString:@"username"];
        NSString * email = [NSString stringWithString:@"email here"];
        BOOL ret = completion(username,email,NO);
        NSLog(@"%zd",ret);
    }
}

Are you using our Ionic SDK on iOS or are you using iOS SDK in the Ionic wrapper you wrote?

Hope this helps. Thanks!

1 Like

Thank you @Carson_Chen. Pointing me to the SDK and the missing method did the trick. The registration prompt is no longer coming up.

Hi Alex,

Glad to hear that the problem has solved. Please feel free to let us know if you have any other questions. Happy Zooming! :slight_smile:

1 Like