Zoom Web SDK Embedded – Second Join Fails with “TypeError: Cannot read properties of undefined (read
Hi Team,
I am using Zoom Meeting SDK (Embedded) version 3.13.2 inside a React/Next.js widget.
The first meeting joins correctly, but when I leave the meeting and try to join again, I get this error:
Error:
Uncaught (in promise) TypeError: Cannot read properties of undefined (reading 'caps')
at nP.getLocalRecordingPermissionUserList
This only happens on the second join attempt, not the first.
What I am doing when leaving the meeting:
I call:
await client.leaveMeeting();
client.off('*');
client.destroyClient();
Then I also recreate the container div:
if (meetingSDKElementRef.current) {
meetingSDKElementRef.current.innerHTML = '';
const newDiv = document.createElement('div');
meetingSDKElementRef.current.replaceWith(newDiv);
meetingSDKElementRef.current = newDiv;
}
What I am doing when joining again:
await client.init({
zoomAppRoot: meetingSDKElementRef.current,
language: "en-US",
patchJsMedia: true,
leaveOnPageUnload: true,
});
await client.join({
signature,
sdkKey,
meetingNumber,
password,
userName,
userEmail,
});
Problem:
After the first successful join, leave, and trying to join again, I get:
TypeError: Cannot read properties of undefined (reading 'caps')
The error comes from:
getLocalRecordingPermissionUserList then nP.getLocalRecordingPermissionUserList
What I have tried:
- Resetting DOM container
- Calling destroyClient
- Calling client.off('*')
- Adding delay before init
- Re-creating a fresh container div
- Clearing React state and refs
But the second join still fails.
Can you please assist?
