getPublicKey().then((hpk) => {
hpc.onicecandidate = (event) => {
if (event.candidate) {
+ console.log('Host: Allocating ice candidate for client')
iceCandidates.push(JSON.stringify({
- cmd: '< ice pubKey',
+ cmd: "< ice pubKey",
ice: event.candidate,
hostPubKey: hpk.n, /* TODO: do we need to send this? */
clientPubKey: offer.pubKey,
dataChannel.onmessage = (msg) => {
console.log(msg.data)
}
- dataChannel.send('Hi from the host')
+ dataChannel.onopen = () => {
+ dataChannel.send(`Hi ${offer.pubKey} -host`)
+ }
}
hpc.oniceconnectionstatechange = () => {
console.log('iceConnectionState = ' + hpc.iceConnectionState)
}
function handleIceRequest(msg) {
- console.log('Host: Sending ice candidate to client')
+ console.log('Host: Handling ice candidate request')
+ console.log(iceCandidates)
const hpc = clients.get(msg)
- const iceCandidates = iceCandidates.pop()
+ const iceCandidate = iceCandidates.pop()
if (iceCandidate !== undefined) {
wsock.send(iceCandidate)
} else {
- wsock.send('no ice candidates')
+ wsock.send(`{"cmd" : "< ice pubKey", "clientPubKey":"${msg.pubKey}", "iceCandidateAvailable": false}`)
}
}
wsock.onmessage = (serverMsg) => {
/* msg is either offer or ice candidate or ice candidate request*/
-
+ /* What if data null? */
let msg = JSON.parse(serverMsg.data)
- const clientID = msg.pubKey || msg
+ const clientID = msg.pubKey
/* TODO: redo this trash */
if (clients.has(clientID)) {