fix for sstype3

This commit is contained in:
steveseguin
2025-02-04 23:13:26 -05:00
parent 81e323b37f
commit b3054d062e
4 changed files with 24 additions and 7 deletions

View File

@@ -82,7 +82,7 @@
</span>
<script type="text/javascript" crossorigin="anonymous" src="./thirdparty/CodecsHandler.js?ver=28"></script>
<script type="text/javascript" crossorigin="anonymous" src="./thirdparty/aes.js"></script>
<script type="text/javascript" crossorigin="anonymous" src="./webrtc.js?ver=842"></script>
<script type="text/javascript" crossorigin="anonymous" src="./webrtc.js?ver=848"></script>
<input id="zoomSlider" type="range" style="display: none;" />
<span id="electronDragZone" style="pointer-events: none; z-index:-10; position:absolute;top:0;left:0;width:100%;height:2%;-webkit-app-region: drag;min-height:20px;"></span>
<div id="header">
@@ -2126,6 +2126,8 @@
max="20"
class="effect-slider">
</div>
<div id="selectImageContent3" style="display:none;margin-top:10px;"></div>
<div id="selectImageOverlay3" style="display:none;margin-top:10px;"></div>
<div id="zoomPositionControls3" style="display:none;" role="group" aria-label="Digital Zoom Controls">
<div class="zoom-control-group">
<label for="zoomPositionX" id="zoomPosXLabel">Horizontal Position:</label>
@@ -2781,6 +2783,7 @@
<li><a onclick="changeLg('nl');toggle(document.getElementById('languages'));" style="cursor: pointer;" data-tz="Europe/Amsterdam">Dutch</a></li>
<li><a onclick="changeLg('tr');toggle(document.getElementById('languages'));" style="cursor: pointer;" data-tz="Europe/Istanbul">Turkish</a></li>
<li><a onclick="changeLg('ja');toggle(document.getElementById('languages'));" style="cursor: pointer;" data-tz="Asia/Tokyo">Japanese</a></li>
<li><a onclick="changeLg('ar');toggle(document.getElementById('languages'));" style="cursor: pointer;" data-tz="Asia/Arabic">Arabic</a></li>
<li><a onclick="changeLg('cn');toggle(document.getElementById('languages'));" style="cursor: pointer;" data-tz="Asia/China">Chinese (中文)</a></li>
<li><a onclick="changeLg('cs');toggle(document.getElementById('languages'));" style="cursor: pointer;" data-tz="Europe/Prague">Czech</a></li>
<li><a onclick="changeLg('ru');toggle(document.getElementById('languages'));" style="cursor: pointer;" data-tz="Europe/Moscow">Russian</a></li>
@@ -2839,7 +2842,7 @@
// if (!window.location.search){document.body.innerHTML = "";} // uncomment this line, if you wish to try it.
var session = WebRTC.Media; // session is a required global variable if configuring manually. Run before loading main.js but after webrtc.js.
session.version = "27.0";
session.version = "27.1";
session.streamID = session.generateStreamID(); // randomly generates a streamID for this session. You can set your own programmatically if needed
session.defaultPassword = "someEncryptionKey123"; // Change this password if self-deploying for added security/privacy
@@ -2962,8 +2965,8 @@
// if ("42" != prompt("enter the password")){document.body.innerHTML = "";window.location.href = "";} // if you want a low-effort password for the site
</script>
<script type="text/javascript" crossorigin="anonymous" id="lib-js" src="./lib.js?ver=1294"></script>
<script type="text/javascript" crossorigin="anonymous" id="main-js" src="./main.js?ver=954"></script>
<script type="text/javascript" crossorigin="anonymous" id="lib-js" src="./lib.js?ver=1296"></script>
<script type="text/javascript" crossorigin="anonymous" id="main-js" src="./main.js?ver=956"></script>
<!-- <script type="text/javascript" crossorigin="anonymous" src="./trace.js?ver=1"></script>!-->
</body>
</html>

4
lib.js
View File

@@ -37932,7 +37932,7 @@ function createIframePopup() {
return;
} // can't secondary-screen share if in a queue.
if (!session.iFramesAllowed){errorlog("Can't create iFRAME - security is tainted due to possible CSS injection");return;}
//if (!session.iFramesAllowed){errorlog("Can't create iFRAME - security is tainted due to possible CSS injection");return;} // allow because we are doing &sstype=2; not anything else.
var iframe = document.createElement("iframe");
iframe.allow = "autoplay;camera;microphone;fullscreen;picture-in-picture;display-capture;midi;screen-wake-lock;"; // do not allow location
iframe.src = "./" + createScreenShareURL();
@@ -46631,7 +46631,7 @@ function whipClient() {
try {
var resp = await processWhipIn(data);
} catch(e){
var resp = e?.message || e.toString();
var resp = e && (e.message || e.toString());
}
if (resp) {
var ret = {};

View File

@@ -6058,9 +6058,14 @@ async function main() {
// getById("head3").classList.remove('hidden');
// getById("head3a").classList.remove('hidden');
}
} else if (window.obsstudio && session.permaid === false && session.director === false && ((session.view!==false) || session.whepInput || session.whipView) && session.roomid.length > 0) {
} else if (window.obsstudio && !session.webcamonly && session.permaid === false && session.director === false && ((session.view!==false) || session.whepInput || session.whipView) && session.roomid.length > 0) {
// we already know roomid !== false
updateURL("scene", true, false); // we also know it's not a scene, but we will assume it is in this specific case.
session.scene = 0;
} else if (window.obsstudio && !session.webcamonly && !session.cleanOutput && (session.permaid === false) && (session.director === false) && (session.view===false) && !session.whepInput && !session.whipView && (session.roomid.length > 0)) {
try {
getById("unexpectedPushLink").classList.remove("hidden");
} catch (e) {}
}
} else if (session.director) {
// if I do a short form of this, it will cause duplications in the code elsewhere.

9
release/webrtc.js Normal file

File diff suppressed because one or more lines are too long