Bei Kabelbruch (cableBreak), Erdschluss (groundFault), Isolationsfehler (measure1Alarm) oder Schleifenfehler (measure2Alarm) wird der Status rot angezeigt. Ansonsten grün.

This commit is contained in:
ISA
2024-10-23 10:50:55 +02:00
parent 94e749efc1
commit 85bda4323c
17 changed files with 88 additions and 2725 deletions

View File

@@ -1,5 +1,5 @@
#Next.js Webserver, bleibt localhost auf CPL bei production
#NEXT_PUBLIC_API_BASE_URL=http://localhost:3000
#CPL Webserver für die Entwicklung , um Daten von CPL zu bekommen, hat funktioniert auf dem CPL selbst
NEXT_PUBLIC_API_BASE_URL=https://10.10.0.118:443
#NEXT_PUBLIC_API_BASE_URL=https://10.10.0.118:443
#NEXT_PUBLIC_API_BASE_URL=http://localhost:3000

View File

@@ -1,330 +0,0 @@
// app/api/mockData.js
// Letzte 20 Meldungen für dashboard.html Start.acp
var last20Messages = `<tr><td>14135</td><td>01701</td><td>2024-10-16 11:56:32:000</td><td>Modul 08 Isofehler kommend</td><td>1</td></tr><tr><td>14134</td><td>01001</td><td>2024-10-16 11:54:48:000</td><td>Modul 01 Isofehler gehend</td><td>0</td></tr><tr><td>14133</td><td>01001</td><td>2024-10-16 11:52:35:000</td><td>Modul 01 Isofehler kommend</td><td>1</td></tr><tr><td>14132</td><td>01701</td><td>2024-10-16 11:49:33:000</td><td>Modul 08 Isofehler gehend</td><td>0</td></tr><tr><td>14131</td><td>01001</td><td>2024-10-16 11:39:48:000</td><td>Modul 01 Isofehler gehend</td><td>0</td></tr><tr><td>14130</td><td>01701</td><td>2024-10-16 11:38:56:000</td><td>Modul 08 Isofehler kommend</td><td>1</td></tr><tr><td>14129</td><td>01001</td><td>2024-10-16 11:32:53:000</td><td>Modul 01 Isofehler kommend</td><td>1</td></tr><tr><td>14128</td><td>01701</td><td>2024-10-16 11:31:52:000</td><td>Modul 08 Isofehler gehend</td><td>0</td></tr><tr><td>14127</td><td>01701</td><td>2024-10-16 11:26:28:000</td><td>Modul 08 Isofehler kommend</td><td>1</td></tr><tr><td>14126</td><td>01701</td><td>2024-10-16 11:13:09:000</td><td>Modul 08 Isofehler gehend</td><td>0</td></tr><tr><td>14125</td><td>01701</td><td>2024-10-16 10:45:18:000</td><td>Modul 08 Isofehler kommend</td><td>1</td></tr><tr><td>14124</td><td>01701</td><td>2024-10-16 10:34:39:000</td><td>Modul 08 Isofehler gehend</td><td>0</td></tr><tr><td>14123</td><td>01005</td><td>2024-10-16 10:28:40:000</td><td>Modul 01 TDR Funktion eingeschaltet</td><td>1</td></tr><tr><td>14122</td><td>01101</td><td>2024-10-16 10:10:20:000</td><td>Modul 02 Isofehler gehend</td><td>0</td></tr><tr><td>14121</td><td>01101</td><td>2024-10-16 10:10:16:000</td><td>Modul 02 Isofehler kommend</td><td>1</td></tr><tr><td>14120</td><td>01101</td><td>2024-10-16 10:07:54:000</td><td>Modul 02 Isofehler gehend</td><td>0</td></tr><tr><td>14119</td><td>01101</td><td>2024-10-16 10:07:19:000</td><td>Modul 02 Isofehler kommend</td><td>1</td></tr><tr><td>14118</td><td>01001</td><td>2024-10-16 10:03:39:000</td><td>Modul 01 Isofehler gehend</td><td>0</td></tr><tr><td>14117</td><td>01701</td><td>2024-10-16 10:01:52:000</td><td>Modul 08 Isofehler kommend</td><td>1</td></tr><tr><td>14116</td><td>01101</td><td>2024-10-16 09:59:04:000</td><td>Modul 02 Isofehler gehend</td><td>0</td></tr>`;
//System.acp
var deviceName = "CPLV4_ISM";
var mac1 = "0 48 86 81 46 157";
var mac2 = "0 48 86 81 46 158";
var ip = "10.10.0.118";
var subnet = "255.255.255.0";
var gateway = "10.10.0.1";
var datetime = "16.10.24 12:09:40 Uhr";
//de.acp
var de = [
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0,
];
var counter = [
0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0,
0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0,
0.0, 0.0,
];
var flutter = [
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0,
];
//kueConfig.acp
var kueOnline = [
1, 1, 1, 1, 1, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0,
];
var kueID = [
"FTZ_2",
"B23",
"Kabel 3",
"Kabel 4",
"Kabel 5",
"Kabel 6",
"FTZ4562",
"Kabel 8",
"12344",
"Kabel 10",
"Kabel 11",
"Kabel 12",
"Kabel 13",
"Kabel 14",
"Kabel 15",
"H56-77",
"Kabel 17",
"Kabel 18",
"Kabel 19",
"Kabel 20",
"Kabel 21",
"Kabel 22",
"Kabel 23",
"Kabel 24",
"Kabel 25",
"Kabel 26",
"Kabel 27",
"Kabel 28",
"Kabel 29",
"Kabel 30",
"Kabel 31",
"Kabel 32",
];
var kueIso = [
10.0, 10.0, 10.0, 10.0, 10.0, 0.0, 0.0, 10.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0,
0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0,
0.0, 0.0, 0.0,
];
//kueDetail.acp
var kueOnline = [
1, 1, 1, 1, 1, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0,
];
var kueIso = [
10.0, 10.0, 10.0, 10.0, 10.0, 0.0, 0.0, 10.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0,
0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0,
0.0, 0.0, 0.0,
];
var kueValid = [
1, 1, 1, 1, 1, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0,
];
var kueAlarm1 = [
0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0,
];
var kueAlarm2 = [
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0,
];
var kueRes = [
3.698, 3.669, 3.714, 3.659, 3.673, 0.0, 0.0, 3.72, 0.0, 0.0, 0.0, 0.0, 0.0,
0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0,
0.0, 0.0, 0.0, 0.0,
];
var kueCableBreak = [
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0,
];
var kueGroundFault = [
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0,
];
var kueLimit1 = [
10.0, 10.0, 10.0, 10.0, 8.0, 0.0, 0.0, 10.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0,
0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0,
0.0, 0.0, 0.0,
];
var kueLimit2Low = [
0.1, 0.1, 0.1, 0.1, 0.1, 0.0, 0.0, 0.1, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0,
0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0,
0.0, 0.0,
];
var kueLimit2High = [
1.0, 1.0, 1.0, 1.0, 1.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0,
0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0,
0.0, 0.0,
];
var kueDelay1 = [
420, 420, 420, 420, 420, 0, 0, 420, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
];
var kueLoopInterval = [
6, 6, 6, 6, 6, 0, 0, 6, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0,
];
var kueID = [
"FTZ_2",
"B23",
"Kabel 3",
"Kabel 4",
"Kabel 5",
"Kabel 6",
"FTZ4562",
"Kabel 8",
"12344",
"Kabel 10",
"Kabel 11",
"Kabel 12",
"Kabel 13",
"Kabel 14",
"Kabel 15",
"H56-77",
"Kabel 17",
"Kabel 18",
"Kabel 19",
"Kabel 20",
"Kabel 21",
"Kabel 22",
"Kabel 23",
"Kabel 24",
"Kabel 25",
"Kabel 26",
"Kabel 27",
"Kabel 28",
"Kabel 29",
"Kabel 30",
"Kabel 31",
"Kabel 32",
];
var kueVersion = [
419, 419, 419, 419, 419, 0, 0, 419, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
];
var kueName = [
"Kabel_2",
"Petersfehn",
"Kabel 3",
"Kabel 4",
"Kabel 5",
"Kabel 6",
"Melanie",
"Kabel 8",
"Merle",
"Kabel 10",
"Kabel 11",
"Kabel 12",
"Kabel 13",
"Kabel 14",
"Kabel 15",
"Daniela",
"Kabel 17",
"Kabel 18",
"Kabel 19",
"Kabel 20",
"Kabel 21",
"Kabel 22",
"Kabel 23",
"Kabel 24",
"Kabel 25",
"Kabel 26",
"Kabel 27",
"Kabel 28",
"Kabel 29",
"Kabel 30",
"Kabel 31",
"Kabel 32",
];
var tdrAtten = [
2.0, 2.0, 2.0, 2.0, 2.0, 0.0, 0.0, 2.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0,
0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0,
0.0, 0.0,
];
var tdrPulse = [
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0,
];
var tdrSpeed = [
100, 100, 100, 100, 100, 0, 0, 100, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
];
var tdrAmp = [
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0,
];
var tdrTrigger = [
80, 80, 80, 80, 80, 0, 0, 80, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
];
var tdrLocation = [
5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0,
];
var tdrActive = [
1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0,
];
var kueOverflow = [
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0,
];
var kue100V = [
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0,
];
var kueResidence = [
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0,
];
var tdrLastMeasurement = [
"2024-10-16 10:29:28:000",
"2024-09-30 08:38:50:000",
"?",
"?",
"?",
"?",
"?",
"?",
"2024-09-30 08:36:43:000",
"?",
"?",
"?",
"?",
"?",
"?",
"?",
"?",
"?",
"?",
"?",
"?",
"?",
"?",
"?",
"?",
"?",
"?",
"?",
"?",
"?",
"?",
"?",
];
var kueBooting = [
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0,
];
export default function handler(req, res) {
res.status(200).json({
last20Messages: last20Messages,
deviceName: deviceName,
mac1: mac1,
mac2: mac2,
ip: ip,
subnet: subnet,
gateway: gateway,
datetime: datetime,
de: de,
counter: counter,
flutter: flutter,
kueOnline: kueOnline,
kueID: kueID,
kueIso: kueIso,
kueValid: kueValid,
kueAlarm1: kueAlarm1,
kueAlarm2: kueAlarm2,
kueRes: kueRes,
kueCableBreak: kueCableBreak,
kueGroundFault: kueGroundFault,
kueLimit1: kueLimit1,
kueLimit2Low: kueLimit2Low,
kueLimit2High: kueLimit2High,
kueDelay1: kueDelay1,
kueLoopInterval: kueLoopInterval,
kueName: kueName,
tdrAtten: tdrAtten,
tdrPulse: tdrPulse,
tdrSpeed: tdrSpeed,
tdrAmp: tdrAmp,
tdrTrigger: tdrTrigger,
tdrLocation: tdrLocation,
tdrActive: tdrActive,
kueOverflow: kueOverflow,
kue100V: kue100V,
kueResidence: kueResidence,
tdrLastMeasurement: tdrLastMeasurement,
kueBooting: kueBooting,
});
}

View File

@@ -1,419 +0,0 @@
// Datei: pages/api/server.js
// Platzhalter-Objekt zur Ersetzung in den Skripten
const placeholders = {
// Bestehende Platzhalter
"<%=IS%>": "CPLV35ISMAIL",
"<%=VHW%>": "CPL V3",
//"<%=CS0%>": "5.1.1.0 C-24-KA, CPLV35ISMAIL", alte Version
"<%=IP%>": "10.10.0.225, 255.255.255.0, 10.10.0.1",
"<%=CA0%>": "223, 0, 7, 0, 10.10.0.22, 0",
"<%=LI1%>": "1",
"<%=LI2%>": "1",
"<%=LI3%>": "0",
"<%=LI4%>": "0",
"<%=LI5%>": "1",
"<%=LI6%>": "1",
"<%=LI7%>": "0",
"<%=LI8%>": "0",
"<%=CE0%>": "0",
"<%=Ox%>": "0,0,0",
// last20Messages
"<%=SAM01%>":
"<tr><td>00985</td><td>02501</td><td>2024-09-18 07:40:39:000</td><td>Modul 16 Isofehler gehend</td><td>0</td></tr>" +
"<tr><td>00984</td><td>02501</td><td>2024-09-18 07:40:35:000</td><td>Modul 16 Isofehler kommend</td><td>1</td></tr>" +
"<tr><td>00983</td><td>02400</td><td>2024-09-18 07:39:17:000</td><td>Modul 15 Aderbruch kommend</td><td>1</td></tr>" +
"<tr><td>00982</td><td>01000</td><td>2024-09-18 07:38:49:000</td><td>Modul 01 Aderbruch kommend</td><td>1</td></tr>" +
"<tr><td>00981</td><td>00108</td><td>2024-09-18 07:38:44:000</td><td>Dig. Eingang 09 kommend</td><td>1</td></tr>" +
"<tr><td>00980</td><td>00101</td><td>2024-09-18 07:38:44:000</td><td>Dig. Eingang 02 kommend</td><td>1</td></tr>" +
"<tr><td>00979</td><td>00100</td><td>2024-09-18 07:38:44:000</td><td>Dig. Eingang 01 kommend</td><td>1</td></tr>" +
"<tr><td>00978</td><td>02501</td><td>2024-09-17 16:40:55:000</td><td>Modul 16 Isofehler gehend</td><td>0</td></tr>" +
"<tr><td>00977</td><td>02501</td><td>2024-09-17 16:40:51:000</td><td>Modul 16 Isofehler kommend</td><td>1</td></tr>" +
"<tr><td>00976</td><td>02501</td><td>2024-09-17 16:25:55:000</td><td>Modul 16 Isofehler gehend</td><td>0</td></tr>" +
"<tr><td>00975</td><td>02501</td><td>2024-09-17 16:25:51:000</td><td>Modul 16 Isofehler kommend</td><td>1</td></tr>" +
"<tr><td>00974</td><td>02501</td><td>2024-09-17 16:10:57:000</td><td>Modul 16 Isofehler gehend</td><td>0</td></tr>" +
"<tr><td>00973</td><td>02501</td><td>2024-09-17 16:10:53:000</td><td>Modul 16 Isofehler kommend</td><td>1</td></tr>" +
"<tr><td>00972</td><td>00127</td><td>2024-09-17 16:05:51:000</td><td>Dig. Eingang 28 gehend</td><td>0</td></tr>" +
"<tr><td>00971</td><td>00126</td><td>2024-09-17 16:05:51:000</td><td>Dig. Eingang 27 gehend</td><td>0</td></tr>" +
"<tr><td>00970</td><td>00125</td><td>2024-09-17 16:05:51:000</td><td>Dig. Eingang 26 gehend</td><td>0</td></tr>" +
"<tr><td>00969</td><td>00124</td><td>2024-09-17 16:05:51:000</td><td>Dig. Eingang 25 gehend</td><td>0</td></tr>" +
"<tr><td>00968</td><td>00123</td><td>2024-09-17 16:05:50:000</td><td>Dig. Eingang 24 gehend</td><td>0</td></tr>" +
"<tr><td>00967</td><td>00122</td><td>2024-09-17 16:05:50:000</td><td>Dig. Eingang 23 gehend</td><td>0</td></tr>" +
"<tr><td>00966</td><td>00121</td><td>2024-09-17 16:05:50:000</td><td>Dig. Eingang 22 gehend</td><td>0</td></tr>",
// deviceName
"<%=SAN01%>": "CPLV4_ISM",
// mac1
"<%=SEM01%>": "0 48 86 81 46 157",
// mac2
"<%=SEM02%>": "0 48 86 81 46 158",
// ip
"<%=SEI01%>": "10.10.0.118",
// subnet
"<%=SES01%>": "255.255.255.0",
// gateway
"<%=SEG01%>": "10.10.0.1",
// datetime
"<%=SCL01%>": "09.01.00 04:05:24 Uhr",
// digitaler Eingänge de
"<%=DES80%>": "1, 0, 0, 0, 0, 0, 0, 0",
"<%=DES81%>": "0, 0, 0, 0, 0, 0, 0, 0",
"<%=DES82%>": "0, 0, 0, 0, 0, 0, 0, 0",
"<%=DES83%>": "0, 0, 0, 0, 0, 0, 0, 0",
//counter
"<%=DEC80%>": "0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0",
"<%=DEC81%>": "0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0",
"<%=DEC82%>": "0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0",
"<%=DEC83%>": "0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0",
//flutter
"<%=DEF80%>": "0, 0, 0, 0, 0, 0, 0, 0",
"<%=DEF81%>": "0, 0, 0, 0, 0, 0, 0, 0",
"<%=DEF82%>": "0, 0, 0, 0, 0, 0, 0, 0",
"<%=DEF83%>": "0, 0, 0, 0, 0, 0, 0, 0",
//kueOnline
"<%=KSO80%>": "1, 1, 1, 1, 1, 1, 1, 1",
"<%=KSO81%>": "1, 1, 1, 1, 1, 1, 1, 1",
"<%=KSO82%>": "1, 1, 1, 1, 1, 1, 1, 1",
"<%=KSO83%>": "1, 1, 1, 1, 1, 1, 1, 1",
/*
//kueID
"<%=KSI80%>":
"Kleefeld, Michael, Oldenburg, Modul 4, Modul 5, Hamburg, Modul 7, Slot 8",
"<%=KSI81%>":
"Modul 9, Modul 10, Modul 11, Modul 12, Modul 13, Modul 14, Modul 15, Modul 16",
"<%=KSI82%>":
"Modul 17, Modul 18, Modul 19, Modul 20, Modul 21, Modul 22, Modul 23, Modul 24",
"<%=KSI83%>":
"Modul 25, Modul 26, Modul 27, Modul 28, Modul 29, Modul 30, Modul 31, Modul 32",
*/
//kueID
"<%=KSI80%>": "1, 2, 3, 4, 5, 6, 7, 8",
"<%=KSI81%>": "9, 10, 11, 12, 13, 14, 15, 16",
"<%=KSI82%>": "17, 18, 19, 20, 21, 22, 23, 24",
"<%=KSI83%>": "25, 26, 27, 28, 29, 30, 31, 32",
//var kueName=[<%=KSA80%>,<%=KSA81%>,<%=KSA82%>,<%=KSA83%>];
"<%=KSA80%>": "Rastede, Test2, Oldenburg, Test4, KUE5, KUE6, KUE7, KUE8",
"<%=KSA81%>": ", , , , , , , ",
"<%=KSA82%>": ", , , , , , , ",
"<%=KSA83%>": ", , , , , , , ",
//kueIso
"<%=KIM80%>": "200, 200, 200, 200, 10, 10, 0, 10",
"<%=KIM81%>": "0, 0, 0, 0, 0, 0, 0, 0",
"<%=KIM82%>": "0, 0, 0, 0, 0, 0, 0, 0",
"<%=KIM83%>": "0, 0, 0, 0, 0, 0, 0, 0",
// kueValid
"<%=KIV80%>": "1, 1, 1, 1, 1, 1, 1, 1",
"<%=KIV81%>": "0, 0, 0, 0, 0, 0, 0, 0",
"<%=KIV82%>": "0, 0, 0, 0, 0, 0, 0, 0",
"<%=KIV83%>": "0, 0, 0, 0, 0, 0, 0, 0",
// kueAlarm1
"<%=KIA80%>": "0, 0, 0, 0, 0, 0, 0, 1",
"<%=KIA81%>": "0, 0, 0, 0, 0, 0, 0, 0",
"<%=KIA82%>": "0, 0, 0, 0, 0, 0, 0, 0",
"<%=KIA83%>": "0, 0, 0, 0, 0, 0, 0, 0",
// kueAlarm2
"<%=KRA80%>": "0, 0, 0, 0, 0, 0, 0, 0",
"<%=KRA81%>": "0, 0, 0, 0, 0, 0, 0, 0",
"<%=KRA82%>": "0, 0, 0, 0, 0, 0, 0, 0",
"<%=KRA83%>": "0, 0, 0, 0, 0, 0, 0, 0",
// kueRes
"<%=KRM80%>": "65, 65, 65, 65, .3.676, 3.599, 0, 3..714",
"<%=KRM81%>": "0, 0, 0, 0, 0, 0, 0, 0",
"<%=KRM82%>": "0, 0, 0, 0, 0, 0, 0, 0",
"<%=KRM83%>": "0, 0, 0, 0, 0, 0, 0, 0",
// kueCableBreak
"<%=KSC80%>": "1, 1, 1, 1, 0, 0, 0, 0",
"<%=KSC81%>": "0, 0, 0, 0, 0, 0, 0, 0",
"<%=KSC82%>": "0, 0, 0, 0, 0, 0, 0, 0",
"<%=KSC83%>": "0, 0, 0, 0, 0, 0, 0, 0",
// kueGroundFault
"<%=KSG80%>": "0, 0, 0, 0, 0, 0, 0, 0",
"<%=KSG81%>": "0, 0, 0, 0, 0, 0, 0, 0",
"<%=KSG82%>": "0, 0, 0, 0, 0, 0, 0, 0",
"<%=KSG83%>": "0, 0, 0, 0, 0, 0, 0, 0",
// kueLimit1
"<%=KIG80%>": "10, 10, 10, 10, 8, 0.6, 0, 999.9",
"<%=KIG81%>": "0, 0, 0, 0, 0, 0, 0, 0",
"<%=KIG82%>": "0, 0, 0, 0, 0, 0, 0, 0",
"<%=KIG83%>": "0, 0, 0, 0, 0, 0, 0, 0",
// kueLimit2Low
"<%=KRG80%>": "0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0, 0.1",
"<%=KRG81%>": "0, 0, 0, 0, 0, 0, 0, 0",
"<%=KRG82%>": "0, 0, 0, 0, 0, 0, 0, 0",
"<%=KRG83%>": "0, 0, 0, 0, 0, 0, 0, 0",
// kueLimit2High
"<%=KRH80%>": "1, 1, 1, 1, 1, 1, 0, 1",
"<%=KRH81%>": "0, 0, 0, 0, 0, 0, 0, 0",
"<%=KRH82%>": "0, 0, 0, 0, 0, 0, 0, 0",
"<%=KRH83%>": "0, 0, 0, 0, 0, 0, 0, 0",
// kueDelay1
"<%=KID80%>": "420, 420, 420, 420, 420, 420, 0, 420",
"<%=KID81%>": "0, 0, 0, 0, 0, 0, 0, 0",
"<%=KID82%>": "0, 0, 0, 0, 0, 0, 0, 0",
"<%=KID83%>": "0, 0, 0, 0, 0, 0, 0, 0",
// kueLoopInterval
"<%=KRI80%>": "6, 6, 6, 6, 6, 0, 0, 6",
"<%=KRI81%>": "0, 0, 0, 0, 0, 0, 0, 0",
"<%=KRI82%>": "0, 0, 0, 0, 0, 0, 0, 0",
"<%=KRI83%>": "0, 0, 0, 0, 0, 0, 0, 0",
// kueVersion
"<%=KIV80%>": "419, 419, 419, 419, 419, 419, 419, 419",
"<%=KIV81%>": "419, 419, 419, 419, 419, 419, 419, 419",
"<%=KIV82%>": "419, 419, 419, 419, 419, 419, 419, 419",
"<%=KIV83%>": "419, 419, 419, 419, 419, 419, 419, 419",
// tdrAtten
"<%=KTD80%>": "2, 2, 2, 2, 2, 0, 0, 2",
"<%=KTD81%>": "0, 0, 0, 0, 0, 0, 0, 0",
"<%=KTD82%>": "0, 0, 0, 0, 0, 0, 0, 0",
"<%=KTD83%>": "0, 0, 0, 0, 0, 0, 0, 0",
// tdrPulse
"<%=KTP80%>": "0, 0, 0, 0, 0, 0, 0, 0",
"<%=KTP81%>": "0, 0, 0, 0, 0, 0, 0, 0",
"<%=KTP82%>": "0, 0, 0, 0, 0, 0, 0, 0",
"<%=KTP83%>": "0, 0, 0, 0, 0, 0, 0, 0",
// tdrSpeed
"<%=KTS80%>": "100, 100, 100, 100, 100, 0, 0, 100",
"<%=KTS81%>": "0, 0, 0, 0, 0, 0, 0, 0",
"<%=KTS82%>": "0, 0, 0, 0, 0, 0, 0, 0",
"<%=KTS83%>": "0, 0, 0, 0, 0, 0, 0, 0",
// tdrAmp
"<%=KTA80%>": "0, 0, 0, 0, 0, 0, 0, 0",
"<%=KTA81%>": "0, 0, 0, 0, 0, 0, 0, 0",
"<%=KTA82%>": "0, 0, 0, 0, 0, 0, 0, 0",
"<%=KTA83%>": "0, 0, 0, 0, 0, 0, 0, 0",
// tdrTrigger
"<%=KTE80%>": "80, 80, 80, 80, 80, 0, 0, 80",
"<%=KTE81%>": "0, 0, 0, 0, 0, 0, 0, 0",
"<%=KTE82%>": "0, 0, 0, 0, 0, 0, 0, 0",
"<%=KTE83%>": "0, 0, 0, 0, 0, 0, 0, 0",
// tdrLocation
"<%=KTF80%>": "0, 0, 0, 0, 0, 0, 0, 0",
"<%=KTF81%>": "0, 0, 0, 0, 0, 0, 0, 0",
"<%=KTF82%>": "0, 0, 0, 0, 0, 0, 0, 0",
"<%=KTF83%>": "0, 0, 0, 0, 0, 0, 0, 0",
// tdrActive
"<%=KTX80%>": "0, 0, 0, 0, 0, 0, 0, 0",
"<%=KTX81%>": "0, 0, 0, 0, 0, 0, 0, 0",
"<%=KTX82%>": "0, 0, 0, 0, 0, 0, 0, 0",
"<%=KTX83%>": "0, 0, 0, 0, 0, 0, 0, 0",
// kueOverflow
"<%=KIW80%>": "1, 1, 1, 1, 0, 0, 0, 0",
"<%=KIW81%>": "0, 0, 0, 0, 0, 0, 0, 0",
"<%=KIW82%>": "0, 0, 0, 0, 0, 0, 0, 0",
"<%=KIW83%>": "0, 0, 0, 0, 0, 0, 0, 0",
// kue100V
"<%=KSS80%>": "0, 0, 0, 0, 0, 0, 0, 0",
"<%=KSS81%>": "0, 0, 0, 0, 0, 0, 0, 0",
"<%=KSS82%>": "0, 0, 0, 0, 0, 0, 0, 0",
"<%=KSS83%>": "0, 0, 0, 0, 0, 0, 0, 0",
// kueResidence
"<%=KSN80%>": "0, 0, 0, 0, 0, 0, 0, 0",
"<%=KSN81%>": "0, 0, 0, 0, 0, 0, 0, 0",
"<%=KSN82%>": "0, 0, 0, 0, 0, 0, 0, 0",
"<%=KSN83%>": "0, 0, 0, 0, 0, 0, 0, 0",
// tdrLastMeasurement
"<%=KTL80%>": "03.09.24 12:28:15, 03.09.24 12:28:04, ?, ?, ?, ?, ?, ?",
"<%=KTL81%>": "?, ?, ?, ?, ?, ?, ?, ?",
"<%=KTL82%>": "?, ?, ?, ?, ?, ?, ?, ?",
"<%=KTL83%>": "?, ?, ?, ?, ?, ?, ?, ?",
// kueBooting
"<%=KSB80%>": "0, 0, 0, 0, 0, 0, 0, 0",
"<%=KSB81%>": "0, 0, 0, 0, 0, 0, 0, 0",
"<%=KSB82%>": "0, 0, 0, 0, 0, 0, 0, 0",
"<%=KSB83%>": "0, 0, 0, 0, 0, 0, 0, 0",
//--------------------alte Platzhalter--------------------
//status
"<%=KS%>":
"0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,1,0,1,1,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,0,0,0,0,0,0,1,1,0,0,0,0,0,0,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,0,0,0,0,0,0,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0", //status
"<%=KE%>":
"4873,0,0,0,0,2,65535,0,65535,64010,64010,0,0,5717,64010,0,0,0,0,0,0,0,0,0,0", //Schleifenwiderstand
"<%=KX%>": "0,0,0,0,0,0,0,0,1,0,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0", //status2
"<%=KY%>": "1,1,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0", //status3
"<%=KF%>": "0,0,0,0,0,0,0,0,0,0,0,0,0,0,0", //TDR Entfernung
"<%=KC%>":
"'100','100','0','0','0','0','1','1','0','0','0','0','0','0','0','0','0','0','0','0','0','0','0','0'", //TDR speed
"<%=KW%>":
"2000,100,420,0,100,420,0,100,420,0,100,1,0,100,420,55,160,26,0,100,420,0,100,420,2000,300,420,20100,100,420,20100,120,120,0,100,420,0,100,420,2000,100,420,20100,100,420,0,100,420,0,0,0,0,0,0,0,0,0,0,0,0,0,0", //Isolationswiderstand
//Schleifengrenzwert
"<%=KB0%>":
" 20,2540, 0, 0, 10, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0", //Schleifengrenzwert
"<%=KA%>":
"0,1,2,3,4,5,6,7,8,9,10,255,255,255,255,255,255,255,255,255,255,255,255,255", //Adresse Steckplatz fängt von 0 an
"<%=KV%>": "419,419,419,419,419,419,419,419,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0", //Version version /100
//Beschreibungstext
"<%=P90%>":
"'kue1std','kue2std','kue3std','kue4std','kue5std','kue6std','kue7std','kue8std','kue9std','kue10std','kue11std','kue12std','kue13std','kue14std','kue15std','kue16std','kue17std','kue18std','kue19std','kue20std','kue21std','kue22std','kue23std','kue24std','kue25std','kue26std','kue27std','kue28std','kue29std','kue30std','kue31std','kue32std'", //Beschreibungstext
//vorhandene Slots
"<%=KN%>": "'32'", //vorhandene Slots
"<%=KO%>": "8,8,8,8", // slotKonfig
//werte // Enthält Isolationsgrenzwert und Meldeverzögerung
"<%=KK0%>":
"70,420,'nv','','nv','',100,1,'nv','',160,26,100,420,'nv','',300,420,100,420,120,120,'nv','','nv','',100,420,100,420,'nv','','nv','','nv','','nv','','nv','','nv','','nv','','nv','','nv'",
// Störungsunterdrückung ja = 0 / nein = 1
"<%=P91%>": "1,1,0,1,1,0,1,1,0,0,0,0,0,0,0,0,0,0,0,0",
"<%=P93%>": "4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0", // Logger 0 bis 7 = 0 - 60 min
"<%=P01%>": "1,2,5,10,15,30,60,0,0,0", // intervall
"<%=P92%>": "-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,0,0,0,0,0,0,0,0", // behandlung
// kvz
"<%=K#%>":
"0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
// c_cpl ['5.1.2.3 C-24-KA-32DB']
"<%=OC%>": "''5.1.2.3 C-24-KA-32DB'", // c_cpl
//c_kue_adr
"<%=OA%>":
"'1', '2', '3', '4', '5', '6', '7', '8', '9', '10', '', '0', '0', '14', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0'",
//c_ewk_ver (7) ['0', '0', '0', '0', '0', '0', '0']
"<%=OF%>": "'0', '0', '0', '0', '0', '0', '0'", //c_ewk_ver
// zustandEWK (7) ['0', '0', '0', '0', '0', '0', '0'] <%=OE%>
"<%=OE%>": "'0', '0', '0', '0', '0', '0', '0'", //zustandEWK
// user (5) ['admin', '1', '1', '1', '1'] <%=BS%>
"<%=BS%>": "'admin', '1', '1', '1', '1'", //user
// zustandModem (4) [0, 0, 0, 0] <%=LI3%>,<%=LI4%>,<%=LI7%>,<%=LI8%>
//tdrTntfernung
"<%=KF%>":
"0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0",
//var userStd = "<%=BU%>";
"<%=BU%>": "user",
//-----------------------------------
};
// Funktion zur Ersetzung von Platzhaltern im Skriptinhalt
function replacePlaceholders(content, placeholders) {
for (const key in placeholders) {
const value = placeholders[key];
const regex = new RegExp(key, "g");
content = content.replace(regex, value);
}
return content;
}
// API-Handler für alle Anfragen
export default function handler(req, res) {
// Array mit erlaubten Ursprüngen
const allowedOrigins = ["http://localhost:3001", "http://localhost:3002"];
const origin = req.headers.origin;
// Überprüfen, ob die Ursprungsadresse in der Liste der erlaubten Ursprünge ist
if (allowedOrigins.includes(origin)) {
res.setHeader("Access-Control-Allow-Origin", origin);
} else {
res.setHeader("Access-Control-Allow-Origin", "*"); // Erlaubt alle Ursprünge (optional)
}
res.setHeader(
"Access-Control-Allow-Methods",
"GET, POST, PUT, DELETE, OPTIONS"
);
res.setHeader("Access-Control-Allow-Headers", "Content-Type, Authorization");
// Überprüfen, ob 'OPTIONS' Anfragen gesendet werden, um Preflight-Anfragen zu verarbeiten
if (req.method === "OPTIONS") {
return res.status(200).end();
}
const { query } = req;
// Überprüfen, ob 'last20Messages.acp' als Parameter übergeben wurde
if (query.hasOwnProperty("last20Messages.acp")) {
let scriptContent = `
//Allgemeine Variablen--------------------------------------
window.last20Messages = "<%=SAM01%>";
//---Name CPL, ID-------------------
window.deviceName = "<%=SAN01%>";
window.mac1 = "<%=SEM01%>";
window.mac2 = "<%=SEM02%>";
window.ip = "<%=SEI01%>";
window.subnet = "<%=SES01%>";
window.gateway = "<%=SEG01%>";
//---Zeitsstempel der internen Uhr--------------------
window.datetime = "<%=SCL01%>";
//--Applikationsversion-------------------
window.appVersion = "<%=SAV01%>";
//---OPCUA--------------------------------------
window.opcuaZustandServer = "<%=SOS01%>";
window.opcuaConnectedUserCount = "<%=SOC01%>";
window.opcuaNodeSet = "<%=SON01%>";
window.ntpActive = "<%=STA%>";
window.ntpServer1Ip = "<%=STP01%>";
window.ntpServer2Ip = "<%=STP01>";
window.ntpServer3Ip = "<%=STP01>";
window.ntpTimezone = "<%=STT01%>";
//Kabelüberwachung Allgemein--------------------------------------
window.de = "<%=DES80%>, <%=DES81%>, <%=DES82%>, <%=DES83%>".split(',').map(Number);
window.counter = "<%=DEC80%>, <%=DEC81%>, <%=DEC82%>, <%=DEC83%>".split(',').map(Number);
window.flutter = "<%=DEF80%>, <%=DEF81%>, <%=DEF82%>, <%=DEF83%>".split(',').map(Number);
window.kueOnline = "<%=KSO80%>, <%=KSO81%>, <%=KSO82%>, <%=KSO83%>".split(',').map(Number);
window.kueID = "<%=KSI80%>, <%=KSI81%>, <%=KSI82%>, <%=KSI83%>".split(',').map(Number);
window.kueName = "<%=KSA80%>, <%=KSA81%>, <%=KSA82%>, <%=KSA83%>".split(',');
window.kueIso = "<%=KIM80%>, <%=KIM81%>, <%=KIM82%>, <%=KIM83%>".split(',').map(Number);
window.kueValid = "<%=KIV80%>, <%=KIV81%>, <%=KIV82%>, <%=KIV83%>".split(',').map(Number);
window.kueAlarm1 = "<%=KIA80%>, <%=KIA81%>, <%=KIA82%>, <%=KIA83%>".split(',').map(Number);
window.kueAlarm2 = "<%=KRA80%>, <%=KRA81%>, <%=KRA82%>, <%=KRA83%>".split(',').map(Number);
window.kueRes = "<%=KRM80%>, <%=KRM81%>, <%=KRM82%>, <%=KRM83%>".split(',').map(Number);
window.kueCableBreak = "<%=KSC80%>, <%=KSC81%>, <%=KSC82%>, <%=KSC83%>".split(',').map(Number);
window.kueGroundFault = "<%=KSG80%>, <%=KSG81%>, <%=KSG82%>, <%=KSG83%>".split(',').map(Number);
window.kueLimit1 = "<%=KIG80%>, <%=KIG81%>, <%=KIG82%>, <%=KIG83%>".split(',').map(Number);
window.kueLimit2Low = "<%=KRG80%>, <%=KRG81%>, <%=KRG82%>, <%=KRG83%>".split(',').map(Number);
window.kueLimit2High = "<%=KRH80%>, <%=KRH81%>, <%=KRH82%>, <%=KRH83%>".split(',').map(Number);
window.kueDelay1 = "<%=KID80%>, <%=KID81%>, <%=KID82%>, <%=KID83%>".split(',').map(Number);
window.kueLoopInterval = "<%=KRI80%>, <%=KRI81%>, <%=KRI82%>, <%=KRI83%>".split(',').map(Number);
window.kueVersion = "<%=KIV80%>, <%=KIV81%>, <%=KIV82%>, <%=KIV83%>".split(',').map(Number);
window.tdrAtten = "<%=KTD80%>, <%=KTD81%>, <%=KTD82%>, <%=KTD83%>".split(',').map(Number);
window.tdrPulse = "<%=KTP80%>, <%=KTP81%>, <%=KTP82%>, <%=KTP83%>".split(',').map(Number);
window.tdrSpeed = "<%=KTS80%>,<%=KTS81%>,<%=KTS82%>,<%=KTS83%>".split(',').map(Number);
window.tdrAmp = "<%=KTA80%>,<%=KTA81%>,<%=KTA82%>,<%=KTA83%>".split(',').map(Number);
window.tdrTrigger = "<%=KTE80%>,<%=KTE81%>,<%=KTE82%>,<%=KTE83%>".split(',').map(Number);
window.tdrLocation = "<%=KTF80%>,<%=KTF81%>,<%=KTF82%>,<%=KTF83%>".split(',').map(Number);
window.tdrActive = "<%=KTX80%>,<%=KTX81%>,<%=KTX82%>,<%=KTX83%>".split(',').map(Number);
window.kueOverflow = "<%=KIW80%>,<%=KIW81%>,<%=KIW82%>,<%=KIW83%>".split(',').map(Number);
window.kue100V = "<%=KSS80%>,<%=KSS81%>,<%=KSS82%>,<%=KSS83%>".split(',').map(Number);
window.kueResidence = "<%=KSN80%>,<%=KSN81%>,<%=KSN82%>,<%=KSN83%>".split(',').map(Number);
window.tdrLastMeasurement = "<%=KTL80%>,<%=KTL81%>,<%=KTL82%>,<%=KTL83%>".split(',');
window.kueBooting = "<%=KSB80%>,<%=KSB81%>,<%=KSB82%>,<%=KSB83%>".split(',').map(Number);
window.status = "<%=KS%>".split(',').map(Number);
window.schleifenwiderstand = "<%=KE%>".split(',').map(Number);
window.status2 = "<%=KX%>".split(',').map(Number);
window.status3 = "<%=KY%>".split(',').map(Number);
window.tdrEntfernung = "<%=KF%>".split(',').map(Number);
window.isolationswiderstand = "<%=KW%>".split(',').map(Number);
window.schleifengrenzwert = "<%=KB0%>".split(',').map(Number);
window.adresse = "<%=KA%>".split(',').map(Number);
//window.version = "<%=KV%>".split(',').map(Number);
window.version ="<%=KIV80%>, <%=KIV81%>, <%=KIV82%>, <%=KIV83%>".split(',').map(Number);
window.beschreibungstext = "<%=P90%>".split(',');
window.slotsCount = "<%=KN%>".split(',').map(Number);
window.slotKonfig = "<%=KO%>".split(',');
window.werte = "<%=KK0%>".split(',').map(Number);
window.stoerung = "<%=P91%>".split(',');
window.logger = "<%=P93%>".split(',');
window.intervall = "<%=P01%>".split(',').map(Number);
window.behandlung = "<%=P02%>".split(',').map(Number);
window.kvz = "<%=K#%>".split(',').map(Number);
window.statusCPL = "<%=LI1%>,<%=LI2%>,<%=LI3%>,<%=LI4%>,<%=LI5%>,<%=LI6%>,<%=LI7%>,<%=LI8%>".split(',').map(Number);
window.c_cpl = "<%=OC%>";
window.c_kue_adr = "<%=OA%>";
window.c_ewk_ver = "<%=OF%>";
window.zustand_acc = "<%=Ox%>";
window.zustandEWK = "<%=OE%>";
window.user = "<%=BS%>";
window.zustandModem = "<%=LI3%>,<%=LI4%>,<%=LI7%>,<%=LI8%>".split(',').map(Number);
window.debugModus = true;
window.userStd = "<%=BU%>";
`;
scriptContent = replacePlaceholders(scriptContent, placeholders);
res.setHeader("Content-Type", "application/javascript");
res.status(200).send(scriptContent);
} else {
res.status(400).send("Invalid query parameter");
}
}

View File

@@ -1,330 +0,0 @@
// app/api/mockData/server.js
// Letzte 20 Meldungen für dashboard.html Start.acp
var last20Messages = `<tr><td>14135</td><td>01701</td><td>2024-10-16 11:56:32:000</td><td>Modul 08 Isofehler kommend</td><td>1</td></tr><tr><td>14134</td><td>01001</td><td>2024-10-16 11:54:48:000</td><td>Modul 01 Isofehler gehend</td><td>0</td></tr><tr><td>14133</td><td>01001</td><td>2024-10-16 11:52:35:000</td><td>Modul 01 Isofehler kommend</td><td>1</td></tr><tr><td>14132</td><td>01701</td><td>2024-10-16 11:49:33:000</td><td>Modul 08 Isofehler gehend</td><td>0</td></tr><tr><td>14131</td><td>01001</td><td>2024-10-16 11:39:48:000</td><td>Modul 01 Isofehler gehend</td><td>0</td></tr><tr><td>14130</td><td>01701</td><td>2024-10-16 11:38:56:000</td><td>Modul 08 Isofehler kommend</td><td>1</td></tr><tr><td>14129</td><td>01001</td><td>2024-10-16 11:32:53:000</td><td>Modul 01 Isofehler kommend</td><td>1</td></tr><tr><td>14128</td><td>01701</td><td>2024-10-16 11:31:52:000</td><td>Modul 08 Isofehler gehend</td><td>0</td></tr><tr><td>14127</td><td>01701</td><td>2024-10-16 11:26:28:000</td><td>Modul 08 Isofehler kommend</td><td>1</td></tr><tr><td>14126</td><td>01701</td><td>2024-10-16 11:13:09:000</td><td>Modul 08 Isofehler gehend</td><td>0</td></tr><tr><td>14125</td><td>01701</td><td>2024-10-16 10:45:18:000</td><td>Modul 08 Isofehler kommend</td><td>1</td></tr><tr><td>14124</td><td>01701</td><td>2024-10-16 10:34:39:000</td><td>Modul 08 Isofehler gehend</td><td>0</td></tr><tr><td>14123</td><td>01005</td><td>2024-10-16 10:28:40:000</td><td>Modul 01 TDR Funktion eingeschaltet</td><td>1</td></tr><tr><td>14122</td><td>01101</td><td>2024-10-16 10:10:20:000</td><td>Modul 02 Isofehler gehend</td><td>0</td></tr><tr><td>14121</td><td>01101</td><td>2024-10-16 10:10:16:000</td><td>Modul 02 Isofehler kommend</td><td>1</td></tr><tr><td>14120</td><td>01101</td><td>2024-10-16 10:07:54:000</td><td>Modul 02 Isofehler gehend</td><td>0</td></tr><tr><td>14119</td><td>01101</td><td>2024-10-16 10:07:19:000</td><td>Modul 02 Isofehler kommend</td><td>1</td></tr><tr><td>14118</td><td>01001</td><td>2024-10-16 10:03:39:000</td><td>Modul 01 Isofehler gehend</td><td>0</td></tr><tr><td>14117</td><td>01701</td><td>2024-10-16 10:01:52:000</td><td>Modul 08 Isofehler kommend</td><td>1</td></tr><tr><td>14116</td><td>01101</td><td>2024-10-16 09:59:04:000</td><td>Modul 02 Isofehler gehend</td><td>0</td></tr>`;
//System.acp
var deviceName = "CPLV4_ISM";
var mac1 = "0 48 86 81 46 157";
var mac2 = "0 48 86 81 46 158";
var ip = "10.10.0.118";
var subnet = "255.255.255.0";
var gateway = "10.10.0.1";
var datetime = "16.10.24 12:09:40 Uhr";
//de.acp
var de = [
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0,
];
var counter = [
0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0,
0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0,
0.0, 0.0,
];
var flutter = [
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0,
];
//kueConfig.acp
var kueOnline = [
1, 1, 1, 1, 1, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0,
];
var kueID = [
"FTZ_2",
"B23",
"Kabel 3",
"Kabel 4",
"Kabel 5",
"Kabel 6",
"FTZ4562",
"Kabel 8",
"12344",
"Kabel 10",
"Kabel 11",
"Kabel 12",
"Kabel 13",
"Kabel 14",
"Kabel 15",
"H56-77",
"Kabel 17",
"Kabel 18",
"Kabel 19",
"Kabel 20",
"Kabel 21",
"Kabel 22",
"Kabel 23",
"Kabel 24",
"Kabel 25",
"Kabel 26",
"Kabel 27",
"Kabel 28",
"Kabel 29",
"Kabel 30",
"Kabel 31",
"Kabel 32",
];
var kueIso = [
10.0, 10.0, 10.0, 10.0, 10.0, 0.0, 0.0, 10.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0,
0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0,
0.0, 0.0, 0.0,
];
//kueDetail.acp
var kueOnline = [
1, 1, 1, 1, 1, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0,
];
var kueIso = [
10.0, 10.0, 10.0, 10.0, 10.0, 0.0, 0.0, 10.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0,
0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0,
0.0, 0.0, 0.0,
];
var kueValid = [
1, 1, 1, 1, 1, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0,
];
var kueAlarm1 = [
0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0,
];
var kueAlarm2 = [
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0,
];
var kueRes = [
3.698, 3.669, 3.714, 3.659, 3.673, 0.0, 0.0, 3.72, 0.0, 0.0, 0.0, 0.0, 0.0,
0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0,
0.0, 0.0, 0.0, 0.0,
];
var kueCableBreak = [
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0,
];
var kueGroundFault = [
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0,
];
var kueLimit1 = [
10.0, 10.0, 10.0, 10.0, 8.0, 0.0, 0.0, 10.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0,
0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0,
0.0, 0.0, 0.0,
];
var kueLimit2Low = [
0.1, 0.1, 0.1, 0.1, 0.1, 0.0, 0.0, 0.1, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0,
0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0,
0.0, 0.0,
];
var kueLimit2High = [
1.0, 1.0, 1.0, 1.0, 1.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0,
0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0,
0.0, 0.0,
];
var kueDelay1 = [
420, 420, 420, 420, 420, 0, 0, 420, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
];
var kueLoopInterval = [
6, 6, 6, 6, 6, 0, 0, 6, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0,
];
var kueID = [
"FTZ_2",
"B23",
"Kabel 3",
"Kabel 4",
"Kabel 5",
"Kabel 6",
"FTZ4562",
"Kabel 8",
"12344",
"Kabel 10",
"Kabel 11",
"Kabel 12",
"Kabel 13",
"Kabel 14",
"Kabel 15",
"H56-77",
"Kabel 17",
"Kabel 18",
"Kabel 19",
"Kabel 20",
"Kabel 21",
"Kabel 22",
"Kabel 23",
"Kabel 24",
"Kabel 25",
"Kabel 26",
"Kabel 27",
"Kabel 28",
"Kabel 29",
"Kabel 30",
"Kabel 31",
"Kabel 32",
];
var kueVersion = [
419, 419, 419, 419, 419, 0, 0, 419, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
];
var kueName = [
"Kabel_2",
"Petersfehn",
"Kabel 3",
"Kabel 4",
"Kabel 5",
"Kabel 6",
"Melanie",
"Kabel 8",
"Merle",
"Kabel 10",
"Kabel 11",
"Kabel 12",
"Kabel 13",
"Kabel 14",
"Kabel 15",
"Daniela",
"Kabel 17",
"Kabel 18",
"Kabel 19",
"Kabel 20",
"Kabel 21",
"Kabel 22",
"Kabel 23",
"Kabel 24",
"Kabel 25",
"Kabel 26",
"Kabel 27",
"Kabel 28",
"Kabel 29",
"Kabel 30",
"Kabel 31",
"Kabel 32",
];
var tdrAtten = [
2.0, 2.0, 2.0, 2.0, 2.0, 0.0, 0.0, 2.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0,
0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0,
0.0, 0.0,
];
var tdrPulse = [
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0,
];
var tdrSpeed = [
100, 100, 100, 100, 100, 0, 0, 100, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
];
var tdrAmp = [
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0,
];
var tdrTrigger = [
80, 80, 80, 80, 80, 0, 0, 80, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0,
];
var tdrLocation = [
5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0,
];
var tdrActive = [
1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0,
];
var kueOverflow = [
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0,
];
var kue100V = [
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0,
];
var kueResidence = [
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0,
];
var tdrLastMeasurement = [
"2024-10-16 10:29:28:000",
"2024-09-30 08:38:50:000",
"?",
"?",
"?",
"?",
"?",
"?",
"2024-09-30 08:36:43:000",
"?",
"?",
"?",
"?",
"?",
"?",
"?",
"?",
"?",
"?",
"?",
"?",
"?",
"?",
"?",
"?",
"?",
"?",
"?",
"?",
"?",
"?",
"?",
];
var kueBooting = [
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0,
];
export default function handler(req, res) {
res.status(200).json({
last20Messages: last20Messages,
deviceName: deviceName,
mac1: mac1,
mac2: mac2,
ip: ip,
subnet: subnet,
gateway: gateway,
datetime: datetime,
de: de,
counter: counter,
flutter: flutter,
kueOnline: kueOnline,
kueID: kueID,
kueIso: kueIso,
kueValid: kueValid,
kueAlarm1: kueAlarm1,
kueAlarm2: kueAlarm2,
kueRes: kueRes,
kueCableBreak: kueCableBreak,
kueGroundFault: kueGroundFault,
kueLimit1: kueLimit1,
kueLimit2Low: kueLimit2Low,
kueLimit2High: kueLimit2High,
kueDelay1: kueDelay1,
kueLoopInterval: kueLoopInterval,
kueName: kueName,
tdrAtten: tdrAtten,
tdrPulse: tdrPulse,
tdrSpeed: tdrSpeed,
tdrAmp: tdrAmp,
tdrTrigger: tdrTrigger,
tdrLocation: tdrLocation,
tdrActive: tdrActive,
kueOverflow: kueOverflow,
kue100V: kue100V,
kueResidence: kueResidence,
tdrLastMeasurement: tdrLastMeasurement,
kueBooting: kueBooting,
});
}

View File

@@ -13,7 +13,6 @@ import XioPM2Status from "../../components/modulesStatus/XioPM2Status";
import { Icon } from "@iconify/react";
function Dashboard() {
//const apiUrl = process.env.NEXT_PUBLIC_API_BASE_URL;
const [isClient, setIsClient] = useState(false);
const [last20Messages, setLast20Messages] = useState([]);
@@ -25,21 +24,10 @@ function Dashboard() {
const [error, setError] = useState(null);
const [kueCableBreak, setKueCableBreak] = useState([]);
const [appVersion, setAppVersion] = useState("");
const [apiUrl, setApiUrl] = useState("");
/* useEffect(() => {
setIsClient(true);
if (typeof window !== "undefined") {
setApiUrl(`https://${window.ip}:443`);
}
}, []); */
/* if (!isClient) {
return null; // or a loading spinner
} */
//const apiUrl = `https://${ip}:443`;
useEffect(() => {
if (typeof window !== "undefined") {
loadWindowVariables(apiUrl)
loadWindowVariables()
.then(() => {
if (window.last20Messages) {
const parsedMessages = parseMessages(window.last20Messages);
@@ -48,7 +36,6 @@ function Dashboard() {
setSubnet(window.subnet);
setGateway(window.gateway);
setAppVersion(window.appVersion);
setApiUrl(`https://${window.ip}:443`);
} else {
console.error("Konnte last20Messages nicht finden.");
setError("Konnte last20Messages nicht finden.");
@@ -61,9 +48,9 @@ function Dashboard() {
setLoading(false);
});
}
}, [apiUrl]);
}, []);
useEffect(() => {
loadWindowVariables(apiUrl)
loadWindowVariables()
.then(() => {
if (window.kueCableBreak && Array.isArray(window.kueCableBreak)) {
// Prüfe, ob window.kueCableBreak ein Array ist
@@ -88,7 +75,7 @@ function Dashboard() {
setError(error);
setLoading(false);
});
}, [apiUrl]);
}, []);
const parseMessages = (messages) => {
messages = messages
@@ -110,7 +97,7 @@ function Dashboard() {
});
};
useEffect(() => {
loadWindowVariables(apiUrl)
loadWindowVariables()
.then(() => {
console.log("kueOnline Data: ", window.kueOnline); // Debug: Ausgabe von kueOnline
@@ -133,35 +120,74 @@ function Dashboard() {
setError(error);
setLoading(false);
});
}, [apiUrl]);
}, []);
useEffect(() => {
loadWindowVariables()
.then(() => {
// Debug-Ausgaben für kueAlarm1 und kueAlarm2
console.log("kueAlarm1 Data: ", window.kueAlarm1);
console.log("kueAlarm2 Data: ", window.kueAlarm2);
if (window.kueAlarm1 && Array.isArray(window.kueAlarm1)) {
console.log("kueAlarm1 ist ein Array:", window.kueAlarm1);
} else {
console.error("kueAlarm1 ist kein Array oder nicht definiert.");
setError(
"Konnte kueAlarm1 nicht finden oder es ist kein gültiges Array."
);
}
if (window.kueAlarm2 && Array.isArray(window.kueAlarm2)) {
console.log("kueAlarm2 ist ein Array:", window.kueAlarm2);
} else {
console.error("kueAlarm2 ist kein Array oder nicht definiert.");
setError(
"Konnte kueAlarm2 nicht finden oder es ist kein gültiges Array."
);
}
})
.catch((error) => {
console.error("Fehler beim Laden des Skripts:", error);
setError(error);
});
}, []);
// Dashboard.jsx (Abschnitt renderBaugruppentraeger)
const renderBaugruppentraeger = () => {
const baugruppen = [];
const numBaugruppen = Math.ceil(kueOnline.length / 8);
for (let i = 0; i < numBaugruppen; i++) {
const slots = kueOnline.slice(i * 8, (i + 1) * 8);
baugruppen.push(
<div key={i} className="flex bg-white shadow-md rounded-lg">
<div key={i} className="flex bg-white shadow-md rounded-lg mb-4">
<div className="flex gap-1">
{slots.map((version, index) => {
const slotNumber = i * 8 + index + 1;
// Verwende window.kueVersion[slotNumber - 1] für die Modulversion
const moduleVersion = window.kueVersion
? window.kueVersion[slotNumber - 1]
: version;
// Überprüfe die Bedingungen für kueAlarm1, kueAlarm2 und kueCableBreak
const hasAlarm1 = kueAlarm1.includes(slotNumber);
const hasAlarm2 = kueAlarm2.includes(slotNumber);
const hasCableBreak = kueCableBreak.includes(slotNumber);
// Setze die Klasse für rote Färbung, wenn ein Alarm oder Kabelbruch vorhanden ist
const alarmClass =
hasAlarm1 || hasAlarm2 || hasCableBreak
? "bg-red-500"
: "bg-white";
return (
<KabelModulStatus
key={slotNumber}
slot={slotNumber}
isOnline={version !== 0} // Prüfen, ob ein Modul online ist
moduleVersion={moduleVersion} // Modulversion aus window.kueVersion oder fallback auf version
moduleVersion={moduleVersion}
kueCableBreak={kueCableBreak}
className={alarmClass} // Klasse für die Färbung hinzufügen
/>
);
})}
@@ -172,7 +198,6 @@ function Dashboard() {
return baugruppen;
};
return (
<div className="flex flex-col p-4">
{/* Letzte Meldungen - Titel und Icon Bereich */}

View File

@@ -1,15 +1,14 @@
"use client";
"use client"; // app/kabelueberwachung/page.jsx
import React, { useState, useEffect } from "react";
import Kue705FO from "../../components/modules/Kue705FO";
function Kabelueberwachung() {
//const apiUrl = process.env.NEXT_PUBLIC_API_BASE_URL;
const [isClient, setIsClient] = useState(false);
const [apiUrl, setApiUrl] = useState("");
const [activeRack, setActiveRack] = useState(1); // Track the active rack
const [kueIso, setKueIso] = useState([]); // State to store isolation values
const [kueName, setKueName] = useState([]); // State to store the KUE names
const [kueID, setKueID] = useState([]); // State to store the KUE IDs
const [schleifenwiderstand, setSchleifenwiderstand] = useState([]); // State to store the resistance values
//const [kueOnline, setKueOnline] = useState([ 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, ]); // Example array for module status
const [kueOnline, setKueOnline] = useState([]); // State to store the module status
@@ -18,12 +17,7 @@ function Kabelueberwachung() {
const changeRack = (rack) => {
setActiveRack(rack);
};
useEffect(() => {
setIsClient(true);
if (typeof window !== "undefined") {
setApiUrl(`https://${window.ip}:443`);
}
}, []);
/* if (!isClient) {
return null; // or a loading spinner
}*/
@@ -40,8 +34,8 @@ function Kabelueberwachung() {
if (window.kueOnline && Array.isArray(window.kueOnline)) {
setKueOnline(window.kueOnline); // Store the module status from the global variable
}
if (window.kueName && Array.isArray(window.kueName)) {
setKueName(window.kueName); // Store the KUE names from the global variable
if (window.kueID && Array.isArray(window.kueID)) {
setKueName(window.kueID); // Store the KUE names from the global variable
}
}, []);
@@ -56,26 +50,26 @@ function Kabelueberwachung() {
rack2: kueIso.slice(8, 16).map((value, index) => ({
isolationswert: value,
schleifenwiderstand: schleifenwiderstand[8 + index],
modulName: kueName[8 + index] || "Unknown",
modulName: kueID[8 + index] || "Unknown",
kueOnlineStatus: kueOnline[8 + index], // Online status for this slot
})),
rack3: kueIso.slice(16, 24).map((value, index) => ({
isolationswert: value,
schleifenwiderstand: schleifenwiderstand[16 + index],
modulName: kueName[16 + index] || "Unknown",
modulName: kueID[16 + index] || "Unknown",
kueOnlineStatus: kueOnline[16 + index], // Online status for this slot
})),
rack4: kueIso.slice(24, 32).map((value, index) => ({
isolationswert: value,
schleifenwiderstand: schleifenwiderstand[24 + index],
modulName: kueName[24 + index] || "Unknown",
modulName: kueID[24 + index] || "Unknown",
kueOnlineStatus: kueOnline[24 + index], // Online status for this slot
})),
};
useEffect(() => {
const script = document.createElement("script");
script.src = `${apiUrl}CPL?Service/kueData.js`; // Path to your JavaScript file
script.src = `CPL?Service/kueData.js`; // Path to your JavaScript file
script.async = true;
document.body.appendChild(script);

View File

@@ -8,7 +8,7 @@ import SettingsModal from "./modales/SettingsModal";
function Header() {
const [isClient, setIsClient] = useState(false);
const [apiUrl, setApiUrl] = useState("");
const [stationsname, setStationsname] = useState("Lädt..."); // Platzhalter
const [cplStatus, setCplStatus] = useState("Lädt...");
const [showSettingsModal, setShowSettingsModal] = useState(false);
@@ -31,10 +31,9 @@ function Header() {
useEffect(() => {
if (typeof window !== "undefined") {
loadWindowVariables(apiUrl)
loadWindowVariables()
.then(() => {
if (window.ip) {
setApiUrl(`https://${window.ip}:443`);
setStationsname(window.deviceName || "Unbekannt");
setCplStatus(window.hardware_version || "Unbekannt");
} else {
@@ -60,7 +59,13 @@ function Header() {
files.forEach((file) => {
const script = document.createElement("script");
script.src = `/CPL?/CPL/SERVICE/${file}`;
const environment = process.env.NODE_ENV;
if (environment === "production") {
script.src = `/CPL?/CPL/SERVICE/${file}`; // Produktions-Pfad
} else {
script.src = `/CPL/CPL/SERVICE/${file}`; // Entwicklungs-Pfad
}
//script.src = `/CPL?/CPL/SERVICE/${file}`;
script.async = true;
script.onload = () => console.log(`${file} wurde erfolgreich geladen.`);
script.onerror = (error) =>

View File

@@ -7,7 +7,7 @@ function SettingModal({ showModal, onClose }) {
const [name, setName] = useState("CPLV4");
const [mac1, setMac1] = useState("0 48 86 81 46 157");
const [mac2, setMac2] = useState("0 48 86 81 46 158");
const [ip, setIp] = useState("10.10.0.118");
const [ip, setIp] = useState("");
const [subnet, setSubnet] = useState("255.255.255.0");
const [gateway, setGateway] = useState("10.10.0.1");
const [systemUhr, setSystemUhr] = useState("16.10.24 15:27:23 Uhr");

View File

@@ -1,4 +1,4 @@
"use client";
"use client"; // components/modules/Kue705FO.jsx
import React, { useState, useEffect } from "react";
import ReactModal from "react-modal";
import Chart from "chart.js/auto";
@@ -288,7 +288,9 @@ function Kue705FO({
slot={slotIndex}
onModulNameChange={handleModulNameChange}
/>
{/*
Bei Kabelbruch (cableBreak), Erdschluss (groundFault), Isolationsfehler (measure1Alarm) oder Schleifenfehler (measure2Alarm)
*/}
<div className="flex flex-col mt-[10px] ml-[10px]">
<div className="flex items-center">
<div className="w-[10px] h-[10px] bg-green-500 rounded-full mr-2"></div>
@@ -297,7 +299,10 @@ function Kue705FO({
<div className="flex items-center mt-1">
<div
className={`w-[10px] h-[10px] rounded-full mr-2 ${
window.kueAlarm1 && slotIndex === 1
(window.kueAlarm1 && slotIndex === 1) ||
(window.kueAlarm2 && slotIndex === 1) ||
(window.kueCableBreak && slotIndex === 1) ||
(window.kueGroundFault && slotIndex === 1)
? "bg-red-500"
: "bg-gray-300"
}`}

View File

@@ -1,4 +1,5 @@
// components/modulesStatus/KabelModulStatus.jsx
//Bei Kabelbruch (cableBreak), Erdschluss (groundFault), Isolationsfehler (measure1Alarm) oder Schleifenfehler (measure2Alarm) wird der Status rot angezeigt. Ansonsten grün.
import React from "react";
const KabelModulStatus = ({ slot, kueCableBreak, isOnline, moduleVersion }) => {
@@ -26,6 +27,9 @@ const KabelModulStatus = ({ slot, kueCableBreak, isOnline, moduleVersion }) => {
}
const isCableBreak = kueCableBreak[slot - 1] === 1;
const isAlarm1 = kueAlarm1[slot - 1] === 1;
const isAlarm2 = kueAlarm2[slot - 1] === 1;
const groundFault = kueGroundFault[slot - 1] === 1;
return (
<div className="border border-gray-400 w-10 h-20 flex flex-col">
@@ -38,7 +42,9 @@ const KabelModulStatus = ({ slot, kueCableBreak, isOnline, moduleVersion }) => {
{/* Status-Anzeige */}
<div
className={`w-full h-2/6 ${
isCableBreak ? "bg-red-500" : "bg-green-500"
isCableBreak || isAlarm1 || isAlarm2 || groundFault
? "bg-red-500"
: "bg-green-500"
}`}
></div>
<div className="bg-littwin-blue w-full h-1/6"></div>

View File

@@ -1,37 +0,0 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta charset="UTF-8">
<title>HTTPS Web page (SSL)</title>
</head>
<body onLoad="login()">
<script>
function login() {
parent.location = "/CPL?dashboard.html";
}
</script>
<!--<IMG SRC=beck.gif ALIGN=RIGHT ALT=BECK>--><BR><BR>
<center>
<br>
<table border="0" cellpadding="4">
<tr>
<th><h3></h3></th>
</tr>
<tr>
<td align="center"><img src="littwin.png" alt="Littwin Logo"></td>
</tr>
<tr>
<td align="center" style="font-family:arial">HTTPS Webserver CPL V4 Littwin Systemtechnik GmbH</td>
</tr>
</table>
</center>
</body>
</html>

View File

@@ -1,59 +0,0 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<style>
table, th, td {
}
th, td {
padding: 4px;
}
</style>
<meta charset="UTF-8">
<title>HTTPS Web page (SSL)</title>
<script type="text/javascript">
window.location.href = "dashboard.html";
</script>
</head>
<body>
<!--<IMG SRC=beck.gif ALIGN=RIGHT ALT=BECK>--><BR><BR>
<center>
<br>
<table border="0" cellpadding="4">
<tr>
<th><h3></h3></th>
</tr>
<tr>
<td align="center"><img src="littwin.png" alt="Littwin Logo"></td>
</tr>
<tr>
<td align="center" style="font-family:arial">HTTPS Webserver CPL V4 Littwin Systemtechnik GmbH</td>
</tr>
<tr>
<td align="center">
<br>
<a href="/CPL?SYSTEM.ACP&OFF_1=1 target="_parent" style="font-family:arial">System</a></br>
<a href="/CPL?DE.ACP&OFF_1=1" target="_parent" style="font-family:arial">Digitale Eingänge</a><br>
<a href="/CPL?KUEconfig.ACP&OFF_1=1" target="_parent" style="font-family:arial">Kabelüberwachungen</a>
</td>
</td>
</tr>
</table>
</br>
</br>
</br>
Letzten 20 Meldungen:<br>
<table border="1" style="border: 1px solid black; border-collapse: collapse; cellpadding: 2px;">
<%=SAM01%>
</table>
<br>
Stand:&nbsp;<%=SCL01%>
</center>
</body>
</html>

334
mock.js
View File

@@ -1,334 +0,0 @@
// Letzten 20 Meldungen
"<%=SAM01%>"; //Platzhaalter Start.acp
var last20Messages = `<tr><td>00985</td><td>02501</td><td>2024-09-18 07:40:39:000</td><td>Modul 16 Isofehler gehend</td><td>0</td></tr><tr><td>00984</td><td>02501</td><td>2024-09-18 07:40:35:000</td><td>Modul 16 Isofehler kommend</td><td>1</td></tr><tr><td>00983</td><td>02400</td><td>2024-09-18 07:39:17:000</td><td>Modul 15 Aderbruch kommend</td><td>1</td></tr><tr><td>00982</td><td>01000</td><td>2024-09-18 07:38:49:000</td><td>Modul 01 Aderbruch kommend</td><td>1</td></tr><tr><td>00981</td><td>00108</td><td>2024-09-18 07:38:44:000</td><td>Dig. Eingang 09 kommend</td><td>1</td></tr><tr><td>00980</td><td>00101</td><td>2024-09-18 07:38:44:000</td><td>Dig. Eingang 02 kommend</td><td>1</td></tr><tr><td>00979</td><td>00100</td><td>2024-09-18 07:38:44:000</td><td>Dig. Eingang 01 kommend</td><td>1</td></tr><tr><td>00978</td><td>02501</td><td>2024-09-17 16:40:55:000</td><td>Modul 16 Isofehler gehend</td><td>0</td></tr><tr><td>00977</td><td>02501</td><td>2024-09-17 16:40:51:000</td><td>Modul 16 Isofehler kommend</td><td>1</td></tr><tr><td>00976</td><td>02501</td><td>2024-09-17 16:25:55:000</td><td>Modul 16 Isofehler gehend</td><td>0</td></tr><tr><td>00975</td><td>02501</td><td>2024-09-17 16:25:51:000</td><td>Modul 16 Isofehler kommend</td><td>1</td></tr><tr><td>00974</td><td>02501</td><td>2024-09-17 16:10:57:000</td><td>Modul 16 Isofehler gehend</td><td>0</td></tr><tr><td>00973</td><td>02501</td><td>2024-09-17 16:10:53:000</td><td>Modul 16 Isofehler kommend</td><td>1</td></tr><tr><td>00972</td><td>00127</td><td>2024-09-17 16:05:51:000</td><td>Dig. Eingang 28 gehend</td><td>0</td></tr><tr><td>00971</td><td>00126</td><td>2024-09-17 16:05:51:000</td><td>Dig. Eingang 27 gehend</td><td>0</td></tr><tr><td>00970</td><td>00125</td><td>2024-09-17 16:05:51:000</td><td>Dig. Eingang 26 gehend</td><td>0</td></tr><tr><td>00969</td><td>00124</td><td>2024-09-17 16:05:51:000</td><td>Dig. Eingang 25 gehend</td><td>0</td></tr><tr><td>00968</td><td>00123</td><td>2024-09-17 16:05:50:000</td><td>Dig. Eingang 24 gehend</td><td>0</td></tr><tr><td>00967</td><td>00122</td><td>2024-09-17 16:05:50:000</td><td>Dig. Eingang 23 gehend</td><td>0</td></tr><tr><td>00966</td><td>00121</td><td>2024-09-17 16:05:50:000</td><td>Dig. Eingang 22 gehend</td><td>0</td></tr>`;
("Stand:&nbsp;25.09.24 11:10:11 Uhr");
("Stand:&nbsp;<%=SCL01%>"); //Platzhaler
// System Platzhalter System.acp
var deviceName="<%=SAN01%>";
var mac1="<%=SEM01%>";
var mac2="<%=SEM02%>";
var ip="<%=SEI01%>";
var subnet="<%=SES01%>";
var gateway="<%=SEG01%>";
var datetime="<%=SCL01%>";
// system Anwort System.acp
var deviceName = "CPLV4_ISM";
var mac1 = "0 48 86 81 46 157";
var mac2 = "0 48 86 81 46 158";
var ip = "10.10.0.118";
var subnet = "255.255.255.0";
var gateway = "10.10.0.1";
var datetime = "09.01.00 04:05:24 Uhr";
//Digitale Eingänge Platzhalter de.acp
var de=[<%=DES80%>,<%=DES81%>,<%=DES82%>,<%=DES83%>];
var counter=[<%=DEC80%>,<%=DEC81%>,<%=DEC82%>,<%=DEC83%>];
var flutter=[<%=DEF80%>,<%=DEF81%>,<%=DEF82%>,<%=DEF83%>];
//Digitale Eingänge Anwort de.acp
var de = [
1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0,
];
var counter = [
0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0,
0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0,
0.0, 0.0,
];
var flutter = [
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0,
];
{
/*
<a href="/CPL?SYSTEM.ACP&OFF_1=1 target="_parent" style="font-family:arial">System</a></br>
<a href="/CPL?DE.ACP&OFF_1=1" target="_parent" style="font-family:arial">Digitale Eingänge</a><br>
<a href="/CPL?KUEconfig.ACP&OFF_1=1" target="_parent" style="font-family:arial">Kabelüberwachungen</a>
*/
}
//Kabelüberwachung Konfiguration kueConfig.acp Platzhalter
var kueOnline=[<%=KSO80%>,<%=KSO81%>,<%=KSO82%>,<%=KSO83%>];
var kueID=[<%=KSI80%>,<%=KSI81%>,<%=KSI82%>,<%=KSI83%>];
var kueIso=[<%=KIM80%>,<%=KIM81%>,<%=KIM82%>,<%=KIM83%>];
//Kabelüberwachung Konfiguration kueConfig.acp Antwort
var kueOnline = [
1, 1, 0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0,
];
var kueID = [
"FTZ324234",
"B23",
"",
"",
"",
"",
"",
"",
"12344",
"",
"",
"",
"",
"",
"",
"H56-77",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
];
var kueName = [
"Nicola",
"Chantal",
"",
"",
"",
"",
"Melanie",
"",
"Merle",
"",
"",
"",
"",
"",
"",
"Daniela",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
];
var kueIso = [
200.0, 200.0, 0.0, 0.0, 0.0, 0.0, 10.0, 0.0, 16.0, 0.0, 0.0, 0.0, 0.0, 0.0,
0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0,
0.0, 0.0, 0.0,
];
//Kabelüberwachung Detail je Kabel (Einzel und nicht für alle Kabel) für ein Slot (Modul) Platzhalter kueDetail.acp
var kueValid=[<%=KIV80%>,<%=KIV81%>,<%=KIV82%>,<%=KIV83%>];
var kueAlarm1=[<%=KIA80%>,<%=KIA81%>,<%=KIA82%>,<%=KIA83%>];
var kueAlarm2=[<%=KRA80%>,<%=KRA81%>,<%=KRA82%>,<%=KRA83%>];
var kueRes=[<%=KRM80%>,<%=KRM81%>,<%=KRM82%>,<%=KRM83%>];
var kueCableBreak=[<%=KSC80%>,<%=KSC81%>,<%=KSC82%>,<%=KSC83%>];
var kueGroundFault=[<%=KSG80%>,<%=KSG81%>,<%=KSG82%>,<%=KSG83%>];
var kueLimit1=[<%=KIG80%>,<%=KIG81%>,<%=KIG82%>,<%=KIG83%>];
var kueLimit2Low=[<%=KRG80%>,<%=KRG81%>,<%=KRG82%>,<%=KRG83%>];
var kueLimit2High=[<%=KRH80%>,<%=KRH81%>,<%=KRH82%>,<%=KRH83%>];
var kueDelay1=[<%=KID80%>,<%=KID81%>,<%=KID82%>,<%=KID83%>];
var kueLoopInterval=[<%=KRI80%>,<%=KRI81%>,<%=KRI82%>,<%=KRI83%>];
var kueVersion=[<%=KSV80%>,<%=KSV81%>,<%=KSV82%>,<%=KSV83%>];
var tdrAtten=[<%=KTD80%>,<%=KTD81%>,<%=KTD82%>,<%=KTD83%>];
var tdrPulse=[<%=KTP80%>,<%=KTP81%>,<%=KTP82%>,<%=KTP83%>];
var tdrSpeed=[<%=KTS80%>,<%=KTS81%>,<%=KTS82%>,<%=KTS83%>];
var tdrAmp=[<%=KTA80%>,<%=KTA81%>,<%=KTA82%>,<%=KTA83%>];
var tdrTrigger=[<%=KTE80%>,<%=KTE81%>,<%=KTE82%>,<%=KTE83%>];
var tdrLocation=[<%=KTF80%>,<%=KTF81%>,<%=KTF82%>,<%=KTF83%>];
var tdrActive=[<%=KTX80%>,<%=KTX81%>,<%=KTX82%>,<%=KTX83%>];
var kueOverflow=[<%=KIW80%>,<%=KIW81%>,<%=KIW82%>,<%=KIW83%>];
var kue100V=[<%=KSS80%>,<%=KSS81%>,<%=KSS82%>,<%=KSS83%>];
var kueResidence=[<%=KSN80%>,<%=KSN81%>,<%=KSN82%>,<%=KSN83%>];
var tdrLastMeasurement=[<%=KTL80%>,<%=KTL81%>,<%=KTL82%>,<%=KTL83%>];
var kueBooting=[<%=KSB80%>,<%=KSB81%>,<%=KSB82%>,<%=KSB83%>];
//Kabelüberwachung Detail je Kabel (Einzel und nicht für alle Kabel) für ein Slot (Modul) Anwort kueDetail.acp
var kueValid = [
1, 1, 0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0,
];
var kueAlarm1 = [
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0,
];
var kueAlarm2 = [
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0,
];
var kueRes = [
0.129, 65.0, 0.0, 0.0, 0.0, 0.0, 2.258, 0.0, 4.782, 0.0, 0.0, 0.0, 0.0, 0.0,
0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0,
0.0, 0.0, 0.0,
];
var kueCableBreak = [
0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0,
];
var kueGroundFault = [
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0,
];
var kueLimit1 = [
10.0, 10.0, 0.0, 0.0, 0.0, 0.0, 10.0, 0.0, 10.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0,
0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0,
0.0, 0.0,
];
var kueLimit2Low = [
0.1, 0.1, 0.0, 0.0, 0.0, 0.0, 0.1, 0.0, 0.1, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0,
0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0,
0.0, 0.0,
];
var kueLimit2High = [
1.0, 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0,
0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0,
0.0, 0.0,
];
var kueDelay1 = [
420, 420, 0, 0, 0, 0, 420, 0, 420, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0,
];
var kueLoopInterval = [
6, 6, 0, 0, 0, 0, 6, 0, 6, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0,
];
var kueName = [
"Nicola",
"Chantal",
"",
"",
"",
"",
"Melanie",
"",
"Merle",
"",
"",
"",
"",
"",
"",
"Daniela",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
"",
];
var kueVersion = [
419, 419, 0, 0, 0, 0, 419, 0, 419, 0, 0, 0, 0, 0, 0, 1100, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
];
var tdrAtten = [
2.0, 2.0, 0.0, 0.0, 0.0, 0.0, 2.0, 0.0, 2.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0,
0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0,
0.0, 0.0,
];
var tdrPulse = [
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0,
];
var tdrSpeed = [
120, 100, 0, 0, 0, 0, 100, 0, 100, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0,
];
var tdrAmp = [
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0,
];
var tdrTrigger = [
80, 80, 0, 0, 0, 0, 80, 0, 80, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0,
];
var tdrLocation = [
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0,
];
var tdrActive = [
1, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0,
];
var kueOverflow = [
1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0,
];
var kue100V = [
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0,
];
var kueResidence = [
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0,
];
var tdrLastMeasurement = [
"?",
"?",
"?",
"?",
"?",
"?",
"?",
"?",
"?",
"?",
"?",
"?",
"?",
"?",
"?",
"?",
"?",
"?",
"?",
"?",
"?",
"?",
"?",
"?",
"?",
"?",
"?",
"?",
"?",
"?",
"?",
"?",
];
var kueBooting = [
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0,
];

File diff suppressed because it is too large Load Diff

View File

@@ -1 +1 @@
var last20Messages=<%=SAM01%>
var last20Messages="<%=SAM01%>";

View File

@@ -1,133 +0,0 @@
// public/js/deviceScript.js (mit Platzhaltern)
// Device-Daten
var deviceName="<%=SAN01%>";
var mac1="<%=SEM01%>";
var mac2="<%=SEM02%>";
var ip="<%=SEI01%>";
var subnet="<%=SES01%>";
var gateway="<%=SEG01%>";
var datetime="<%=SCL01%>";
// Digitale Eingänge
var de=[<%=DES80%>,<%=DES81%>,<%=DES82%>,<%=DES83%>];
var counter=[<%=DEC80%>,<%=DEC81%>,<%=DEC82%>,<%=DEC83%>];
var flutter=[<%=DEF80%>,<%=DEF81%>,<%=DEF82%>,<%=DEF83%>];
// Kabelüberwachung config kueConfig.acp
var kueOnline=[<%=KSO80%>,<%=KSO81%>,<%=KSO82%>,<%=KSO83%>];
var kueID=[<%=KSI80%>,<%=KSI81%>,<%=KSI82%>,<%=KSI83%>];
var kueIso=[<%=KIM80%>,<%=KIM81%>,<%=KIM82%>,<%=KIM83%>];
// Kabelüberwachung Details kueDetail.acp
var kueOnline=[<%=KSO80%>,<%=KSO81%>,<%=KSO82%>,<%=KSO83%>];
var kueIso=[<%=KIM80%>,<%=KIM81%>,<%=KIM82%>,<%=KIM83%>];
var kueValid=[<%=KIV80%>,<%=KIV81%>,<%=KIV82%>,<%=KIV83%>];
var kueAlarm1=[<%=KIA80%>,<%=KIA81%>,<%=KIA82%>,<%=KIA83%>];
var kueAlarm2=[<%=KRA80%>,<%=KRA81%>,<%=KRA82%>,<%=KRA83%>];
var kueRes=[<%=KRM80%>,<%=KRM81%>,<%=KRM82%>,<%=KRM83%>];
var kueCableBreak=[<%=KSC80%>,<%=KSC81%>,<%=KSC82%>,<%=KSC83%>];
var kueGroundFault=[<%=KSG80%>,<%=KSG81%>,<%=KSG82%>,<%=KSG83%>];
var kueLimit1=[<%=KIG80%>,<%=KIG81%>,<%=KIG82%>,<%=KIG83%>];
var kueLimit2Low=[<%=KRG80%>,<%=KRG81%>,<%=KRG82%>,<%=KRG83%>];
var kueLimit2High=[<%=KRH80%>,<%=KRH81%>,<%=KRH82%>,<%=KRH83%>];
var kueDelay1=[<%=KID80%>,<%=KID81%>,<%=KID82%>,<%=KID83%>];
var kueLoopInterval=[<%=KRI80%>,<%=KRI81%>,<%=KRI82%>,<%=KRI83%>];
var kueID=[<%=KSI80%>,<%=KSI81%>,<%=KSI82%>,<%=KSI83%>];
var kueVersion=[<%=KSV80%>,<%=KSV81%>,<%=KSV82%>,<%=KSV83%>];
var tdrAtten=[<%=KTD80%>,<%=KTD81%>,<%=KTD82%>,<%=KTD83%>];
var tdrPulse=[<%=KTP80%>,<%=KTP81%>,<%=KTP82%>,<%=KTP83%>];
var tdrSpeed=[<%=KTS80%>,<%=KTS81%>,<%=KTS82%>,<%=KTS83%>];
var tdrAmp=[<%=KTA80%>,<%=KTA81%>,<%=KTA82%>,<%=KTA83%>];
var tdrTrigger=[<%=KTE80%>,<%=KTE81%>,<%=KTE82%>,<%=KTE83%>];
var tdrLocation=[<%=KTF80%>,<%=KTF81%>,<%=KTF82%>,<%=KTF83%>];
var tdrActive=[<%=KTX80%>,<%=KTX81%>,<%=KTX82%>,<%=KTX83%>];
var kueOverflow=[<%=KIW80%>,<%=KIW81%>,<%=KIW82%>,<%=KIW83%>];
var kue100V=[<%=KSS80%>,<%=KSS81%>,<%=KSS82%>,<%=KSS83%>];
var kueResidence=[<%=KSN80%>,<%=KSN81%>,<%=KSN82%>,<%=KSN83%>];
var tdrLastMeasurement=[<%=KTL80%>,<%=KTL81%>,<%=KTL82%>,<%=KTL83%>];
var kueBooting=[<%=KSB80%>,<%=KSB81%>,<%=KSB82%>,<%=KSB83%>];
// Funktionen zur Initialisierung und zum Anzeigen von Daten
function displayDeviceInfo() {
console.log("Gerätename: " + deviceName);
console.log("IP-Adresse: " + ip);
console.log("MAC-Adresse: " + mac1 + ", " + mac2);
}
function initializeSystemPage() {
textMac1.value = mac1;
textMac2.value = mac2;
textIP.value = ip;
textSubnet.value = subnet;
textGateway.value = gateway;
textDateTime.value = datetime;
textName.value = deviceName;
}
function initializeDigitalInputsPage() {
zeileEinfuegen();
setTimeout(function () {
window.location.reload(1);
}, 5000);
}
function initializeCableMonitoringPage() {
tableInit();
}
function zeileEinfuegen() {
const tabelle = document.getElementById("tabelle");
for (var i = 0; i <= 31; i++) {
const reihe = tabelle.insertRow(-1);
let inhalt = "Eingang " + (i + 1), zelle = reihe.insertCell();
zelle.innerHTML = inhalt;
inhalt = de[i], zelle = reihe.insertCell();
zelle.innerHTML = inhalt;
inhalt = counter[i], zelle = reihe.insertCell();
zelle.innerHTML = inhalt;
inhalt = flutter[i], zelle = reihe.insertCell();
zelle.innerHTML = inhalt;
}
var rows = tabelle.getElementsByTagName("tr");
for (var i = 0; i < rows.length; i++) {
if (rows[i].cells[1].innerHTML == "1")
rows[i].cells[1].style.backgroundColor = "red";
}
}
function tableInit() {
const tabelle = document.getElementById("tabelle");
for (var i = 0; i <= 31; i++) {
const reihe = tabelle.insertRow(-1);
let inhalt = "KÜ " + (i + 1), zelle = reihe.insertCell();
zelle.innerHTML = inhalt;
inhalt = kueID[i], zelle = reihe.insertCell();
zelle.innerHTML = inhalt;
if (kueOnline[i] == "1") {
inhalt = kueIso[i], zelle = reihe.insertCell();
zelle.innerHTML = inhalt;
} else {
inhalt = "", zelle = reihe.insertCell();
zelle.innerHTML = inhalt;
}
inhalt = "<button name='detail' type='button' value='Details' onClick='goModul(" + i + ")'>Detail</button>", zelle = reihe.insertCell();
zelle.innerHTML = inhalt;
}
}
// Weitere Funktionen können hier hinzugefügt werden

View File

@@ -1,12 +1,12 @@
// utils/loadWindowVariables.js
export async function loadWindowVariables(apiUrl) {
export async function loadWindowVariables() {
return new Promise((resolve, reject) => {
// Funktion zum Laden eines Skripts und Setzen der `window`-Variablen
const loadScript = (src) => {
return new Promise((resolve, reject) => {
const script = document.createElement("script");
script.src = `${apiUrl}/CPL?${src}`;
script.src = `/CPL?${src}`;
script.async = true;
script.onload = () => {
resolve();