// services/fetchAnalogeEingaengeService.ts export const fetchAnalogeEingaengeService = async (): Promise | null> => { try { if (typeof window === "undefined") return null; // Umgebungserkennung: localhost = Entwicklung, alles andere = Produktion const isDevelopment = process.env.NEXT_PUBLIC_NODE_ENV === "development"; // Skriptpfad abhängig von der Umgebung const scriptSrc = isDevelopment ? "/api/cpl/analogeEingaengeAPIHandler" : "/CPL?/CPL/SERVICE/ae.js"; // Skript dynamisch laden await new Promise((resolve, reject) => { const script = document.createElement("script"); script.src = scriptSrc; script.async = true; script.onload = () => resolve(); script.onerror = () => reject(`❌ Fehler beim Laden von ${scriptSrc}`); document.body.appendChild(script); }); // Analoge Eingänge parsen (1 bis 8) const result: Record = {}; for (let i = 1; i <= 8; i++) { const varName = `win_analogeEingaenge${i}`; const data = (window as any)[varName]; if (Array.isArray(data)) { result[varName] = { id: data[0], value: data[1], name: data[2], untererWarnwert: data[3] === 1, untererGrenzwert: data[4] === 1, obererWarnwert: data[5] === 1, obererGrenzwert: data[6] === 1, }; } } return result; } catch (error) { console.error("❌ Fehler beim Laden der analogen Eingänge:", error); return null; } };