Confirmed users
632
edits
(Created page with "Loop/Architecture/Rooms#Joining a Room POST /rooms/QzBbvGmIZWU HTTP/1.1 Accept: application/json Accept-Encoding: gzip, deflate Content-Type: application/json; charse...") |
No edit summary |
||
| Line 81: | Line 81: | ||
] | ] | ||
} | } | ||
== Proof-of-Concept Shim == | |||
<script> | |||
window._originalRTCPeerConnection = window.mozRTCPeerConnection; | |||
window.mozRTCPeerConnection = function() { | |||
var setDescriptionShim = function(sdp, success, failure, pc, localRemote) { | |||
var fingerprint = /a=fingerprint:([^\r\n]*)/.exec(sdp.sdp)[1]; | |||
console.log(localRemote + " fingerprint = " + fingerprint); | |||
pc["_originalSet" + localRemote + "Description"](sdp, success, failure); | |||
} | |||
var pc = new window._originalRTCPeerConnection(); | |||
pc._originalSetLocalDescription = pc.setLocalDescription; | |||
pc._originalSetRemoteDescription = pc.setRemoteDescription; | |||
pc.setLocalDescription = function(sdp, success, failure) { | |||
setDescriptionShim(sdp, success, failure, pc, "Local"); | |||
} | |||
pc.setRemoteDescription = function(sdp, success, failure) { | |||
setDescriptionShim(sdp, success, failure, pc, "Remote"); | |||
} | |||
return pc; | |||
} | |||
navigator.mozGetUserMedia({video: true, fake:true}, function(stream) { | |||
var pc = new mozRTCPeerConnection(); | |||
pc.addStream(stream); | |||
pc.createOffer(function(offer) { | |||
pc.setLocalDescription(offer, function() { | |||
console.log("Local description has been set"); | |||
}, function (err) { | |||
console.log(err); | |||
}); | |||
}, function (err) { | |||
console.log(err); | |||
}); | |||
}, function (err) { | |||
console.log(err); | |||
}); | |||
</script> | |||