fix(tcp): added in a catch if ocme is not active and we dont have a zebra camera
This commit is contained in:
@@ -9,6 +9,7 @@ import { db } from "../../../database/dbclient.js";
|
|||||||
import { settings } from "../../../database/schema/settings.js";
|
import { settings } from "../../../database/schema/settings.js";
|
||||||
import { eq } from "drizzle-orm";
|
import { eq } from "drizzle-orm";
|
||||||
import { postLabelData } from "../ocme/controller/postRunningNr.js";
|
import { postLabelData } from "../ocme/controller/postRunningNr.js";
|
||||||
|
import { tryCatch } from "../../globalUtils/tryCatch.js";
|
||||||
|
|
||||||
let tcpServer: net.Server;
|
let tcpServer: net.Server;
|
||||||
let tcpSockets: Set<net.Socket> = new Set();
|
let tcpSockets: Set<net.Socket> = new Set();
|
||||||
@@ -27,8 +28,23 @@ export const startTCPServer = () => {
|
|||||||
if (isServerRunning)
|
if (isServerRunning)
|
||||||
return { success: false, message: "Server is already running" };
|
return { success: false, message: "Server is already running" };
|
||||||
|
|
||||||
tcpServer = net.createServer((socket) => {
|
tcpServer = net.createServer(async (socket) => {
|
||||||
createLog("info", "tcp", "tcp", "Client connected");
|
createLog("debug", "tcp", "tcp", "Client connected");
|
||||||
|
|
||||||
|
const { data: setting, error: settingError } = await tryCatch(
|
||||||
|
db.select().from(settings)
|
||||||
|
);
|
||||||
|
if (settingError) {
|
||||||
|
return {
|
||||||
|
success: false,
|
||||||
|
message: "Error getting settings",
|
||||||
|
data: [],
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
||||||
|
const settingCheck = setting.filter(
|
||||||
|
(newData) => newData.name === "ocmeService"
|
||||||
|
);
|
||||||
|
|
||||||
tcpSockets.add(socket);
|
tcpSockets.add(socket);
|
||||||
socket.on("data", (data: Buffer) => {
|
socket.on("data", (data: Buffer) => {
|
||||||
@@ -50,11 +66,14 @@ export const startTCPServer = () => {
|
|||||||
}
|
}
|
||||||
|
|
||||||
// from the wrapper send the data
|
// from the wrapper send the data
|
||||||
|
const ocmeSetting: any = settingCheck;
|
||||||
|
if (ocmeSetting[0]?.value === "1") {
|
||||||
postLabelData(parseData);
|
postLabelData(parseData);
|
||||||
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
socket.on("end", () => {
|
socket.on("end", () => {
|
||||||
createLog("info", "tcp", "tcp", "Client disconnected");
|
createLog("debug", "tcp", "tcp", "Client disconnected");
|
||||||
tcpSockets.delete(socket);
|
tcpSockets.delete(socket);
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user