diff --git a/app/src/lib/socket.ts b/app/src/lib/socket.ts index 85eb5be..2fcfddb 100644 --- a/app/src/lib/socket.ts +++ b/app/src/lib/socket.ts @@ -10,7 +10,7 @@ export const battery = writable({}) export const mpu = writable({heading:0}) export const distances = writable({}) export const settings = writable({}) -export const systemInfo = writable({}) +export const systemInfo = writable({} as number) export const dataBuffer = writable(new Float32Array(13)) @@ -67,6 +67,17 @@ const _message = (event:any) => { case "angles": angles.set(data.angles) break + case "logs": + log.set(data.logs) + break + case "log": + log.update(entries => {entries.push(data.log); return entries}) + break + case "settings": + settings.set(data.settings) + case "info": + systemInfo.set(data.info) + break case "mpu": mpu.set(data.mpu) break diff --git a/mock/server.js b/mock/server.js index d70058d..555154b 100644 --- a/mock/server.js +++ b/mock/server.js @@ -270,16 +270,16 @@ wss.on("connection", (ws) => { ws.send(JSON.stringify({ type: "logs", logs:ws.clientState.logs })); break; case "system/info": - ws.send(JSON.stringify(updateSystem())); + ws.send(JSON.stringify({ type: "info", info: updateSystem() })); break; case "system/settings": if (data.settings) { Object.entries(data.settings).forEach( - ([key, value]) => (settings[key] = value) + ([key, value]) => (ws.clientState.settings[key] = value) ); - ws.send(JSON.stringify(settings)); + ws.send(JSON.stringify(ws.clientState.settings)); } else { - ws.send(JSON.stringify(settings)); + ws.send(JSON.stringify({type:"settings", settings: ws.clientState.settings})); } break; case "system/stop":