jitsi-meet-electron/windows/jitsi-meet/render.js

36 lines
1 KiB
JavaScript
Raw Normal View History

2017-07-14 23:24:30 +02:00
/* global process, JitsiMeetExternalAPI */
const {
RemoteControl,
setupScreenSharingForWindow
2017-07-14 23:24:30 +02:00
} = require("jitsi-meet-electron-utils");
const { jitsiMeetDomain } = require("../../config.js");
2016-12-12 21:46:47 +01:00
/**
2017-07-14 23:24:30 +02:00
* Loads a script from a specific source.
*
* @param src the source from the which the script is to be (down)loaded
* @param loadCallback on load callback function
* @param errorCallback callback to be called on error loading the script
*/
2017-07-14 23:24:30 +02:00
function loadScript(
src,
loadCallback = () => {},
errorCallback = console.error) {
const script = document.createElement('script');
2017-07-14 23:24:30 +02:00
script.async = true;
2016-12-12 21:46:47 +01:00
2017-07-14 23:24:30 +02:00
script.onload = loadCallback;
script.onerror = errorCallback;
script.src = src;
document.head.appendChild(script);
2016-12-12 21:46:47 +01:00
}
2017-07-14 23:24:30 +02:00
loadScript(`https://${jitsiMeetDomain}/external_api.js`, () => {
const api = new JitsiMeetExternalAPI(
process.env.JITSI_MEET_DOMAIN || jitsiMeetDomain);
const iframe = api.getIFrame();
setupScreenSharingForWindow(iframe);
new RemoteControl(iframe);
});