Unraveling the timing.

pull/25/head
Pontus Persson 2017-12-08 20:27:42 +01:00 committed by Pontus Alexander
parent 5ff20767ce
commit f2e9b46144
2 changed files with 16 additions and 8 deletions

View File

@ -1,6 +1,6 @@
import { createUUID } from './random.js';
export function createPeerExchange(address) {
export async function createPeerExchange(address) {
const uuid = createUUID();
const server = new WebSocket(address);
@ -26,8 +26,12 @@ export function createPeerExchange(address) {
server.addEventListener('message', onMessage);
return {
return new Promise(resolve => {
server.addEventListener('open', () => {
resolve({
listen,
send,
};
});
});
});
}

View File

@ -5,16 +5,16 @@ import { createPeer } from './peer.js';
var peerConnection;
var serverConnection;
function pageReady() {
async function pageReady() {
document.querySelector("button#start")
.addEventListener("click", extendOffer);
serverConnection = createPeerExchange('wss://' + window.location.hostname + ':8443');
serverConnection = await createPeerExchange('wss://' + window.location.hostname + ':8443');
setup();
}
function setup() {
async function setup() {
peerConnection = createPeer(serverConnection, peerConnectionConfig);
peerConnection.addEventListener('addstream', stream => {
@ -30,10 +30,14 @@ function setup() {
.then(stream => {
document.getElementById('localVideo').srcObject = stream;
peerConnection.addStream(stream);
extendOffer();
});
//setTimeout(extendOffer, 50);
}
function extendOffer() {
console.log('Extending offer');
peerConnection.createOffer().then(createdDescription).catch(errorHandler);
}