Voraussetzungen
Damit Edomi als Progressive Web App (PWA) betrieben werden kann, sind folgende Voraussetzungen erforderlich:
Auf dem Edomi-System muss zunächst NGINX installiert und aktiviert werden:
Konfiguration von NGINX
Öffne die Konfigurationsdatei von NGINX mit folgendem Befehl:
Füge die folgenden Einträge hinzu oder passe bestehende an:
Hinweise:
Anpassung der Edomi-Visu
Öffne die Datei index.php unter folgendem Pfad:
Ersetze den gesamten <head>...</head>-Bereich durch den folgenden Code:
Speichere die Änderungen und schließe die Datei.
Aufruf der Edomi PWA
Nachdem die Einrichtung abgeschlossen ist, kann Edomi nun über folgende URL im Browser aufgerufen werden:
Installation als App
Windows:
image.png
image.png
Screenshot 2025-01-21 171614.jpg
Android (Google Chrome):
Nach erfolgreicher Installation kann die Edomi-Visualisierung bequem als eigenständige App genutzt werden.
Screenshot_20250121-170100.jpg
Damit Edomi als Progressive Web App (PWA) betrieben werden kann, sind folgende Voraussetzungen erforderlich:
- Ein gültiges SSL-Zertifikat
- Ein NGINX Reverse Proxy
Auf dem Edomi-System muss zunächst NGINX installiert und aktiviert werden:
Code:
yum install nginx systemctl enable nginx
Öffne die Konfigurationsdatei von NGINX mit folgendem Befehl:
Code:
nano /etc/nginx/nginx.conf
Code:
server { listen 443 ssl http2; server_name edomi.pc-service.at; ssl_certificate /etc/ssl/certs/edomi.pc-service.at-certificate-chain.pem; ssl_certificate_key /etc/ssl/certs/edomi.pc-service.at-privateKey.pem; ssl_session_cache builtin:1000 shared:SSL:10m; ssl_protocols TLSv1.1 TLSv1.2 TLSv1.3; ssl_ciphers HIGH:!aNULL:!eNULL:!EXPORT:!CAMELLIA:!DES:!MD5:!PSK:!RC4; ssl_prefer_server_ciphers on; client_max_body_size 50M; # Edomi Visu location /visu/ { sub_filter "WebSocket(serverProtocol+'://'+serverIp+':'+serverPort)" "WebSocket(serverProtocol+'://'+serverIp+':443/wss')"; sub_filter_types application/javascript; sub_filter_once off; proxy_pass http://10.11.2.251/visu/; } location /shared/ { proxy_pass http://10.11.2.251/shared/; } location /data/ { proxy_pass http://10.11.2.251/data/; } location /admin/ { proxy_pass http://10.11.2.251/admin/; } # Edomi Visu WebSocket location =/wss { proxy_http_version 1.1; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection "upgrade"; proxy_pass http://10.11.2.251:8080; } } }
- Ersetze edomi.pc-service.at durch deine eigene Subdomain.
- Trage bei ssl_certificate und ssl_certificate_key die entsprechenden Pfade zu deinem SSL-Zertifikat ein.
- Passe die IP-Adresse bei proxy_pass http:// an deine Edomi-Installation an.
Code:
systemctl restart nginx
Öffne die Datei index.php unter folgendem Pfad:
Code:
nano /usr/local/edomi/www/visu/index.php
Code:
<head> <script> const manifest = { name: 'SmartHome Kraml', short_name: 'SmartHome Kraml', display: 'standalone', theme_color: '#343434', background_color: '#343434', icons: [ { src: `${window.location.origin}/shared/img/favicon-visu.png`, sizes: '152x152', type: 'image/png' }, ], start_url: window.location.href }; const link = document.createElement('link'); link.rel = 'manifest'; link.href = `data:application/json;base64,${btoa(JSON.stringify(manifest))}`; document.head.appendChild(link); </script> <meta name="apple-mobile-web-app-capable" content="yes"> <meta name="mobile-web-app-capable" content="yes"> <meta name="format-detection" content="telephone=no"> <meta id="meta-viewport" name="viewport" content="user-scalable=no, width=device-width, initial-scale=1.0"> <meta name="apple-mobile-web-app-status-bar-style" content="black"> <link rel="icon" href="../shared/img/favicon-visu.png?<?echo global_version;?>"> <link rel="apple-touch-icon" href="../shared/img/favicon-visu.png?<?echo global_version;?>"> <title>EDOMI · Visualisierung</title> <link rel="stylesheet" type="text/css" href="../shared/css/global.css?<?echo global_version;?>"> <link rel="stylesheet" type="text/css" href="include/css/main.css?<?echo global_version;?>"> <script type="text/javascript" src="../shared/js/main.js?<?echo global_version;?>"></script> <script type="text/javascript" src="../shared/js/camview.js?<?echo global_version;?>"></script> <script type="text/javascript" src="../shared/js/camview_global.js?<?echo global_version;?>"></script> <script type="text/javascript" src="../shared/js/graphics.js?<?echo global_version;?>"></script> <script type="text/javascript" src="include/js/main.js?<?echo global_version;?>"></script> <style id="cssAnims"></style> <style id="cssFonts"></style> </head>
Aufruf der Edomi PWA
Nachdem die Einrichtung abgeschlossen ist, kann Edomi nun über folgende URL im Browser aufgerufen werden:
Code:
https://SUBDOMAIN/visu/?visu=1&login=surface&pass=surface
Windows:
- Rufe die oben genannte URL in einem modernen Browser (z. B. Chrome oder Edge) auf.
- Klicke auf das Menü (drei Punkte oben rechts).
- Wähle "App installieren" oder "Zur Taskleiste anheften".
image.png
image.png
Screenshot 2025-01-21 171614.jpg
Android (Google Chrome):
- Öffne die URL im Google Chrome Browser.
- Tippe auf die drei Punkte oben rechts.
- Wähle "Zum Startbildschirm hinzufügen".
Nach erfolgreicher Installation kann die Edomi-Visualisierung bequem als eigenständige App genutzt werden.
Screenshot_20250121-170100.jpg