Getting response code 150

Description
I have pro zoom account and still I am getting response code 150 on joining meeting.

Which version?
4.4.55130.0712

To Reproduce(If applicable)
https://marketplace.zoom.us/docs/sdk/native-sdks/iOS/build-your-first-zoom-app/join-meeting
I have followed example from above link for integration of zoom sdk with our app but still gettting response code 150

Smartphone (please complete the following information):

  • Device: [e.g. iPhone6]
  • OS: [e.g. iOS12.01]
  • Version [e.g. 12.01]

.

Hi prajit,

Thanks for using Zoom SDK. The error code you got means “Invalid Argument”, and the following 3 scenarios will trigger this error:

  1. If the paramDict is null or not valid
  2. If the meeting number is null or not valid (e.g.: has length 0)
  3. If the domain(kSDKDomain) is null or not valid

For #3, if the SDK is not properly initialized, then the domain will be invalid and get this error. Could you double-check the above cases and see if it is the case?

Thanks!

Thanks Carson_Chen,

Thanks for reply, I have double checked all these details and I am sure these details I am providing are right. I don’t understand why I am getting this error. I have followed zoom tutorial for sdk integration step by step.
There is one thing I noticed, that is whenever My app loads I get " onMobileRTCAuthReturn 0
error was 0" message.

Hi,

Thanks for the reply. The onMobileRTCAuthRetrun 0 means the authentication was successful. Please see https://marketplace.zoom.us/docs/sdk/native-sdks/iOS/resource/error-codes#12-authentication-error-codes for the error code table. Could you share the console log that you got the error code 150, and share the code snippet of how you get the error code 150?

Thanks!

Hi,

Thanks Carson_Chen.
I am sharing my xcode screenshot after I click on Join Meeting button.
and I am also sharing function code which which is returning status code 150.

- (void) joinMeeting: (NSString*) meetingNo :(NSString*) userName :(NSString*) meetingPassword{
    NSLog(@"meetingNO: %@", meetingNo);
    NSLog(@"meeting password: %@",meetingPassword);
    NSLog(@"userName: %@",userName);
    
    if(![meetingNo length]) {
        // If the meeting number is empty, return error.
        NSLog(@"Please enter a meeting number");
        return;
    } else {
        // If the meeting number is not empty.
        MobileRTCMeetingService *service = [[MobileRTC sharedRTC] getMeetingService];
        
        if (service) {
            service.delegate = self;
            // initialize a parameter dictionary to store parameters.
            NSDictionary *paramDict = @{
                                        kMeetingParam_Username: userName,
                                        kMeetingParam_MeetingNumber:meetingNo,
                                        kMeetingParam_MeetingPassword:meetingPassword
                                        };
            
            MobileRTCMeetError response = [service joinMeetingWithDictionary:paramDict];
            
            NSLog(@"onJoinMeeting, response: %d", response);
        }
    }
}

Hi prajit,

Thanks for sharing the information. Your code looks good. Here are the steps from initialization to join a meeting:

  1. Set domain to be “zoom.us”, and successfully initialize the SDK
  2. Pass SDK key/secret, and successfully do the SDK authentication
  3. in onMobileRTCAuthReturn, get the return value == 0
  4. Prepare to join a meeting
    • Set root view controller
    • Initialize the delegate
    • Get meeting service
    • Prepare paramDict that includes username, meeting number, and password
  5. Pass to joinMeetingWithDictionary to join the meeting

Could you verify if you are setting the domain to be “zoom.us”? Could you hardcode the parameters in your code to see if you are able to join the meeting? Could you have a try with our demo app https://github.com/zoom/zoom-sdk-ios to see if you are able to join a meeting?

Thanks!

Hi Carson_Chen,

I have tried demo app it works fine , and yes I am using “zoom.us” as a domain but still not able to join meeting through our app. I also hardcoded the parameters in our app but still the same response code 150.

Hi prajit,

Thanks for the response. Glad to hear that the demo app is working fine and the domain is correctly set. Based on the information you provided, everything looks good, I tried the same code and same settings you provided on my side and everything is working fine. Could you refer to the implementation of the demo app:https://github.com/zoom/zoom-sdk-ios/blob/master/MobileRTCSample/MobileRTCSample/SDKPresenters/how_to_start_join_meeting/join_meeting/SDKStartJoinMeetingPresenter%2BJoinMeetingOnly.m and see if that helps?

Thanks!

Hi Carson_Chen,

I have referred to the link you have provided but It didn’t help.
I have followed “https://marketplace.zoom.us/docs/sdk/native-sdks/iOS/build-your-first-zoom-app/join-meeting” this tutorial for integrating zoom sdk with our app. May I know your best available time to have one on one conversation or any other mode of conversation, this will help us to solve prolonged issue.Please let me know your timezone as well.Also Carson_Chen You have tried my setting and code at your end and It is working so could you share that code/project with me so that I can check that as well.

Hi prajit,

Thanks for the reply. This forum would be the best way that I can provide assistance. Please refer to the implementation of the demo app in :https://github.com/zoom/zoom-sdk-ios/tree/master/MobileRTCSample/MobileRTCSample instead of the https://marketplace.zoom.us/docs/sdk/native-sdks/iOS/build-your-first-zoom-app/join-meeting as some of the contents are outdated on this page.

The code snippet that I was trying is using our demo app. Our demo app has the same implementation as you did, https://github.com/zoom/zoom-sdk-ios/blob/master/MobileRTCSample/MobileRTCSample/SDKPresenters/how_to_start_join_meeting/join_meeting/SDKStartJoinMeetingPresenter%2BJoinMeetingOnly.m, the difference is I am not getting the error code.

Could you verify if the following steps are correct and being proceeded in order in your app?

  1. Set domain to be “zoom.us”, and successfully initialize the SDK
  2. Pass SDK key/secret, and successfully do the SDK authentication
  3. in onMobileRTCAuthReturn, get the return value == 0
  4. Prepare to join a meeting
  • Set root view controller
  • Initialize the delegate
  • Get meeting service
  • Prepare paramDict that includes username, meeting number, and password
  1. Pass to joinMeetingWithDictionary to join the meeting

Hope this helps. Thanks!

Thank you so much for you help Carson_Chen

Please let us know if there is anything that we can help you. Happy Zooming!

Thanks for reply Carson_Chen,
Can we hide powered by zoom logo on meeting screen.

Hi prajit,

Thanks for the post. You may contact the ISV team for the details of removing the watermark. Please see: https://zoom.us/plan/api

Thanks!

1 Like

Greetings, @Carson_Chen

I have a diferent problem when try to CREATE a meeting, im using SDK v4.4.55968.0904, problem is i’m getting error code 150, when parameter isAppShare is false and true either

Notice sdk auth & login (withEmail,password) are correct, i check documentation for missing parameters but it is the same code, i’m missing something?

Hi operea,

Thank you very much for the code snippet. I tried exactly the same code you have and I am able to start a meeting with this. The following situation could cause the start meeting method returns 150:

  1. The param is invalid
  2. The web domain is not correctly set at initialization
  3. Since you are using the parameter object for logged in user, if the user is not logged in, then it will return 150. Please note that our login method is async, please wait for the login status to be success in the onMobileRTCLoginReturn callback before you perform the start meeting action
  4. Meeting number is invalid

You may refer to the implementation in our demo app for this:https://github.com/zoom/zoom-sdk-ios/blob/master/MobileRTCSample/MobileRTCSample/SDKPresenters/how_to_start_join_meeting/start_with_login_user/SDKStartJoinMeetingPresenter%2BLoginUser.m, or you may refer to our documentation for further details: https://marketplace.zoom.us/docs/sdk/native-sdks/iOS/mastering-zoom-sdk/start-join-meeting/email-login-user/authentication. Both demo and doc are written in objc, but the concept is the same with Swift.

Hope this helps. Thanks!

Greetings @Carson_Chen,

I stop trying to start meeting process, so i try to join a meeting, with same error 150.

I think situation 1 is the problem, i try to change data type to NSDictionary but function .joinMeeting(with: ) require a downcast to accept parameter, i try also with Dictionary<String,Any> and [AnyHashable,Any] data type, with same result.

The situations 2,3,& 4, are correct implemented so I discard them, console shows correct auth & login callbacks, meeting number is valid, and web domain is correctly set.

I double check the documentation and your demo, objC demo code send NSDictionary data type, but swift integration does not accept this data tipe directly in to the function, when you tried the same code, what data type did you use into the function?

I found also, the demo app shows an alert to set an user name and a password after the meeting number & password input, this is necessary for join a meeting process?, this step is not in the documentation.

Thanks.

Hi operea,

Thanks for the reply and the detail information. We will look into the case you are mentioning and get back to asap.

Thanks

Hi Carson,

We are having the same 150 error after we upgrade to the latest SDK. With the previous SDK we can create and join meetings successfully.

2019-11-04 @ [v4.4.56624.1028] SDK

static let domain = “zoom.us
static let appKey = “xxx”
static let appSecret = “yyy”

func joinMeeting() {

   let meetingService = MobileRTC.shared().getMeetingService() else { return }
    
    var paramDict: [String : Any] = [
        kMeetingParam_Username : name,
        kMeetingParam_MeetingNumber : "\(number)",
        kMeetingParam_MeetingPassword : password,
        kMeetingParam_NoAudio : true,
        kMeetingParam_NoVideo : true
    ]

    let returnValue = meetingService.joinMeeting(with: paramDict)

}

I see what you say looks right. In addition, I also tested our sample, and everything was work.
Therefore, I hope you can take a closer look at our integration document and refer to our sample project.
One thing to note is that auth success is a prerequisite for everything.