itpdp/dev-proxy/index.ts
2026-05-04 12:51:58 +02:00

46 lines
952 B
TypeScript

import type {
PartySocketEvent,
PartyState,
} from "../api/src/party-types";
let ws: WebSocket | null = new WebSocket("ws://localhost:3000/api/dev-socket/ws");
const socket = await Bun.udpSocket({
port: 7070,
socket: {
data(socket, buf, port, addr) {
console.log(`message from ${addr}:${port}:`);
console.log(buf.toString());
},
},
});
ws.onerror = e => {
console.error(e)
}
ws.onopen = () => {
console.log("WebSocket open")
}
ws.onmessage = e => {
const data = JSON.parse(e.data) as PartySocketEvent;
console.log(data)
switch (data.type) {
case "party_status":
const { party } = data;
if (!party) return;
const partyData = party.data;
if (!partyData) return;
const { currentQuestion } = partyData
console.log(currentQuestion)
let text = currentQuestion?.text
if (text) {
ws?.send(text)
}
break;
}
}
console.log("Started on :7070")