Meeting SDK Type and Version
I am using the Zoom Meeting SDK for React Native with the iOS SDK version 6.2.10.20150.
Description
I have successfully integrated the Zoom Meeting SDK into my React Native app following the official documentation. I am able to initialize the Zoom SDK and configure it with a JWT token. However, when I try to join a meeting using the joinMeeting
method, the response is undefined
, and the Zoom UI does not open.
I am following these steps to initialize the Zoom SDK and join a meeting in my app:
- Zoom SDK Initialization: I use the
ZoomSDKProvider
to pass thezoomConfig
(JWT token and other necessary configurations). - JWT Generation: The JWT token is fetched from an external API.
- Meeting Join Attempt: When the “Join Webinar” button is pressed, the
joinZoomMeeting
function is triggered to join the meeting using thezoom.joinMeeting
method.
However, the joinMeeting
function doesn’t show the Zoom UI, and the response is undefined
.
Error?
The response from zoom.joinMeeting
is undefined
, and no Zoom UI is displayed.
Troubleshooting Routes
I have attempted the following troubleshooting steps:
- I followed the Zoom Meeting SDK integration guide for iOS and React Native from the official Zoom documentation.
- I ensured the Zoom SDK is initialized correctly and verified that the
zoomConfig
is set. - I checked for any errors or console logs but found no issues with the JWT generation or Zoom SDK configuration.
How To Reproduce
- Authentication Method or App Type:
- I am using a React Native app with Zoom SDK integrated for iOS.
- I authenticate using a JWT token generated through the Zoom API.
- Any Errors:
- The Zoom UI does not open, and the response from
zoom.joinMeeting
isundefined
. - There are no errors shown in the logs, just the
undefined
response.
- Browser/Client Type and Version:
- iOS Device with React Native app running on it.
- Zoom SDK version used: zoom-sdk-ios-6.2.10.20150
const joinZoomMeeting = async () => {
try {
const response = await zoom.joinMeeting({
userName: 'User1',
meetingNumber: meetingNumber, // actual meeting number
password: password, // password from meeting link
});
// Log success or inspect the response
console.log('Successfully joined Zoom meeting', response); // Logs 'undefined'
} catch (error) {
// Log the error for debugging purposes
console.error('Error joining Zoom meeting', error);
}
};
<Button onPress={joinZoomMeeting} type="primary" text="Join Webinar" />
code for initialise zoom sdk
useEffect(() => {
const fetchZoomJwt = async () => {
try {
const payload = {
meetingNumber: meetingNumber,
role: 0,
};
const jwt = await generateZoomJwt(payload);
setZoomConfig({
jwtToken: jwt.signature,
domain: 'zoom.us',
enableLog: true,
logSize: 5,
});
} catch (error) {
console.error('Error fetching Zoom JWT:', error);
// Handle error case (e.g., show an error screen or retry logic)
} finally {
setLoading(false);
}
};
fetchZoomJwt();
}, []);
return (
<GestureHandlerRootView style={{ flex: 1 }}>
<SafeAreaProvider>
<Host>
{/* Only render ZoomSDKProvider if zoomConfig exists */}
{zoomConfig ? (
<ZoomSDKProvider config={zoomConfig}>
<SplashScreen>
<AppContainer />
</SplashScreen>
<ModalDialog />
</ZoomSDKProvider>
) : (
// Fallback UI in case zoomConfig is not ready
<Text>Loading Zoom SDK...</Text>
)}
</Host>
</SafeAreaProvider>
</GestureHandlerRootView>
);
Thanks in advance.