Hallo Zusammen,
habe SmartHomeNG in der aktuellen stable-Version mit SmartVISU 2.8 am laufen. Das ganze hinter einem reverse-Proxy mit Zertifikat-Zugang von lets-encrypt und SSL-Verschlüsselung.
Um das ganze System auch von extern zugänglich zu bekommen und die SSL-Verschlüsselung funktionsfähig zu bekommen, hatte ich bei der SmartVISU die ./driver/io_smarthome.py.js folgendermaßen angepasst:
Der reverse-Proxy ist so konfiguriert, dass er das /ws/ automatisch auf den richtigen Port umleitet.
Wenn ich dies auch händisch in die "io_smarthome.py.min.js" einfüge, dann funktioniert auch alles.
Die Tests dafür stellten sich jedoch als schwierig dar, da ich somit alle Änderungen in die .min.js händisch einfügen musste und diese nicht sehr übersichtlich ist.
Der Versuch diese automatisch mit der make.php generieren zu lassen scheiterte bisweilen immer mit folgendem Fehler:
Kann mir jemand helfen, wodurch der Fehler ausgelöst wird, oder wie ich die Ursache ausfindig machen und beheben kann?
Ich hoffe die nötigen Infos geliefert zu haben, wenn noch mehr benötigt werden, bitte Fragen.
habe SmartHomeNG in der aktuellen stable-Version mit SmartVISU 2.8 am laufen. Das ganze hinter einem reverse-Proxy mit Zertifikat-Zugang von lets-encrypt und SSL-Verschlüsselung.
Um das ganze System auch von extern zugänglich zu bekommen und die SSL-Verschlüsselung funktionsfähig zu bekommen, hatte ich bei der SmartVISU die ./driver/io_smarthome.py.js folgendermaßen angepasst:
Code:
open: function () { var socketproto = "ws:"; if (window.location.protocol == "https:") { socketproto = 'wss:'; } if (io.port == "80" || io.port == "443") { io.socket = new WebSocket(socketproto + '//' + io.address + '/ws/'); } } else { io.socket = new WebSocket(socketproto + '//' + io.address + ':' + io.port + '/ws/'); } //io.socket = new WebSocket('ws://' + io.address + ':' + io.port + '/');
Wenn ich dies auch händisch in die "io_smarthome.py.min.js" einfüge, dann funktioniert auch alles.
Die Tests dafür stellten sich jedoch als schwierig dar, da ich somit alle Änderungen in die .min.js händisch einfügen musste und diese nicht sehr übersichtlich ist.
Der Versuch diese automatisch mit der make.php generieren zu lassen scheiterte bisweilen immer mit folgendem Fehler:
Code:
PHP Deprecated: Methods with the same name as their class will not be constructors in a future version of PHP; PhpClosure has a deprecated constructor in /var/www/html/smartVISU/vendor/google.closure/php-closure.php on line 34 <pre> smart[VISU] 21:05, 27.09 -------------------------------------------------------------------------------- <b>lib/base/base.js</b> PHP Fatal error: Uncaught Exception: String could not be parsed as XML in /var/www/html/smartVISU/vendor/google.closure/php-closure.php:485 Stack trace: #0 /var/www/html/smartVISU/vendor/google.closure/php-closure.php(485): SimpleXMLElement->__construct('') #1 /var/www/html/smartVISU/vendor/google.closure/php-closure.php(281): PhpClosure->_parseXml('') #2 /var/www/html/smartVISU/make.php(68): PhpClosure->_compile() #3 /var/www/html/smartVISU/make.php(22): compile('lib/base/base.j...') #4 {main} thrown in /var/www/html/smartVISU/vendor/google.closure/php-closure.php on line 485
Ich hoffe die nötigen Infos geliefert zu haben, wenn noch mehr benötigt werden, bitte Fragen.
Kommentar