mirror of
https://github.com/signalwire/freeswitch.git
synced 2025-04-16 00:41:41 +00:00
fixes for recent firefox changes
This commit is contained in:
parent
66c425c09b
commit
94bb4606e3
4
html5/verto/demo/js/verto-min.js
vendored
4
html5/verto/demo/js/verto-min.js
vendored
@ -37,8 +37,8 @@ if(!(tmp&&typeof(tmp)=="object"&&tmp.constructor===Array)){console.warn("iceServ
|
|||||||
iceServers={iceServers:tmp||[STUN]};if(!moz&&!tmp){if(parseInt(navigator.userAgent.match(/Chrom(e|ium)\/([0-9]+)\./)[2])>=28)TURN={url:'turn:turn.bistri.com:80',credential:'homeo',username:'homeo'};iceServers.iceServers=[STUN];}}
|
iceServers={iceServers:tmp||[STUN]};if(!moz&&!tmp){if(parseInt(navigator.userAgent.match(/Chrom(e|ium)\/([0-9]+)\./)[2])>=28)TURN={url:'turn:turn.bistri.com:80',credential:'homeo',username:'homeo'};iceServers.iceServers=[STUN];}}
|
||||||
var optional={optional:[]};if(!moz){optional.optional=[{DtlsSrtpKeyAgreement:true},{RtpDataChannels:options.onChannelMessage?true:false}];}
|
var optional={optional:[]};if(!moz){optional.optional=[{DtlsSrtpKeyAgreement:true},{RtpDataChannels:options.onChannelMessage?true:false}];}
|
||||||
var peer=new PeerConnection(iceServers,optional);openOffererChannel();var x=0;peer.onicecandidate=function(event){if(event.candidate){options.onICE(event.candidate);}else{if(options.onICEComplete){options.onICEComplete();}
|
var peer=new PeerConnection(iceServers,optional);openOffererChannel();var x=0;peer.onicecandidate=function(event){if(event.candidate){options.onICE(event.candidate);}else{if(options.onICEComplete){options.onICEComplete();}
|
||||||
if(options.type=="offer"){if(!moz&&!x&&options.onICESDP){options.onICESDP(peer.localDescription);}}else{if(!x&&options.onICESDP){options.onICESDP(peer.localDescription);}}}};if(options.attachStream)peer.addStream(options.attachStream);if(options.attachStreams&&options.attachStream.length){var streams=options.attachStreams;for(var i=0;i<streams.length;i++){peer.addStream(streams[i]);}}
|
if(options.type=="offer"){if((!moz||peer.localDescription.sdp.match(/a=candidate/))&&!x&&options.onICESDP){options.onICESDP(peer.localDescription);}}else{if(!x&&options.onICESDP){options.onICESDP(peer.localDescription);}}}};if(options.attachStream)peer.addStream(options.attachStream);if(options.attachStreams&&options.attachStream.length){var streams=options.attachStreams;for(var i=0;i<streams.length;i++){peer.addStream(streams[i]);}}
|
||||||
peer.onaddstream=function(event){var remoteMediaStream=event.stream;remoteMediaStream.onended=function(){if(options.onRemoteStreamEnded)options.onRemoteStreamEnded(remoteMediaStream);};if(options.onRemoteStream)options.onRemoteStream(remoteMediaStream);};var constraints=options.constraints||{optional:[],mandatory:{OfferToReceiveAudio:true,OfferToReceiveVideo:true}};function createOffer(){if(!options.onOfferSDP)return;peer.createOffer(function(sessionDescription){sessionDescription.sdp=serializeSdp(sessionDescription.sdp);peer.setLocalDescription(sessionDescription);options.onOfferSDP(sessionDescription);if(moz&&options.onICESDP){options.onICESDP(sessionDescription);}},onSdpError,constraints);}
|
peer.onaddstream=function(event){var remoteMediaStream=event.stream;remoteMediaStream.onended=function(){if(options.onRemoteStreamEnded)options.onRemoteStreamEnded(remoteMediaStream);};if(options.onRemoteStream)options.onRemoteStream(remoteMediaStream);};var constraints=options.constraints||{optional:[],mandatory:{OfferToReceiveAudio:true,OfferToReceiveVideo:true},offerToReceiveAudio:true,offerToReceiveVideo:true};function createOffer(){if(!options.onOfferSDP)return;peer.createOffer(function(sessionDescription){sessionDescription.sdp=serializeSdp(sessionDescription.sdp);peer.setLocalDescription(sessionDescription);options.onOfferSDP(sessionDescription);if(moz&&options.onICESDP&&sessionDescription.match(/a=candidate/)){options.onICESDP(sessionDescription);}},onSdpError,constraints);}
|
||||||
function createAnswer(){if(options.type!="answer")return;peer.setRemoteDescription(new SessionDescription(options.offerSDP),onSdpSuccess,onSdpError);peer.createAnswer(function(sessionDescription){sessionDescription.sdp=serializeSdp(sessionDescription.sdp);peer.setLocalDescription(sessionDescription);if(options.onAnswerSDP){options.onAnswerSDP(sessionDescription);}},onSdpError,constraints);}
|
function createAnswer(){if(options.type!="answer")return;peer.setRemoteDescription(new SessionDescription(options.offerSDP),onSdpSuccess,onSdpError);peer.createAnswer(function(sessionDescription){sessionDescription.sdp=serializeSdp(sessionDescription.sdp);peer.setLocalDescription(sessionDescription);if(options.onAnswerSDP){options.onAnswerSDP(sessionDescription);}},onSdpError,constraints);}
|
||||||
if((options.onChannelMessage&&!moz)||!options.onChannelMessage){createOffer();createAnswer();}
|
if((options.onChannelMessage&&!moz)||!options.onChannelMessage){createOffer();createAnswer();}
|
||||||
function setBandwidth(sdp){sdp=sdp.replace(/b=AS([^\r\n]+\r\n)/g,'');sdp=sdp.replace(/a=mid:data\r\n/g,'a=mid:data\r\nb=AS:1638400\r\n');return sdp;}
|
function setBandwidth(sdp){sdp=sdp.replace(/b=AS([^\r\n]+\r\n)/g,'');sdp=sdp.replace(/a=mid:data\r\n/g,'a=mid:data\r\nb=AS:1638400\r\n');return sdp;}
|
||||||
|
@ -484,7 +484,11 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
if (options.type == "offer") {
|
if (options.type == "offer") {
|
||||||
if (!moz && !x && options.onICESDP) {
|
/* new mozilla now tries to be like chrome but it takes them 10 seconds to complete the ICE
|
||||||
|
Booooooooo! This trickle thing is a waste of time...... We'll all have to re-code our engines
|
||||||
|
to handle partial setups to maybe save 100m
|
||||||
|
*/
|
||||||
|
if ((!moz || peer.localDescription.sdp.match(/a=candidate/)) && !x && options.onICESDP) {
|
||||||
options.onICESDP(peer.localDescription);
|
options.onICESDP(peer.localDescription);
|
||||||
//x = 1;
|
//x = 1;
|
||||||
/*
|
/*
|
||||||
@ -549,7 +553,10 @@
|
|||||||
mandatory: {
|
mandatory: {
|
||||||
OfferToReceiveAudio: true,
|
OfferToReceiveAudio: true,
|
||||||
OfferToReceiveVideo: true
|
OfferToReceiveVideo: true
|
||||||
}
|
},
|
||||||
|
/* spec is changed support both ways at once */
|
||||||
|
offerToReceiveAudio: true,
|
||||||
|
offerToReceiveVideo: true
|
||||||
};
|
};
|
||||||
|
|
||||||
// onOfferSDP(RTCSessionDescription)
|
// onOfferSDP(RTCSessionDescription)
|
||||||
@ -560,7 +567,8 @@
|
|||||||
sessionDescription.sdp = serializeSdp(sessionDescription.sdp);
|
sessionDescription.sdp = serializeSdp(sessionDescription.sdp);
|
||||||
peer.setLocalDescription(sessionDescription);
|
peer.setLocalDescription(sessionDescription);
|
||||||
options.onOfferSDP(sessionDescription);
|
options.onOfferSDP(sessionDescription);
|
||||||
if (moz && options.onICESDP) {
|
/* old mozilla behaviour the SDP was already great right away */
|
||||||
|
if (moz && options.onICESDP && sessionDescription.match(/a=candidate/)) {
|
||||||
options.onICESDP(sessionDescription);
|
options.onICESDP(sessionDescription);
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
Loading…
x
Reference in New Issue
Block a user