test(streaming): more streaming test

This commit is contained in:
2025-03-21 22:08:13 -05:00
parent edcfff6cc6
commit 4db4eea2d1
2 changed files with 49 additions and 11 deletions

View File

@@ -22,6 +22,8 @@ import ocpService from "./services/ocp/ocpService.js";
import {db} from "../database/dbclient.js";
import {settings} from "../database/schema/settings.js";
import {count, eq} from "drizzle-orm";
import {createNodeWebSocket} from "@hono/node-ws";
import {streamSSE} from "hono/streaming";
// create the main prodlogin here
const username = "lst_user";
@@ -34,6 +36,7 @@ export const installed = serverIntialized[0].count === 0 && process.env.NODE_ENV
createLog("info", "LST", "server", `Server is installed: ${installed}`);
const app = new OpenAPIHono({strict: false});
export const {injectWebSocket, upgradeWebSocket} = createNodeWebSocket({app});
// middle ware
app.use("*", logger());
@@ -70,6 +73,39 @@ app.doc("/api/ref", {
},
});
app.get(
"/api/log",
// upgradeWebSocket(() => {
// return {
// onMessage(event, ws) {
// console.log(`Message from client: ${event.data}`);
// ws.send("Hello from server!");
// },
// onClose: () => {
// console.log("Connection closed");
// },
// };
// })
async (c) => {
let id = 0;
let running = true;
return streamSSE(c, async (stream) => {
while (running) {
const message = `It is ${new Date().toISOString()}`;
await stream.writeSSE({
data: message,
event: "time-update",
id: String(id++),
});
await stream.sleep(1000);
if (id === 5) {
running = false;
}
}
});
}
);
const routes = [
scalar,
auth,
@@ -149,15 +185,17 @@ process.on("beforeExit", async () => {
});
const port = process.env.NODE_ENV === "development" ? process.env.VITE_SERVER_PORT : process.env.PROD_PORT;
serve(
{
fetch: app.fetch,
port: Number(port),
hostname: "0.0.0.0",
},
(info) => {
createLog("info", "LST", "server", `Server is running on http://${info.address}:${info.port}`);
}
injectWebSocket(
serve(
{
fetch: app.fetch,
port: Number(port),
hostname: "0.0.0.0",
},
(info) => {
createLog("info", "LST", "server", `Server is running on http://${info.address}:${info.port}`);
}
)
);
export type AppRoutes = typeof appRoutes;

View File

@@ -1,7 +1,7 @@
{
"servers": [
{
"sName": "test",
"sName": "Test",
"serverDNS": "usmcd1vms036",
"plantToken": "test3",
"idAdress": "10.193.0.56",
@@ -33,7 +33,7 @@
"contactPhone": "6366970253",
"customerTiAcc": "ALPL01BETHINT",
"lstServerPort": "4000",
"active": false,
"active": true,
"serverLoc": "E:\\LST\\lstv2",
"oldVersion": "E:\\LST\\lst_backend",
"shippingHours": "[{\"early\": \"06:30\", \"late\": \"23:00\"}]",