diff --git a/src/App.svelte b/src/App.svelte index 003c02f..c0a71d3 100644 --- a/src/App.svelte +++ b/src/App.svelte @@ -134,9 +134,16 @@ deviceList = [ { + name: "Устройство 1", + id: "987654321", + ip: "192.168.88.230", + status: false, + }, + { + name: "Устройство 2", id: "987654321", ip: "192.168.88.231", - name: "test ESP 2", + status: false, }, ]; @@ -150,6 +157,7 @@ if (debug) console.log(device.name, ws, device.ip, device.id); wsConnect(ws, device.ip); wsEventAdd(ws); + device.ws = ws; //if (device.ip === myip) { // if (debug) console.log("My device found in list:", device.name); //} @@ -157,6 +165,15 @@ }); } + function markDeviceStatus(ws, status) { + deviceList.forEach((device) => { + if (device.ws === ws) { + device.status = status; + if (debug) console.log(device.name, ws, device.ip, device.id, device.status); + } + }); + } + function wsConnect(ws, ip) { socket[ws] = new WebSocket("ws://" + ip + "/ws"); } @@ -166,6 +183,7 @@ socket[ws].addEventListener("open", function (event) { if (debug) console.log("WS CONNECTED! " + myip); socketConnected = true; + markDeviceStatus(ws, true); //socket[ws].send("HELLO"); }); socket[ws].addEventListener("message", function (event) { @@ -178,11 +196,13 @@ }); socket[ws].addEventListener("close", (event) => { socketConnected = false; + markDeviceStatus(ws, false); wsConnect(ws); console.log("ws close " + myip); }); socket[ws].addEventListener("error", function (event) { socketConnected = false; + markDeviceStatus(ws, false); wsConnect(ws); console.log(myip + " ws error: ", event); }); @@ -275,8 +295,19 @@
-
- +
+
+ +
+
+ +
@@ -301,6 +332,9 @@
  • {"Лог"}
  • +
  • + {"Устройства"} +
  • {"О проекте"}
  • @@ -354,6 +388,16 @@ {/each} + + + {#each deviceList as device} +
    + + +
    + {/each} +
    +