mirror of
https://github.com/MercuryWorkshop/adrift.git
synced 2025-05-13 06:10:01 -04:00
add firebase peer discovery back to client
This commit is contained in:
parent
4cc21f0f3b
commit
aa838cbff6
2 changed files with 52 additions and 8 deletions
|
@ -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();
|
||||
</script>
|
||||
|
||||
<h1>
|
||||
|
|
|
@ -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"));
|
||||
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue