Unable to join meeting using C# wrapper v5.4.54524.1229

Hi there,

I have upgraded to version v5.4.54524.1229 of the C# wrapper. I am unable to join or start a meeting.

The callbacks show the that the meeting has ended:
image

The meeting is in fact still running.

The SDK auth was a success and the login as a normal user was also a success.

Previous versions of the C# wrapper work correctly with the same SDK, logging and meeting credentials.

The code is as follows:

ZOOM_SDK_DOTNET_WRAP.JoinParam param = new ZOOM_SDK_DOTNET_WRAP.JoinParam();
param.userType = SDKUserType.SDK_UT_NORMALUSER;
ZOOM_SDK_DOTNET_WRAP.JoinParam4NormalUser join_api_param = new ZOOM_SDK_DOTNET_WRAP.JoinParam4NormalUser();

        join_api_param.meetingNumber = ulong.Parse(textBox_meetingnumber_api.Text.Replace("-", "").Replace(" ", ""));
        join_api_param.psw = textBox_Password.Text;
        join_api_param.userName = this.userName;

        param.normaluserJoin = join_api_param;

        ZOOM_SDK_DOTNET_WRAP.SDKError err = CZoomSDKeDotNetWrap.Instance.GetMeetingServiceWrap().Join(param);
        if (SDKError.SDKERR_SUCCESS == err)
        {
            feedback.Content = $"Joining Meeting {textBox_meetingnumber_api.Text}: {err}";
            Hide();
        }
        else//error handle
        {
            feedback.Content = $"Failed to join meeting {textBox_meetingnumber_api.Text}: {err}";
            Console.WriteLine(err);
        }

Please let me know how I can resolve the issue.

Kind regards,

Roberto Bonini

Hi.
I think you need to use param.withoutloginJoin instead of param.normaluserJoin (and ZOOM_SDK_DOTNET_WRAP.JoinParam4WithoutLogin join_api_param)

I am using it, and this works with the C# wrapper 5.4.54524.1229.

Code would be like this:

    ZOOM_SDK_DOTNET_WRAP.SDKError err;

    ZOOM_SDK_DOTNET_WRAP.JoinParam param = new ZOOM_SDK_DOTNET_WRAP.JoinParam();
    param.userType = ZOOM_SDK_DOTNET_WRAP.SDKUserType.SDK_UT_WITHOUT_LOGIN;
    ZOOM_SDK_DOTNET_WRAP.JoinParam4WithoutLogin join_api_param = new ZOOM_SDK_DOTNET_WRAP.JoinParam4WithoutLogin();
            
    join_api_param.meetingNumber = ulong.Parse(textBox_meetingnumber_api.Text.Replace("-", "").Replace(" ", ""));
    join_api_param.userName = this.userName;
    join_api_param.psw = textBox_Password.Text;
    param.withoutloginJoin = join_api_param;
            
    err = ZOOM_SDK_DOTNET_WRAP.CZoomSDKeDotNetWrap.Instance.GetMeetingServiceWrap().Join(param);

    if (SDKError.SDKERR_SUCCESS == err)
    {
        feedback.Content = $"Joining Meeting {textBox_meetingnumber_api.Text}: {err}";
        Hide();
    }
    else//error handle
    {
        feedback.Content = $"Failed to join meeting {textBox_meetingnumber_api.Text}: {err}";
        Console.WriteLine(err);
    }
1 Like

Hey @rbonini,

Thanks for using the dev forum!

Your code looks alright to me, however I am curious if @bm.erikstad’s code resolves your issue. Can you try that and let us know so we can investigate further?

Thanks!
Michael

Hi Micheal and bm.erikstad

Sorry for the delay in getting back to you.

Have copied and adjusted my code to match:

        ZOOM_SDK_DOTNET_WRAP.JoinParam param = new ZOOM_SDK_DOTNET_WRAP.JoinParam();
        param.userType = SDKUserType.SDK_UT_WITHOUT_LOGIN;
        ZOOM_SDK_DOTNET_WRAP.JoinParam4WithoutLogin join_api_param = new ZOOM_SDK_DOTNET_WRAP.JoinParam4WithoutLogin();

        ZOOM_SDK_DOTNET_WRAP.SDKError err;            

        join_api_param.meetingNumber = ulong.Parse(textBox_meetingnumber_api.Text.Replace("-", "").Replace(" ", ""));
        join_api_param.userName = this.userName;
        join_api_param.psw = textBox_Password.Text;
        param.withoutloginJoin = join_api_param;

        err = ZOOM_SDK_DOTNET_WRAP.CZoomSDKeDotNetWrap.Instance.GetMeetingServiceWrap().Join(param);

        if (SDKError.SDKERR_SUCCESS == err)
        {
            feedback.Content = $"Joining Meeting {textBox_meetingnumber_api.Text}: {err}";
            Hide();
        }
        else//error handle
        {
            feedback.Content = $"Failed to join meeting {textBox_meetingnumber_api.Text}: {err}";
            Console.WriteLine(err);
        }

The onMeetingStatusChanged event fires twice. Once to say that it is connecting. and then a second time to say that that it has failed:

waiting to join 83661171906: MEETING_STATUS_CONNECTING
Meeting Ended 83661171906: MEETING_STATUS_ENDED

Your help in resolving this would be appreciated so that my users can use the latest zoom features.

Thanks

Roberto

Hey @rbonini,

Have you specified a valid domain?
Is your JWT auth returning without errors in onAuthenticationReturn?

Thanks!
Michael

Hi Micheal

Thanks for all your help.

I have resolved this issue. it seems that there were some missing Dlls that were nto beign copied over to the bin folder.

Once I copied all the dlls from the bin folder in the sdk demo to my app folder, included them in my project and then marked them as copy to out put on build, meeting join started to work again.

So my apps bin folder now look slike this:

image

I’m not sure if this is the correct fix, to be perfectly honest. But it seems to work. If missing dlls was the issue, is there any chance we could get a nuget package to make file management easier?

This ticket can be closed now.

Thanks for all your help

Roberto

Hey @rbonini,

Oh interesting. I am glad you found the issue!

I will suggest this to the team as I agree this would make things better :slight_smile:

Thanks!
Michael

Hey @rbonini,

Thanks for all of the info you have provided in this thread :slight_smile: I am assisting another developer who is running into this same issue so I was wondering if I could ask you some questions.

Do you know which DLL’s were causing issues?
What is your Windows OS version, and Visual Studio runtime library version?

Thanks!
Michael

Hi Micheal,

So I copied everything from the SDK bin folder into my project directory and added all of those files to my project. I then set them to Copy Always.

For the previous SDk version i aleady had some of those files in the project directory.

So, comparing the csproj gives me this list of newly added dlls:

  • libmpg123.dll
  • UIBase.dll
  • zKBCrypto.dll

And all the other dlls got updated, obiously.

(Full PR: Update to zoom v5.4.54802.0124 by rbonini · Pull Request #18 · rbonini/ZoomRaiseHand (github.com))

It may be one of the new files. Or it may be one of the updated dlls. Process of elimination should tell us which one is the culprit

I’m using Windows 10 20H2 and Visual stutio 2019 16.8.4

Let me know if i can be of any further assistance!

Roberto

2 Likes

Hey @rbonini,

Awesome! Thank you so much for providing this!

Michael

Hello there,
I have installed zoom meeting software but I am getting the error XmppDll.dll file is missing from your computer. I have tried to reinstall it many times but the problem still exists. How can I get rid of this error?
Thanks.

Hey @aidensamuel,

Thanks for using the dev forum!

In your bin folder there should be several DLL files, is XmppDll.dll in that folder with the others?

Thanks!
Michael

Thank you @Michael_Condon I find dll file.

Hey @aidensamuel,

After finding the DLL, are you still seeing this error?

Thanks!
Michael

No @Michael_Condon error is resolved now. Thanks

Hey @aidensamuel,

I see, please let us know if you run into anything else :slight_smile:

Thanks!
Michael

Hi @Michael_Condon,

This problem has recently re-appeared for me when logged as a Business level account and starting my meeting. The same issue appears when just trying to join a meeting being hosted by a Business account.

But works when using a basic level account and joining a meeting hosted by a basic level account.

The app is not yet published in the market place. Would this cause the issue?

Thanks,

Roberto

Hi @rbonini,

It seems unlikely that it is the same issue if it’s only happening for certain account types. Is it possible that there is something enabled in the meeting settings (e.g. registration required) which is only applicable to the business account?

Thanks!

Hi @jon.zoom

After debugging, I’m seeing MEETING_FAIL_CLIENT_INCOMPATIBLE. I’ve upgraded to the latest SDK.

So it appears that the Require Users to update the client is checked on the accounts where the issue is appearing.

There are two options
The first is asking the users to ask thier admins to uncheck, or lower the allowed client version. This is impractical.

The second is that the SDK gets updated in tandem with the Zoom client releases. I think ive read on other posts that this is something that is being considered internally.

I can make people aware of option 1, but i think this really does need to be resolved by zoom.

Unless the cadence picks up, there is a possibility that the SDK becomes unusable for the section of users who are forced by host and org account settings to have to have the latest client version when they connect to a meeting. This setting also applies to users who are external to the account. So the users affected grows quite a lot.

Thanks, Roberto

Hey @rbonini,

Thank you for the response. We agree with everything you said. The current state of this leaves gaps of time where the latest SDK is unusable, which is not acceptable. We are considering many different options to resolve this internally. We will let you know when we have updates about this.

Thanks!
Michael

1 Like