Does the ComponentView's join() method have to wait with await?

Description
The reference states that the join () method requires the success parameter.
But after joining the meeting, the success function is not processed.

Reference

In the zoom-meeting-embedded-2.1.1.min.js source code, the join () method was defined as async.
(screen shot)

Which Web Meeting SDK version?
2.1.1

Meeting SDK Code Snippets
bad code

client.join({
          apiKey: meetingConfig.apiKey,
          signature: signature,
          meetingNumber: meetingConfig.meetingNumber,
          password: meetingConfig.passWord,
          userName: meetingConfig.userName,
          
          success: function (res) {
            console.log("join meeting success");
          },
          error: function (res) {
            console.log(res);
          },
        });

success code

 await client.join({
  apiKey: meetingConfig.apiKey,
  signature: signature,
  meetingNumber: meetingConfig.meetingNumber,
  password: meetingConfig.passWord,
  userName: meetingConfig.userName,   
});

console.log("join meeting success");

Hey @daichi.kakimoto,

Thank you for reaching out to the Zoom Developer Forum. I haven’t seen this behavior just yet. Does this happen even using the Sample Web App? I’m wondering if there is a change to the implementation that will fix this.

Thanks,
Max

Hey MaxM,

I tried using the sample Web App.

The source code below is the sample WebApp SourceCode.

          apiKey: meetingConfig.apiKey,
          signature: signature,
          meetingNumber: meetingConfig.meetingNumber,
          password: meetingConfig.passWord,
          userName: meetingConfig.userName,
          
          success: function (res) {
            console.log("join meeting success");
          },
          error: function (res) {
            console.log(res);
          },
        });

The log “join meeting success” was not displayed.

Thanks,
Daichi Kakimoto.

Hey @daichi.kakimoto,

Thanks for following up on this. I tested with version 2.1.1 of the Web SDK using the Sample Web App but wasn’t able to see this same issue:

Here’s the init function that was being used from the sample:

ZoomMtg.init({
    debug: false,
    leaveUrl: meetingConfig.leaveUrl,
    disableCORP: !window.crossOriginIsolated, // default true
    // disablePreview: false, // default false
    success: function () {
      console.log(meetingConfig);
      console.log("signature", signature);
      ZoomMtg.i18n.load(meetingConfig.lang);
      ZoomMtg.i18n.reload(meetingConfig.lang);
      ZoomMtg.join({
        meetingNumber: meetingConfig.meetingNumber,
        userName: meetingConfig.userName,
        signature: signature,
        apiKey: meetingConfig.apiKey,
        userEmail: meetingConfig.userEmail,
        passWord: meetingConfig.passWord,
        success: function (res) {
          console.log("join meeting success");
          console.log("get attendeelist");
          ZoomMtg.getAttendeeslist({});
          ZoomMtg.getCurrentUser({
            success: function (res) {
              console.log("success getCurrentUser", res.result.currentUser);
            },
          });
        },
        error: function (res) {
          console.log(res);
        },
      });
    },
    error: function (res) {
      console.log(res);
    },
  });

If you call join() from the success callback of init() you shouldn’t need to use await and the messages should appear.

Let me know if that helps.

Thanks,
Max