Hello working

This commit is contained in:
“bobbydigitales”
2024-10-09 12:20:16 -07:00
parent 26ed3bcf84
commit dd66a5d31b
4 changed files with 22 additions and 10 deletions

View File

@@ -1,3 +1,4 @@
// deno-lint-ignore-file prefer-const no-explicit-any
function serveFile(filename: string) { function serveFile(filename: string) {
console.log(filename) console.log(filename)
const responseText = Deno.readFileSync("../" + filename); const responseText = Deno.readFileSync("../" + filename);
@@ -47,10 +48,19 @@ function helloHandler(m:HelloMessage) {
userPeers.get(knownUserID)?.add(m.peer_id); userPeers.get(knownUserID)?.add(m.peer_id);
} }
const peersToReturn = JSON.stringify(userPeers); let returnValue:any = {};
console.log(peersToReturn); for (let key of userPeers.keys()) {
let peers = userPeers.get(key);
if (!peers) {
continue;
}
returnValue[key] = [...peers.keys()];
}
return JSON.stringify({type:'hello', userPeers: peersToReturn});
console.log(returnValue);
return JSON.stringify({type:'hello', userPeers: returnValue});
} }
const messageDispatch:Map<string, (event:Record<string, never>)=>string> = new Map(); const messageDispatch:Map<string, (event:Record<string, never>)=>string> = new Map();

View File

@@ -251,7 +251,7 @@ class wsConnection {
} }
helloResponseHandler(data: any) { helloResponseHandler(data: any) {
debugger
let users = []; let users = [];
try { try {
let currentUserPeers = data.userPeers[app.router.userID]; let currentUserPeers = data.userPeers[app.router.userID];
@@ -265,9 +265,9 @@ class wsConnection {
log(`Net: got ${users.length} users from bootstrap peer. ${users.join(',')}`) log(`Net: got ${users.length} users from bootstrap peer. ${users.join(',')}`)
for (let [userID, peerIDs] of users) { for (let [userID, peerIDs] of users) {
this.peers.set(userID, [...Object.keys(peerIDs as any)]); this.peers.set(userID, [...peerIDs]);
for (let peerID of [...Object.keys(peerIDs as any)]) { for (let peerID of [...peerIDs]) {
if (peerID === this.peerID) { if (peerID === this.peerID) {
continue; continue;
} }
@@ -449,7 +449,7 @@ class wsConnection {
this.websocket.onmessage = (event) => { this.websocket.onmessage = (event) => {
// log('ws:<-' + event.data.slice(0, 240)); // log('ws:<-' + event.data.slice(0, 240));
debugger;
let data = JSON.parse(event.data); let data = JSON.parse(event.data);
let { type } = data; let { type } = data;

View File

@@ -174,6 +174,7 @@ class wsConnection {
this.websocket.send(json); this.websocket.send(json);
} }
helloResponseHandler(data) { helloResponseHandler(data) {
debugger;
let users = []; let users = [];
try { try {
let currentUserPeers = data.userPeers[app.router.userID]; let currentUserPeers = data.userPeers[app.router.userID];
@@ -186,8 +187,8 @@ class wsConnection {
users = [...users, ...Object.entries(data.userPeers)]; users = [...users, ...Object.entries(data.userPeers)];
log(`Net: got ${users.length} users from bootstrap peer. ${users.join(',')}`); log(`Net: got ${users.length} users from bootstrap peer. ${users.join(',')}`);
for (let [userID, peerIDs] of users) { for (let [userID, peerIDs] of users) {
this.peers.set(userID, [...Object.keys(peerIDs)]); this.peers.set(userID, [...peerIDs]);
for (let peerID of [...Object.keys(peerIDs)]) { for (let peerID of [...peerIDs]) {
if (peerID === this.peerID) { if (peerID === this.peerID) {
continue; continue;
} }
@@ -331,6 +332,7 @@ class wsConnection {
}; };
this.websocket.onmessage = (event) => { this.websocket.onmessage = (event) => {
// log('ws:<-' + event.data.slice(0, 240)); // log('ws:<-' + event.data.slice(0, 240));
debugger;
let data = JSON.parse(event.data); let data = JSON.parse(event.data);
let { type } = data; let { type } = data;
let handler = this.messageHandlers.get(type); let handler = this.messageHandlers.get(type);

File diff suppressed because one or more lines are too long