diff --git a/frontend/App.svelte b/frontend/App.svelte index d305388..db29122 100644 --- a/frontend/App.svelte +++ b/frontend/App.svelte @@ -71,12 +71,16 @@ set(peer, JSON.stringify(offer)); onValue(peer, (snapshot) => { - const data = snapshot.val(); - console.log(data); - if (data && data.answer && data.candidates) { - set(peer, null); - const { answer, candidates } = JSON.parse(data); - rtctransport?.answer(answer, candidates); + const str = snapshot.val(); + if (str) { + console.log(str); + let data = JSON.parse(str); + console.log(data); + if (data && data.answer && data.candidates) { + set(peer, null); + const { answer, candidates } = data; + rtctransport?.answer(answer, candidates); + } } }); } @@ -97,7 +101,7 @@ const { answer, candidates } = await r.json(); await rtctransport?.answer(answer, candidates); } - connectDevHttp(); + // connectDevHttp();

diff --git a/server/main.ts b/server/main.ts index 15c09aa..985aef7 100644 --- a/server/main.ts +++ b/server/main.ts @@ -4,6 +4,10 @@ import expressWs from "express-ws"; import wrtc from "wrtc"; import { Client } from "./client.js"; +import { signInWithEmailAndPassword } from "firebase/auth"; + +import { auth } from "../firebase-config.js"; +import { getDatabase, onValue, ref, set } from "firebase/database"; const configuration = { iceServers: [ @@ -141,4 +145,40 @@ app.ws("/dev-ws", (ws, req) => { }); }); -app.listen(3000, () => console.log("listening")); +async function connectFirebase() { + let creds = await signInWithEmailAndPassword( + auth, + "test@test.com", + "123456" + ); + + const db = getDatabase(); + let peer = ref(db, `/peers/${creds.user.uid}`); + + + + set(peer, ""); + + onValue(peer, (snapshot) => { + const str = snapshot.val(); + + if (str) { + let data = JSON.parse(str); + console.log(data); + console.log(data.offer); + console.log(data.localCandidates); + if (data && data.offer && data.localCandidates) { + console.log("answerng"); + answerRtc(data, (answer) => { + console.log("answering"); + set(peer, JSON.stringify(answer)); + }) + } + } + }); +} +connectFirebase(); + +// app.listen(3000, () => console.log("listening")); + +