1
0
Fork 0
mirror of https://github.com/DanielnetoDotCom/YouPHPTube synced 2025-10-05 10:49:36 +02:00
Oinktube/plugin/Live/webRTC.js
2021-08-04 21:18:12 -03:00

88 lines
No EOL
2.6 KiB
JavaScript

window.addEventListener('message', event => {
if (event.data.startLiveRestream) {
startLiveRestream(event.data.m3u8, forceIndex);
}else if (event.data.showPleaseWait) {
modal.showPleaseWait();
}else if (event.data.hidePleaseWait) {
modal.hidePleaseWait();
}else
if (event.data.webRTCModalConfig) {
console.log('event.data.webRTCModalConfig', event.data.webRTCModalConfig, typeof webRTCModalConfigShow);
if(event.data.webRTCModalConfig==1){
if(typeof webRTCModalConfigShow =='function'){
webRTCModalConfigShow();
}
}else{
if(typeof webRTCModalConfigHide =='function'){
webRTCModalConfigHide();
}
}
}
});
function startLiveRestream(m3u8, forceIndex) {
console.log('WebRTCLiveCam: startLiveRestream', m3u8, forceIndex);
modal.showPleaseWait();
$.ajax({
url: webSiteRootURL + '/plugin/Live/webRTCToLive.json.php',
method: 'POST',
data: {
'm3u8': m3u8,
'live_servers_id': live_servers_id,
'forceIndex': forceIndex,
'user': webrtcUser,
'pass': webrtcPass
},
success: function (response) {
if (response.error) {
webRTCDisconnect();
avideoAlertError(response.msg);
} else {
avideoToastSuccess(response.msg);
//document.querySelector("iframe").contentWindow.postMessage({setLiveStart: 1}, "*");
}
modal.hidePleaseWait();
}
});
}
function webRTCConnect() {
modal.showPleaseWait();
document.querySelector("iframe").contentWindow.postMessage({setLiveStart: 1}, "*");
webRTCPleaseWaitShow();
}
function webRTCDisconnect() {
document.querySelector("iframe").contentWindow.postMessage({setLiveStop: 1}, "*");
webRTCPleaseWaitHide();
}
function webRTCConfiguration() {
document.querySelector("iframe").contentWindow.postMessage({setConfiguration: 1}, "*");
}
var _webRTCPleaseWaitShowTimeout;
function webRTCPleaseWaitShow(){
$('body').addClass('webRTCPleaseWait');
clearTimeout(_webRTCPleaseWaitShowTimeout);
_webRTCPleaseWaitShowTimeout = setTimeout(function(){
avideoToastError('Live error')
webRTCPleaseWaitHide();
},60000);
}
function webRTCPleaseWaitHide(){
clearTimeout(_webRTCPleaseWaitShowTimeout);
$('body').removeClass('webRTCPleaseWait');
}
function webRTCisLive(){
$('body').addClass('webRTCisLive');
webRTCPleaseWaitHide();
}
function webRTCisOffline(){
$('body').removeClass('webRTCisLive');
webRTCPleaseWaitHide();
}