diff --git a/GCodeFiles/log.gcode b/GCodeFiles/log.gcode index 99a19d1..8df9d1c 100755 --- a/GCodeFiles/log.gcode +++ b/GCodeFiles/log.gcode @@ -1,7 +1,7 @@ -G90 G1 x0 y300 z0 a90.00 b-90.00 c0.00 e0.00 t176148132360 f1000 +G90 G1 x0 y300 z0 a90.00 b-90.00 c0.00 e0.00 t176148132360 f1000;! G90 G1 x-50 y300 z0 a131.25 b-90.00 c0.00 e0.00 t176148136260 f1000 G90 G1 x-128.5 y410 z-11 a134.11 b-90.00 c9.74 e-57.30 t176148145060 f1000 -G90 G1 x-128.5 y410 z-11 a134.11 b-90.00 c9.74 e62.45 t176148148860 f1000;! +G90 G1 x-128.5 y410 z-11 a134.11 b-90.00 c9.74 e62.45 t176148148860 f1000 G90 G1 x-128.5 y410 z35 a134.11 b-90.00 c9.74 e62.45 t176148149240 f1000 G90 G1 x-128.5 y410 z35 a163.90 b-90.00 c9.74 e62.45 t176148149980 f1000 G90 G1 x-128.5 y410 z35 a84.84 b-90.00 c9.74 e62.45 t176148150690 f1000 diff --git a/docker-compose.yaml b/docker-compose.yaml new file mode 100755 index 0000000..7465782 --- /dev/null +++ b/docker-compose.yaml @@ -0,0 +1,244 @@ +services: + + appRobotGuacamole: + image: abesnier/guacamole:latest + container_name: appRobot_guacamole + ports: + - "8080:8080" + volumes: + - /home/chk/Documents/appServerInstallation/guacamole/config:/config/guacamole + - /home/chk/Documents/appServerInstallation/guacamole/postgres:/config/postgres + restart: unless-stopped + extra_hosts: + - "host.docker.internal:host-gateway" + networks: + - default + + appRobotDriver: + container_name: appRobot_Driver + image: node:24-alpine + working_dir: /usr/src/app + volumes: + - /home/chk/Documents/appRobotDriver:/usr/src/app + command: npm start + restart: unless-stopped + environment: + - GRBL_BASE_IP=192.168.0.183 + - GRBL_ELLBOW_IP=192.168.0.202 + - GRBL_HAND_IP=192.168.0.250 + ports: + - "2096:2095" + - "2098:2098" + expose: + - "2095" + networks: + - default + + + appRobotSimulation: + container_name: appRobot_Simulation + image: node:24-alpine + working_dir: /usr/src/app + volumes: + - /home/chk/Documents/appRobotSimulation:/usr/src/app + environment: + - TARGET_SERVER=wss://appRobot_Driver:2095 + command: npm start + restart: unless-stopped + ports: + - "1003:1003" + networks: + - default + + + appRobotControl: + image: node:24-alpine + container_name: appRobot_Control + working_dir: /app + command: sh -c "npm install && node 3DInput.js" + ports: + - "10010:10010" + volumes: + - /home/chk/Documents/appRobotControl:/app + environment: + - NODE_ENV=production + - TARGET_SERVER=wss://appRobot_Driver:2095 + depends_on: + - appRobotDriver + restart: unless-stopped + + appRobotHoming: + image: node:24-alpine + container_name: appRobot_Homing + working_dir: /app + volumes: + - /home/chk/Documents/appRobotHoming:/app + - /home/chk/Documents/AppRobotVideo/public/snapshots:/app/public/snapshots + environment: + - WSS_VIDEO_DRIVER=wss://localhost:8448 + - WSS_URL=wss://appRobot_Driver:2095 + - HTTPS_PORT=2093 + ports: + - "2093:2093" + depends_on: + - appRobotDriver + command: > + /bin/sh -lc "npm ci || npm install && node server/server.js" + networks: + - default + restart: unless-stopped + +# appRobotDirectBase: +# image: node:20-bullseye +# container_name: appRobot_DirectBase +# network_mode: host +# working_dir: /app +# volumes: +# - /home/chk/Documents/appRobotDirectControlBase:/app +# environment: +# - FluidNcHost=192.168.0.183 +# - FluidNcPort=80 +# - PORT=2098 +# ports: +# - "2098:2098" +# command: > +# /bin/bash -lc " +# npm ci || npm install && +# node server/server.js +# " + # restart: unless-stopped + + + + appRobot_Tunnel: + image: alpine:latest + container_name: appRobot_Tunnel + restart: unless-stopped + environment: + - TZ=Europe/Zurich + volumes: + - /home/chk/Documents/AppServerPortalUI/.ssh:/root/.ssh:ro + command: > + /bin/sh -c " + apk add --no-cache openssh-client autossh && + autossh -M 0 -N -o StrictHostKeyChecking=no \ + -i /root/.ssh/id_ed25519 \ + -o StrictHostKeyChecking=no \ + -o ServerAliveInterval=60 \ + -o ServerAliveCountMax=10 \ + -o ExitOnForwardFailure=yes \ + -N \ + -R 0.0.0.0:9703:portainer:9000 \ + -R 0.0.0.0:9710:appRobot_Control:10010 \ + -R 0.0.0.0:9798:appRobot_Driver:2098 \ + -R 0.0.0.0:9712:appRobot_Simulation:1003\ + -R 0.0.0.0:9743:AppRobotVideo:8443 \ + -R 0.0.0.0:9780:appRobot_guacamole:8080 \ + -R 0.0.0.0:9793:appRobot_Homing:2093 \ + -R 0.0.0.0:9725:appRobot_AccessBase:443 \ + -R 0.0.0.0:9726:appRobot_AccessEllbow:443 \ + -R 0.0.0.0:9727:appRobot_AccessHand:443 \ + tunnel@server.schooltech.ch -p 2255 + " + + cloudflared: + image: cloudflare/cloudflared:latest + container_name: appServer_cloudflare + command: tunnel --no-autoupdate run --token eyJhIjoiOWUyYzk0OTI1ZWVlNmE4NjRiZjllZGRiM2ZmMDRmMTUiLCJ0IjoiZDc2YzI2MjAtZGE0ZC00OTJmLWI5YjgtODNjMjgwNjQ5MTFlIiwicyI6IllUbGpPREJtTURndFpHSTVZUzAwWkRnekxXRTRNek10TXpaaE56WTBabUpsT1RBMSJ9 +# networks: +# - default +# - appRobotNet + restart: unless-stopped + + + + + appRobot_nextcloud_db: + image: mariadb:latest + container_name: appRobot_nextcloud_db + restart: unless-stopped + environment: + MYSQL_ROOT_PASSWORD: KantiWattwilABC + MYSQL_DATABASE: nextcloud + MYSQL_USER: nextcloud + MYSQL_PASSWORD: KantiABC122nextcloudX3! + volumes: + - /home/chk/Documents/appRobotNextCloud/db:/var/lib/mysql + + appRobot_nextcloud: + image: nextcloud:latest + container_name: appRobot_nextcloud + restart: unless-stopped + environment: + MYSQL_PASSWORD: KantiABC122nextcloudX3! + MYSQL_DATABASE: nextcloud + MYSQL_USER: nextcloud + MYSQL_HOST: appRobot_nextcloud_db + volumes: + - /home/chk/Documents/appRobotNextCloud/nextcloud:/var/www/html + - /home/chk/Documents:/mnt/server:rw + depends_on: + - appRobot_nextcloud_db + ports: + - "9183:80" + + + appRobot_AccessBase: + image: node:20-bullseye + # Alternativ: node:20-alpine (kleiner, aber evtl. openssl/ca/certs nachziehen) + container_name: appRobot_AccessBase + working_dir: /app + volumes: + - /home/chk/Documents/appRobotControlScara:/app + environment: + - FluidNcHost=192.168.0.183 #fluidncbase.local + - FluidNcPort=80 + - PORT=443 + command: > + /bin/bash -lc " + npm ci || npm install && + node server/server.js + " + restart: unless-stopped + + + appRobot_AccessEllbow: + image: node:20-bullseye + # Alternativ: node:20-alpine (kleiner, aber evtl. openssl/ca/certs nachziehen) + container_name: appRobot_AccessEllbow + working_dir: /app + volumes: + - /home/chk/Documents/appRobotControlScara:/app + environment: + - FluidNcHost=192.168.0.202 #fluidncellbow.local + - FluidNcPort=80 + - PORT=443 + command: > + /bin/bash -lc " + npm ci || npm install && + node server/server.js + " + restart: unless-stopped + + appRobot_AccessHand: + image: node:20-bullseye + # Alternativ: node:20-alpine (kleiner, aber evtl. openssl/ca/certs nachziehen) + container_name: appRobot_AccessHand + working_dir: /app + volumes: + - /home/chk/Documents/appRobotControlScara:/app + environment: + - FluidNcHost=192.168.0.250 #fluidnchand.local + - FluidNcPort=80 + - PORT=443 + command: > + /bin/bash -lc " + npm ci || npm install && + node server/server.js + " + restart: unless-stopped + +networks: + default: + driver: bridge + diff --git a/logs/gcode_commands.log b/logs/gcode_commands.log new file mode 100644 index 0000000..633bb5f --- /dev/null +++ b/logs/gcode_commands.log @@ -0,0 +1,77 @@ +2026-04-01T15:52:31.755Z ::ffff:172.21.0.6: FShow +2026-04-01T15:52:38.712Z ::ffff:172.21.0.6: G91 G1 B-0.1 F100 +2026-04-01T15:52:45.522Z ::ffff:172.21.0.6: G91 G1 Y-10 F100 +2026-04-01T15:52:51.414Z ::ffff:172.21.0.6: FShow +2026-04-01T15:52:55.813Z ::ffff:172.21.0.6: G91 G1 Y-10 F100 +2026-04-01T15:53:01.082Z ::ffff:172.21.0.6: G91 G1 Y-10 F100 +2026-04-01T15:54:23.602Z ::ffff:172.21.0.6: G91 G1 Y-10 F100 +2026-04-01T15:54:29.102Z ::ffff:172.21.0.6: G91 G1 Y-10 F100 +2026-04-01T15:54:53.177Z ::ffff:172.21.0.6: FMinus +2026-04-01T15:54:53.180Z ::ffff:172.21.0.6: FShow +2026-04-01T15:54:57.054Z ::ffff:172.21.0.6: FPlus +2026-04-01T15:54:57.059Z ::ffff:172.21.0.6: FShow +2026-04-01T15:54:59.621Z ::ffff:172.21.0.6: FPlus +2026-04-01T15:54:59.625Z ::ffff:172.21.0.6: FShow +2026-04-01T15:55:00.499Z ::ffff:172.21.0.6: FPlus +2026-04-01T15:55:00.503Z ::ffff:172.21.0.6: FShow +2026-04-01T15:55:02.277Z ::ffff:172.21.0.6: FPlus +2026-04-01T15:55:02.282Z ::ffff:172.21.0.6: FShow +2026-04-01T15:55:05.522Z ::ffff:172.21.0.6: FPlus +2026-04-01T15:55:05.528Z ::ffff:172.21.0.6: FShow +2026-04-01T15:55:06.430Z ::ffff:172.21.0.6: FPlus +2026-04-01T15:55:06.433Z ::ffff:172.21.0.6: FShow +2026-04-01T15:55:09.138Z ::ffff:172.21.0.6: FPlus +2026-04-01T15:55:09.142Z ::ffff:172.21.0.6: FShow +2026-04-01T15:55:10.366Z ::ffff:172.21.0.6: FPlus +2026-04-01T15:55:10.369Z ::ffff:172.21.0.6: FShow +2026-04-01T15:55:15.018Z ::ffff:172.21.0.6: FMinus +2026-04-01T15:55:15.022Z ::ffff:172.21.0.6: FShow +2026-04-01T15:55:15.600Z ::ffff:172.21.0.6: FMinus +2026-04-01T15:55:15.604Z ::ffff:172.21.0.6: FShow +2026-04-01T15:55:16.471Z ::ffff:172.21.0.6: FMinus +2026-04-01T15:55:16.474Z ::ffff:172.21.0.6: FShow +2026-04-01T15:55:17.318Z ::ffff:172.21.0.6: FMinus +2026-04-01T15:55:17.322Z ::ffff:172.21.0.6: FShow +2026-04-01T15:55:29.479Z ::ffff:172.21.0.6: FMinus +2026-04-01T15:55:29.482Z ::ffff:172.21.0.6: FShow +2026-04-01T15:55:31.257Z ::ffff:172.21.0.6: FMinus +2026-04-01T15:55:31.260Z ::ffff:172.21.0.6: FShow +2026-04-01T15:55:32.190Z ::ffff:172.21.0.6: FMinus +2026-04-01T15:55:32.192Z ::ffff:172.21.0.6: FShow +2026-04-01T15:55:33.303Z ::ffff:172.21.0.6: FMinus +2026-04-01T15:55:33.306Z ::ffff:172.21.0.6: FShow +2026-04-01T15:55:34.107Z ::ffff:172.21.0.6: FMinus +2026-04-01T15:55:34.110Z ::ffff:172.21.0.6: FShow +2026-04-01T15:55:35.227Z ::ffff:172.21.0.6: FMinus +2026-04-01T15:55:35.231Z ::ffff:172.21.0.6: FShow +2026-04-01T15:55:42.111Z ::ffff:172.21.0.6: FPlus +2026-04-01T15:55:42.114Z ::ffff:172.21.0.6: FShow +2026-04-01T15:55:43.340Z ::ffff:172.21.0.6: FPlus +2026-04-01T15:55:43.343Z ::ffff:172.21.0.6: FShow +2026-04-01T15:55:44.923Z ::ffff:172.21.0.6: FPlus +2026-04-01T15:55:44.924Z ::ffff:172.21.0.6: FShow +2026-04-01T15:55:46.863Z ::ffff:172.21.0.6: FPlus +2026-04-01T15:55:46.867Z ::ffff:172.21.0.6: FShow +2026-04-01T15:55:47.906Z ::ffff:172.21.0.6: FPlus +2026-04-01T15:55:47.909Z ::ffff:172.21.0.6: FShow +2026-04-01T15:55:49.550Z ::ffff:172.21.0.6: FPlus +2026-04-01T15:55:49.553Z ::ffff:172.21.0.6: FShow +2026-04-01T15:55:52.146Z ::ffff:172.21.0.6: FPlus +2026-04-01T15:55:52.149Z ::ffff:172.21.0.6: FShow +2026-04-01T15:55:54.399Z ::ffff:172.21.0.6: FMinus +2026-04-01T15:55:54.402Z ::ffff:172.21.0.6: FShow +2026-04-01T15:55:54.475Z ::ffff:172.21.0.6: FMinus +2026-04-01T15:55:54.479Z ::ffff:172.21.0.6: FShow +2026-04-01T15:55:54.705Z ::ffff:172.21.0.6: FMinus +2026-04-01T15:55:54.709Z ::ffff:172.21.0.6: FShow +2026-04-01T15:55:54.876Z ::ffff:172.21.0.6: FMinus +2026-04-01T15:55:54.879Z ::ffff:172.21.0.6: FShow +2026-04-01T15:55:55.217Z ::ffff:172.21.0.6: FMinus +2026-04-01T15:55:55.220Z ::ffff:172.21.0.6: FShow +2026-04-01T15:55:55.627Z ::ffff:172.21.0.6: FMinus +2026-04-01T15:55:55.630Z ::ffff:172.21.0.6: FShow +2026-04-01T15:55:55.965Z ::ffff:172.21.0.6: FMinus +2026-04-01T15:55:55.968Z ::ffff:172.21.0.6: FShow +2026-04-01T15:55:56.352Z ::ffff:172.21.0.6: FMinus +2026-04-01T15:55:56.354Z ::ffff:172.21.0.6: FShow +2026-04-01T15:56:05.764Z ::ffff:172.21.0.6: G91 G1 Y-10 F100 diff --git a/logs/pings.log b/logs/pings.log new file mode 100644 index 0000000..9bede1a --- /dev/null +++ b/logs/pings.log @@ -0,0 +1,214 @@ +2026-04-01T15:52:10.860Z ::ffff:172.21.0.13: Ping +2026-04-01T15:52:15.877Z ::ffff:172.21.0.13: Ping +2026-04-01T15:52:20.894Z ::ffff:172.21.0.13: Ping +2026-04-01T15:52:32.876Z ::ffff:172.21.0.6: Ping +2026-04-01T15:52:36.469Z ::ffff:172.21.0.6: Ping +2026-04-01T15:52:37.893Z ::ffff:172.21.0.6: Ping +2026-04-01T15:52:52.825Z ::ffff:172.21.0.6: Ping +2026-04-01T15:53:06.142Z ::ffff:172.21.0.6: Ping +2026-04-01T15:53:11.139Z ::ffff:172.21.0.6: Ping +2026-04-01T15:53:16.190Z ::ffff:172.21.0.6: Ping +2026-04-01T15:53:21.140Z ::ffff:172.21.0.6: Ping +2026-04-01T15:53:22.828Z ::ffff:172.21.0.6: Ping +2026-04-01T15:53:26.146Z ::ffff:172.21.0.6: Ping +2026-04-01T15:53:31.141Z ::ffff:172.21.0.6: Ping +2026-04-01T15:53:36.261Z ::ffff:172.21.0.6: Ping +2026-04-01T15:53:41.163Z ::ffff:172.21.0.6: Ping +2026-04-01T15:53:46.147Z ::ffff:172.21.0.6: Ping +2026-04-01T15:53:51.141Z ::ffff:172.21.0.6: Ping +2026-04-01T15:53:56.139Z ::ffff:172.21.0.6: Ping +2026-04-01T15:54:01.140Z ::ffff:172.21.0.6: Ping +2026-04-01T15:54:06.144Z ::ffff:172.21.0.6: Ping +2026-04-01T15:54:11.136Z ::ffff:172.21.0.6: Ping +2026-04-01T15:54:16.135Z ::ffff:172.21.0.6: Ping +2026-04-01T15:54:21.214Z ::ffff:172.21.0.6: Ping +2026-04-01T15:54:22.824Z ::ffff:172.21.0.6: Ping +2026-04-01T15:54:36.272Z ::ffff:172.21.0.6: Ping +2026-04-01T15:54:41.149Z ::ffff:172.21.0.6: Ping +2026-04-01T15:54:46.141Z ::ffff:172.21.0.6: Ping +2026-04-01T15:54:51.152Z ::ffff:172.21.0.6: Ping +2026-04-01T15:54:56.221Z ::ffff:172.21.0.6: Ping +2026-04-01T15:55:01.252Z ::ffff:172.21.0.6: Ping +2026-04-01T15:55:06.142Z ::ffff:172.21.0.6: Ping +2026-04-01T15:55:11.186Z ::ffff:172.21.0.6: Ping +2026-04-01T15:55:16.159Z ::ffff:172.21.0.6: Ping +2026-04-01T15:55:21.137Z ::ffff:172.21.0.6: Ping +2026-04-01T15:55:22.859Z ::ffff:172.21.0.6: Ping +2026-04-01T15:55:26.238Z ::ffff:172.21.0.6: Ping +2026-04-01T15:55:31.154Z ::ffff:172.21.0.6: Ping +2026-04-01T15:55:36.170Z ::ffff:172.21.0.6: Ping +2026-04-01T15:55:41.188Z ::ffff:172.21.0.6: Ping +2026-04-01T15:55:46.206Z ::ffff:172.21.0.6: Ping +2026-04-01T15:55:51.226Z ::ffff:172.21.0.6: Ping +2026-04-01T15:55:56.141Z ::ffff:172.21.0.6: Ping +2026-04-01T15:56:01.170Z ::ffff:172.21.0.6: Ping +2026-04-01T15:56:11.211Z ::ffff:172.21.0.6: Ping +2026-04-01T15:56:16.169Z ::ffff:172.21.0.6: Ping +2026-04-01T15:56:21.229Z ::ffff:172.21.0.6: Ping +2026-04-01T15:56:22.866Z ::ffff:172.21.0.6: Ping +2026-04-01T15:56:26.146Z ::ffff:172.21.0.6: Ping +2026-04-01T15:56:31.262Z ::ffff:172.21.0.6: Ping +2026-04-01T15:56:36.177Z ::ffff:172.21.0.6: Ping +2026-04-01T15:56:41.196Z ::ffff:172.21.0.6: Ping +2026-04-01T15:56:46.141Z ::ffff:172.21.0.6: Ping +2026-04-01T15:56:51.230Z ::ffff:172.21.0.6: Ping +2026-04-01T15:56:56.248Z ::ffff:172.21.0.6: Ping +2026-04-01T15:57:01.142Z ::ffff:172.21.0.6: Ping +2026-04-01T15:57:06.139Z ::ffff:172.21.0.6: Ping +2026-04-01T15:57:11.153Z ::ffff:172.21.0.6: Ping +2026-04-01T15:57:16.188Z ::ffff:172.21.0.6: Ping +2026-04-01T15:57:21.150Z ::ffff:172.21.0.6: Ping +2026-04-01T15:57:22.816Z ::ffff:172.21.0.6: Ping +2026-04-01T15:57:26.251Z ::ffff:172.21.0.6: Ping +2026-04-01T15:57:31.145Z ::ffff:172.21.0.6: Ping +2026-04-01T15:57:36.184Z ::ffff:172.21.0.6: Ping +2026-04-01T15:57:41.202Z ::ffff:172.21.0.6: Ping +2026-04-01T15:57:46.149Z ::ffff:172.21.0.6: Ping +2026-04-01T15:57:51.134Z ::ffff:172.21.0.6: Ping +2026-04-01T15:57:56.132Z ::ffff:172.21.0.6: Ping +2026-04-01T15:58:01.146Z ::ffff:172.21.0.6: Ping +2026-04-01T15:58:06.142Z ::ffff:172.21.0.6: Ping +2026-04-01T15:58:11.130Z ::ffff:172.21.0.6: Ping +2026-04-01T15:58:16.222Z ::ffff:172.21.0.6: Ping +2026-04-01T15:58:21.136Z ::ffff:172.21.0.6: Ping +2026-04-01T15:58:22.824Z ::ffff:172.21.0.6: Ping +2026-04-01T15:58:26.259Z ::ffff:172.21.0.6: Ping +2026-04-01T15:58:31.174Z ::ffff:172.21.0.6: Ping +2026-04-01T15:58:36.142Z ::ffff:172.21.0.6: Ping +2026-04-01T15:58:41.141Z ::ffff:172.21.0.6: Ping +2026-04-01T16:00:27.822Z ::ffff:172.21.0.6: Ping +2026-04-01T16:00:32.822Z ::ffff:172.21.0.6: Ping +2026-04-01T16:00:37.824Z ::ffff:172.21.0.6: Ping +2026-04-01T16:00:42.830Z ::ffff:172.21.0.6: Ping +2026-04-01T16:00:47.827Z ::ffff:172.21.0.6: Ping +2026-04-01T16:00:51.319Z ::ffff:172.21.0.6: Ping +2026-04-01T16:00:52.821Z ::ffff:172.21.0.6: Ping +2026-04-01T16:00:56.295Z ::ffff:172.21.0.6: Ping +2026-04-01T16:01:01.301Z ::ffff:172.21.0.6: Ping +2026-04-01T16:01:02.929Z ::ffff:172.21.0.6: Ping +2026-04-01T16:01:06.295Z ::ffff:172.21.0.6: Ping +2026-04-01T16:01:07.811Z ::ffff:172.21.0.6: Ping +2026-04-01T16:01:11.293Z ::ffff:172.21.0.6: Ping +2026-04-01T16:01:12.815Z ::ffff:172.21.0.6: Ping +2026-04-01T16:01:16.293Z ::ffff:172.21.0.6: Ping +2026-04-01T16:01:17.820Z ::ffff:172.21.0.6: Ping +2026-04-01T16:01:21.305Z ::ffff:172.21.0.6: Ping +2026-04-01T16:01:22.821Z ::ffff:172.21.0.6: Ping +2026-04-01T16:01:26.295Z ::ffff:172.21.0.6: Ping +2026-04-01T16:01:27.814Z ::ffff:172.21.0.6: Ping +2026-04-01T16:01:31.306Z ::ffff:172.21.0.6: Ping +2026-04-01T16:01:32.826Z ::ffff:172.21.0.6: Ping +2026-04-01T16:01:36.289Z ::ffff:172.21.0.6: Ping +2026-04-01T16:01:37.826Z ::ffff:172.21.0.6: Ping +2026-04-01T16:01:44.237Z ::ffff:172.21.0.6: Ping +2026-04-01T16:01:45.825Z ::ffff:172.21.0.6: Ping +2026-04-01T16:01:49.240Z ::ffff:172.21.0.6: Ping +2026-04-01T16:01:50.813Z ::ffff:172.21.0.6: Ping +2026-04-01T16:01:54.234Z ::ffff:172.21.0.6: Ping +2026-04-01T16:01:55.820Z ::ffff:172.21.0.6: Ping +2026-04-01T16:01:59.230Z ::ffff:172.21.0.6: Ping +2026-04-01T16:02:00.819Z ::ffff:172.21.0.6: Ping +2026-04-01T16:02:04.235Z ::ffff:172.21.0.6: Ping +2026-04-01T16:02:05.821Z ::ffff:172.21.0.6: Ping +2026-04-01T16:02:09.232Z ::ffff:172.21.0.6: Ping +2026-04-01T16:02:10.823Z ::ffff:172.21.0.6: Ping +2026-04-01T16:02:14.230Z ::ffff:172.21.0.6: Ping +2026-04-01T16:02:19.234Z ::ffff:172.21.0.6: Ping +2026-04-01T16:02:22.818Z ::ffff:172.21.0.6: Ping +2026-04-01T16:02:24.239Z ::ffff:172.21.0.6: Ping +2026-04-01T16:02:29.234Z ::ffff:172.21.0.6: Ping +2026-04-01T16:02:34.235Z ::ffff:172.21.0.6: Ping +2026-04-01T16:02:39.238Z ::ffff:172.21.0.6: Ping +2026-04-01T16:02:44.224Z ::ffff:172.21.0.6: Ping +2026-04-01T16:02:49.247Z ::ffff:172.21.0.6: Ping +2026-04-01T16:02:54.237Z ::ffff:172.21.0.6: Ping +2026-04-01T16:02:59.229Z ::ffff:172.21.0.6: Ping +2026-04-01T16:03:04.230Z ::ffff:172.21.0.6: Ping +2026-04-01T16:03:09.240Z ::ffff:172.21.0.6: Ping +2026-04-01T16:03:17.482Z ::ffff:172.21.0.6: Ping +2026-04-01T16:03:18.830Z ::ffff:172.21.0.6: Ping +2026-04-01T16:03:27.479Z ::ffff:172.21.0.6: Ping +2026-04-01T16:03:28.812Z ::ffff:172.21.0.6: Ping +2026-04-01T16:03:32.473Z ::ffff:172.21.0.6: Ping +2026-04-01T16:03:33.812Z ::ffff:172.21.0.6: Ping +2026-04-01T16:03:37.484Z ::ffff:172.21.0.6: Ping +2026-04-01T16:03:38.814Z ::ffff:172.21.0.6: Ping +2026-04-01T16:03:42.487Z ::ffff:172.21.0.6: Ping +2026-04-01T16:03:43.812Z ::ffff:172.21.0.6: Ping +2026-04-01T16:03:47.478Z ::ffff:172.21.0.6: Ping +2026-04-01T16:03:52.475Z ::ffff:172.21.0.6: Ping +2026-04-01T16:03:57.478Z ::ffff:172.21.0.6: Ping +2026-04-01T16:04:02.476Z ::ffff:172.21.0.6: Ping +2026-04-01T16:04:07.486Z ::ffff:172.21.0.6: Ping +2026-04-01T16:04:12.473Z ::ffff:172.21.0.6: Ping +2026-04-01T16:04:17.474Z ::ffff:172.21.0.6: Ping +2026-04-01T16:04:22.484Z ::ffff:172.21.0.6: Ping +2026-04-01T16:04:22.822Z ::ffff:172.21.0.6: Ping +2026-04-01T16:04:27.481Z ::ffff:172.21.0.6: Ping +2026-04-01T16:04:32.468Z ::ffff:172.21.0.6: Ping +2026-04-01T16:04:37.474Z ::ffff:172.21.0.6: Ping +2026-04-01T16:04:42.471Z ::ffff:172.21.0.6: Ping +2026-04-01T16:04:47.477Z ::ffff:172.21.0.6: Ping +2026-04-01T16:04:52.471Z ::ffff:172.21.0.6: Ping +2026-04-01T16:04:57.482Z ::ffff:172.21.0.6: Ping +2026-04-01T16:05:02.488Z ::ffff:172.21.0.6: Ping +2026-04-01T16:05:07.483Z ::ffff:172.21.0.6: Ping +2026-04-01T16:05:12.486Z ::ffff:172.21.0.6: Ping +2026-04-01T16:05:17.476Z ::ffff:172.21.0.6: Ping +2026-04-01T16:05:22.485Z ::ffff:172.21.0.6: Ping +2026-04-01T16:05:22.808Z ::ffff:172.21.0.6: Ping +2026-04-01T16:05:27.483Z ::ffff:172.21.0.6: Ping +2026-04-01T16:05:32.471Z ::ffff:172.21.0.6: Ping +2026-04-01T16:05:37.479Z ::ffff:172.21.0.6: Ping +2026-04-01T16:05:42.476Z ::ffff:172.21.0.6: Ping +2026-04-01T16:05:47.482Z ::ffff:172.21.0.6: Ping +2026-04-01T16:05:52.474Z ::ffff:172.21.0.6: Ping +2026-04-01T16:05:57.478Z ::ffff:172.21.0.6: Ping +2026-04-01T16:06:02.469Z ::ffff:172.21.0.6: Ping +2026-04-01T16:06:07.484Z ::ffff:172.21.0.6: Ping +2026-04-01T16:06:12.478Z ::ffff:172.21.0.6: Ping +2026-04-01T16:06:17.468Z ::ffff:172.21.0.6: Ping +2026-04-01T16:06:22.482Z ::ffff:172.21.0.6: Ping +2026-04-01T16:06:22.824Z ::ffff:172.21.0.6: Ping +2026-04-01T16:06:27.484Z ::ffff:172.21.0.6: Ping +2026-04-01T16:06:32.469Z ::ffff:172.21.0.6: Ping +2026-04-01T16:06:37.481Z ::ffff:172.21.0.6: Ping +2026-04-01T16:06:42.482Z ::ffff:172.21.0.6: Ping +2026-04-01T16:06:47.482Z ::ffff:172.21.0.6: Ping +2026-04-01T16:06:52.480Z ::ffff:172.21.0.6: Ping +2026-04-01T16:06:57.473Z ::ffff:172.21.0.6: Ping +2026-04-01T16:07:02.477Z ::ffff:172.21.0.6: Ping +2026-04-01T16:07:07.478Z ::ffff:172.21.0.6: Ping +2026-04-01T16:07:12.480Z ::ffff:172.21.0.6: Ping +2026-04-01T16:07:17.477Z ::ffff:172.21.0.6: Ping +2026-04-01T16:07:22.482Z ::ffff:172.21.0.6: Ping +2026-04-01T16:07:22.821Z ::ffff:172.21.0.6: Ping +2026-04-01T16:07:27.473Z ::ffff:172.21.0.6: Ping +2026-04-01T16:07:32.480Z ::ffff:172.21.0.6: Ping +2026-04-01T16:07:37.480Z ::ffff:172.21.0.6: Ping +2026-04-01T16:07:42.479Z ::ffff:172.21.0.6: Ping +2026-04-01T16:07:47.480Z ::ffff:172.21.0.6: Ping +2026-04-01T16:07:52.471Z ::ffff:172.21.0.6: Ping +2026-04-01T16:07:57.470Z ::ffff:172.21.0.6: Ping +2026-04-01T16:08:02.475Z ::ffff:172.21.0.6: Ping +2026-04-01T16:08:07.477Z ::ffff:172.21.0.6: Ping +2026-04-01T16:08:12.484Z ::ffff:172.21.0.6: Ping +2026-04-01T16:08:17.471Z ::ffff:172.21.0.6: Ping +2026-04-01T16:08:22.471Z ::ffff:172.21.0.6: Ping +2026-04-01T16:08:22.812Z ::ffff:172.21.0.6: Ping +2026-04-01T16:08:27.471Z ::ffff:172.21.0.6: Ping +2026-04-01T16:08:32.479Z ::ffff:172.21.0.6: Ping +2026-04-01T16:08:37.478Z ::ffff:172.21.0.6: Ping +2026-04-01T16:08:42.479Z ::ffff:172.21.0.6: Ping +2026-04-01T16:08:47.481Z ::ffff:172.21.0.6: Ping +2026-04-01T16:08:52.483Z ::ffff:172.21.0.6: Ping +2026-04-01T16:08:57.558Z ::ffff:172.21.0.6: Ping +2026-04-01T16:09:02.477Z ::ffff:172.21.0.6: Ping +2026-04-01T16:09:07.476Z ::ffff:172.21.0.6: Ping +2026-04-01T16:09:12.473Z ::ffff:172.21.0.6: Ping +2026-04-01T16:09:17.472Z ::ffff:172.21.0.6: Ping +2026-04-01T16:09:22.482Z ::ffff:172.21.0.6: Ping +2026-04-01T16:09:22.822Z ::ffff:172.21.0.6: Ping +2026-04-01T16:09:27.471Z ::ffff:172.21.0.6: Ping +2026-04-01T16:09:32.477Z ::ffff:172.21.0.6: Ping +2026-04-01T16:09:37.480Z ::ffff:172.21.0.6: Ping diff --git a/public/app.js b/public/app.js new file mode 100755 index 0000000..b9d20a3 --- /dev/null +++ b/public/app.js @@ -0,0 +1,50 @@ +document.addEventListener('DOMContentLoaded', function() { + function updateStatus() { + fetch('/api/status') + .then(response => response.json()) + .then(data => { + // WebClients + const clientsUl = document.getElementById('clients'); + clientsUl.innerHTML = ''; + data.clients.forEach(client => { + const li = document.createElement('li'); + li.textContent = client; + clientsUl.appendChild(li); + }); + + // Sender + const sendersUl = document.getElementById('senderList'); + sendersUl.innerHTML = ''; + data.senders.forEach(sender => { + const li = document.createElement('li'); + li.textContent = `${sender.name}: ${sender.status}`; + sendersUl.appendChild(li); + }); + + // Letzte Commands + const commandsUl = document.getElementById('commandList'); + commandsUl.innerHTML = ''; + data.lastCommands.forEach(cmd => { + const li = document.createElement('li'); + li.textContent = cmd; + commandsUl.appendChild(li); + }); + + // Letzte Pings + const pingsUl = document.getElementById('pingList'); + pingsUl.innerHTML = ''; + data.lastPings.forEach(ping => { + const li = document.createElement('li'); + li.textContent = ping; + pingsUl.appendChild(li); + }); + }) + .catch(error => console.error('Error fetching status:', error)); + } + + // Initial load + updateStatus(); + + // Update every 5 seconds + setInterval(updateStatus, 5000); +}); \ No newline at end of file diff --git a/public/index.html b/public/index.html new file mode 100755 index 0000000..8ec1e2b --- /dev/null +++ b/public/index.html @@ -0,0 +1,35 @@ + + +
+ + +