document.addEventListener('DOMContentLoaded', function() {
if (typeof ZoomMtg === "undefined") {
console.error("Zoom SDK failed to load.");
return;
}
console.log("Zoom SDK Loaded");
ZoomMtg.setZoomJSLib('https://source.zoom.us/2.15.0/lib', '/av');
ZoomMtg.preLoadWasm();
ZoomMtg.prepareWebSDK();
document.getElementById("startSession").addEventListener("click", function () {
const meetingConfig = {
meetingNumber: document.getElementById("meetingNumber").value.trim(),
passWord: document.getElementById("passWord").value.trim(),
userName: document.getElementById("userName").value.trim(),
sdkKey: document.getElementById("sdkKey").value.trim(),
signature: document.getElementById("signature").value.trim(),
leaveUrl: window.location.origin + window.location.pathname,
role: 0
};
if (!meetingConfig.meetingNumber || !meetingConfig.passWord ||
!meetingConfig.userName || !meetingConfig.sdkKey || !meetingConfig.signature) {
alert("Please fill in all required fields.");
return;
}
console.log("Initializing with signature:", meetingConfig.signature);
ZoomMtg.init({
leaveUrl: meetingConfig.leaveUrl,
patchJsMedia: true,
success: function () {
ZoomMtg.join({
signature: meetingConfig.signature,
sdkKey: meetingConfig.sdkKey,
meetingNumber: meetingConfig.meetingNumber,
userName: meetingConfig.userName,
passWord: meetingConfig.passWord,
success: function () {
console.log("Joined Meeting Successfully!");
document.querySelector('.controls').style.display = 'none';
document.getElementById('zmmtg-root').style.display = 'block';
},
error: function (error) {
console.error("Failed to join meeting:", error);
alert("Failed to join meeting: " + (error.errorMessage || JSON.stringify(error)));
}
});
},
error: function (error) {
console.error("Failed to initialize:", error);
alert("Failed to initialize: " + (error.errorMessage || JSON.stringify(error)));
}
});
});
});
Подробнее здесь: https://stackoverflow.com/questions/794 ... eter-error