Work on Jitsi for IDAA

This commit is contained in:
Scott Idem
2025-09-23 11:23:05 -04:00
parent 43d64696d5
commit 7490545ba7
5 changed files with 29 additions and 15 deletions

View File

@@ -23,11 +23,12 @@ let novi_api_key_for_idaa = 'CmNdWgdPmgluBWjiTd8xsUCk5mio8F1O9DYAh0pVDcg=';
let novi_current_user_obj = null;
let novi_current_user_email = null;
let is_moderator = true;
let room_name = 'IDAA-Student-and-Resident-Meeting'; // 'IDAA-Student-and-Resident-Meeting' 'idaa-meeting'
let is_moderator = false;
let idaa_osit_site_key = '8VTOJ0X5hvT6JdiTJsGEzQ'; // 'restricted-access'
// let idaa_ae_api_root_url = 'https://sk-idaa.oneskyit.com/idaa/jitsi_meet';
let idaa_ae_api_root_url = 'https://static.oneskyit.com/c/DgrZone/idaa_novi_iframe_jitsi.html';
let idaa_ae_api_root_url = 'https://static.oneskyit.com/c/DgrZone/jitsi_iframe_api.html';
let idaa_ae_params = new URLSearchParams(document.location.search);
// let idaa_ae_slct_event_id = idaa_ae_params.get('event_id');
@@ -55,7 +56,7 @@ fetch(novi_api_get_customer_endpoint, requestOptions)
let idaa_ae_iframe_element = document.getElementById('ae_idaa_jitsi_meeting_iframe');
idaa_ae_iframe_element.src = `${idaa_ae_api_root_url}?uuid=${novi_customer_uid}&email=${novi_current_user_obj.Email}&full_name=${novi_current_user_obj.Name}&moderator=${is_moderator}&iframe=true&key=${idaa_osit_site_key}`;
idaa_ae_iframe_element.src = `${idaa_ae_api_root_url}?uuid=${novi_customer_uid}&email=${novi_current_user_obj.Email}&full_name=${novi_current_user_obj.Name}&moderator=${is_moderator}&room=${room_name}&iframe=true&key=${idaa_osit_site_key}`;
// url.searchParams.delete('event_id');
// history.pushState({}, '', url);
@@ -116,7 +117,7 @@ window.addEventListener('message', function(event) {
<!-- IDAA Aether Apps for Novi - Recovery Meetings (events) iframe -->
<p><iframe width="100%" height="950" id="ae_idaa_jitsi_meeting_iframe" src="" style="min-height: 950px; height: min-content; max-height: 2048px;" class="ae_idaa_iframe"></iframe></p>
<p><iframe width="100%" height="950" id="ae_idaa_jitsi_meeting_iframe" src="" style="min-height: 950px; height: min-content; max-height: 2048px;" class="ae_idaa_iframe" allow="camera; microphone; fullscreen; display-capture; autoplay; clipboard-write" allowfullscreen></iframe></p>

View File

@@ -3,13 +3,13 @@
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>Jitsi iframe API Test Page</title>
<title>Jitsi Meetings iframe API for IDAA</title>
</head>
<body>
<h1>Testing the Jitsi Meet iframe API</h1>
<p>The URL parameters are passed from the Novi page that contains this as an iframe. This will automatically set the attendees name, email address, and moderator status. The UUID is not currently used. For now, everyone is set as moderator when viewing from this page. There are <strong>many</strong> other options that can be set through the Jitsi API.</p>
<h1>New Jitsi Meetings for IDAA</h1>
<p>The URL parameters are passed from the Novi page that contains this as an iframe. This will automatically set the attendees name, email address, moderator status, and room name. The moderator status is based on the Novi UUID.</p>
<div id="jitsi_meet_external_api_container" style="height: 750px; width: 100%;"></div>
<script src="https://jitsi.dgrzone.com/external_api.js"></script>
@@ -25,13 +25,23 @@ let user_moderator = novi_url_params.get('moderator');
// Jitsi Meet External API variables
let domain = 'jitsi.dgrzone.com';
let room_name = 'it-is-hot-outside';
let room_name = novi_url_params.get('room') ?? 'the-default-room';
let display_name = user_full_name ?? 'Not My Name';
let email = user_email ?? 'test+unknown@oneskyit.com';
// Replace spaces with plus symbol in email addresses
email = email.replace(/\s+/g, '+');
let is_moderator = (user_moderator === 'true' || user_moderator === true) ? true : false;
// Temporarily hard coding moderators:
// 5724aad7-6d89-47e7-8943-966fd22911bd = Steven L. Klein - Stevenklein425@gmail.com
let novi_jitsi_mod_li = ["2b078deb-b4e7-4203-99da-9f7cd62159a5", "c9ea07b5-06b0-4a43-a2d0-8d06558c8a82", "58db22ee-4b0a-49a7-9f34-53d2ba85a84b", "5724aad7-6d89-47e7-8943-966fd22911bd"];
if (novi_jitsi_mod_li.includes(user_id)) {
is_moderator = true;
}
// 1. Function to fetch the JWT from your backend
async function getJitsiJwt() {
// This is the URL of your backend API endpoint.
@@ -85,7 +95,7 @@ async function initJitsiApi() {
const options = {
roomName: room_name,
width: '100%',
height: 750,
height: '100%',
parentNode: document.getElementById('jitsi_meet_external_api_container'),
userInfo: {
displayName: display_name,