Joining webinar with custom UI failed

Hello,

I try to join a webinar with a custom UI. It failes in you sample and in my own WPF application too. All credentials are correct and it works when using the default zoom ui - but not a custom one.

Any idea?

Thanks!

Hi @meldur,

Thanks for the post. The sample app could join a webinar with Custom UI. Could you provide a log for further investigation?

Thanks!

Thanks for your reply. Unfortunatly the folder for logfiles is empty even if I set

param.enable_log = true;

I like to share some code from the sample:

private void button_join_api_Click(object sender, RoutedEventArgs e)
{
RegisterCallBack();

        ZOOM_SDK_DOTNET_WRAP.JoinParam param = new ZOOM_SDK_DOTNET_WRAP.JoinParam();
       
        ZOOM_SDK_DOTNET_WRAP.JoinParam4NormalUser join_api_param = new ZOOM_SDK_DOTNET_WRAP.JoinParam4NormalUser();
        join_api_param.meetingNumber = 96183092564; // Webinar-ID
        join_api_param.userName = "Testuser";
        join_api_param.psw = "652809";      // Webinar-Pwd
      
        param.userType = SDKUserType.SDK_UT_NORMALUSER;
        param.normaluserJoin = join_api_param;

        ZOOM_SDK_DOTNET_WRAP.CZoomSDKeDotNetWrap.Instance.GetMeetingServiceWrap().GetMeetingConfiguration().PrePopulateWebinarRegistrationInfo("test@ger.de", "Testuser1");

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

The result is SUCCESS and the onMeetingStatusChanged status is “CONNECTING” - but than noting more happend

These are my credentials for initalizing the SDK:

ZOOM_SDK_DOTNET_WRAP.InitParam param = new ZOOM_SDK_DOTNET_WRAP.InitParam();
param.web_domain = “https://zoom.us”;
param.config_opts.optionalFeatures = 32; // without UI
param.enable_log = true;.

It works great with a regular meeting but not with a webinar.

Please send me further instruction. Thanks!

PS: I also tried the same with the native C++ SDK - same result.

Thanks for the info. It is strange that there is no log in the folder(The location of the log should be in: %appData%/zoomsdk/logs/). Let me circle back to the engineering team and get back to you shortly.

Thanks!

I tried on an other PC and now logs are written. This is my setup:

  • Default .Net-Wrapper Demo
  • Auth via access token
  • WebinarID and Password

Result: Only meeting state “Connecting” is fired - than it stopps.

Here is the log file: https://www.dropbox.com/s/yi0bs9kn3z6x5a1/logs.zip?dl=0

I’m looking forward to any support because slowly we’re running out time.

Thanks!

PS: Same result with demo from native C++ projekt.

Hi @meldur,

Thanks for the reply. Please try to register the IMeetingConfigurationEvent events and implement the onWebinarNeedRegisterNotification callback in order to join a webinar in Custom UI.

Thanks!

Thanks for the reply but it’s opening several new issues.

First - the translation of the onWebinarNeedRegisterNotification is not implemented in the .Net wrapper. I tried to do this on my own but stuck at this part:

IWebinarNeedRegisterHandler^ TranslateWebinarNeedRegisterHandler(ZOOM_SDK_NAMESPACE::IWebinarNeedRegisterHandler* pHandler)
{
	/*
	if (pHandler)
		return - I don't know what to do here -;
		*/
	return nullptr;
}

Second - I was able to create the event in my .Net code (even if the parameter is null) but I’m not sure what to do now? The parameter contains only the information of GetWebinarNeedRegisterType() - and no way to populate additional informations. I try to call

ZOOM_SDK_DOTNET_WRAP.CZoomSDKeDotNetWrap.Instance.GetMeetingServiceWrap().GetMeetingConfiguration().PrePopulateWebinarRegistrationInfo(“test@ger.de”, “testuser”);

but there is no progress in connecting to the webinar. The meetingStatusChanged event is not firering anymore.

Finaly it’s still not possible to connect to a webinar in a .Net application. Could you please check my points and send me an idea of a working wrapper OR a working solution how to connect to a webinar.

We really need a solution for that.

Thanks a lot!

Hi @meldur,

Thanks for the reply. The C# wrapper is a community project so we do not have a dedicated person working on it and it does not have all the interfaces. Since the C# wrapper is a wrapper over the Windows SDK, so if an interface that is available in Windows SDK, then it could be added to the C# wrapper.

If you would like to add the interfaces that you are mentioning, you may refer to my answer here to add a bridge call to the Windows SDK: [Windows SDK, C#] I cant found AskAttendeeToStartVideo in DLL library

And the interfaces that you are looking for are located in meeting_configuration_dotnet_wrap.h :

  • Add_CB_onInputMeetingPasswordAndScreenNameNotification
  • Add_CB_onAirPlayInstructionWndNotification

Hope this helps. Thanks!

Hello, sorry for the late reply - unfortunately there is still no progress. Can you PLEASE confirm, that your C++ demo (sdk_demo_v2_2017) is working when joining a webinar with custom UI? This is not the case with me. As a result, I currently have no way of validating my changes in the .Net wrapper.

Ok - I’m one little tiny step further - I was able to implement the onWebinarNeedRegisterNotification event. It’s working and tells me, that “WebinarReg_By_Email_and_DisplayName” is required. But what should I do then? There is no documentation or sample for that case available.

I tried to call “PrePopulateWebinarRegistrationInfo” without any effect. I tried to call it before joining too but same fail.

Please help!

Hello? Is anybody listening? Would be great to get some answere.

Hi, @meldur,
In my code:

meetingConfiguration.Add_CB_onWebinarNeedRegisterNotification(WebinarNeedRegisterNotification)
And cast:
void WebinarNeedRegisterNotification(IWebinarNeedRegisterHandler pHandler)
{
IWebinarNeedRegisterHandlerByEmail byEmail = pHandler as
IWebinarNeedRegisterHandlerByEmail;
byEmail.InputWebinarRegisterEmailAndScreenName(“test@test.com”, “maestro”);
}

But you need implement Add_CB_onWebinarNeedRegisterNotification in zoom-c-sharp-wrapper.

Hi, @Carson_Chen
I can display share from meeting.
But I can’t display share from webinar.

IMeetingServiceDotNetWrap meetingService = CZoomSDKeDotNetWrap.Instance.GetMeetingServiceWrap();
meetingShareController = meetingService.GetMeetingShareController();
var usersList = meetingShareController.GetViewableShareSourceList();

UsersList is emty.
How to display share screen from webinar? (It code works for meetings)

icustomizedShareRenderer.SetUserID(uid);
icustomizedShareRenderer.Show();

Hi!
In zoom-c-sharp-wrapper v5.2.41727.0928 my problem was partially fixed.
Now GetViewableShareSourceList is not empty for webinar.
But webinar share screen still not working.

Its my demo app: https://github.com/serghdt/ZoomWinformsExample
Its my pull request with addiditional registration: https://github.com/zoom/zoom-c-sharp-wrapper/pull/28
Share screen works for meetings, but doesn’t works for webinars.
Can you help me?

Hi @serghdt,

Thanks for the reply and pardon the late response. Share screen is only available for the host or the panelist when it is in a webinar, and this is following the Zoom client’s design. If you are trying to invoke the screen sharing interface as an attendee, then it is expected that it will not work.

Please double check the user’s role when trying to call the screen sharing interface. Thank you.