Hello,
I would like to embed a zoom meeting inside my angularjs web application. I have been following the CDN sample-app-web example.
I have added scripts:
<script src="https://source.zoom.us/1.5.0/lib/vendor/react.min.js"></script>
<script src="https://source.zoom.us/1.5.0/lib/vendor/react-dom.min.js"></script>
<script src="https://source.zoom.us/1.5.0/lib/vendor/redux.min.js"></script>
<script src="https://source.zoom.us/1.5.0/lib/vendor/redux-thunk.min.js"></script>
<script src="https://source.zoom.us/1.5.0/lib/vendor/jquery.min.js"></script>
<script src="https://source.zoom.us/1.5.0/lib/vendor/lodash.min.js"></script>
<script src="https://source.zoom.us/zoom-meeting-1.5.0.min.js"></script>
I have placed the following div on my page:
<div id="zmmtg-root" zoom></div>
I have created the following angularjs directive:
.directive ('zoom', function(){
return {
restrict: 'A',
link: function(scope, element, attrs) {
console.log('checkSystemRequirements');
console.log(JSON.stringify(ZoomMtg.checkSystemRequirements()));
ZoomMtg.preLoadWasm();
ZoomMtg.prepareJssdk();
const API_KEY = '***';
const API_SECRET = '***';
const meetConfig = {
apiKey: API_KEY,
apiSecret: API_SECRET,
meetingNumber:,
userName: '',
passWord: '',
leaveUrl: 'https://zoom.us',
role: 0
};
ZoomMtg.generateSignature({
meetingNumber: meetConfig.meetingNumber,
apiKey: meetConfig.apiKey,
apiSecret: meetConfig.apiSecret,
role: meetConfig.role,
success(res) {
console.log('signature', res.result);
ZoomMtg.init({
leaveUrl: 'http://www.zoom.us',
success() {
ZoomMtg.join(
{
meetingNumber: meetConfig.meetingNumber,
userName: meetConfig.userName,
signature: res.result,
apiKey: meetConfig.apiKey,
userEmail: 'email@gmail.com',
passWord: meetConfig.passWord,
success() {
console.log('join meeting success');
},
error(res) {
console.log(res);
}
}
);
},
error(res) {
console.log(res);
}
});
}
});
}
}
And I have added css:
#zmmtg-root, .meeting-client, .meeting-client-inner {
width: 30vh;
height: 50vh;
position: relative;
}
#wc-footer {
bottom: auto !important;
width: 1000px !important;
}
#dialog-join {
width: 1000px !important;
}
#sv-active-video, .active-main, #sv-active-speaker-view, .main-layout {
height: 500px !important;
width: 1000px !important;
}
.suspension-window {
transform: translate(-444px, 10px) !important;
}
#dialog-invite {
display: none;
}
Problem:
the styles produced by webSDK are attached to the body of my application, and they are conflicting with my css class. How can I avoid that?
Thank you,
Alessandro