Beschreibung:
Dieses Skript dient zum Anlegen eines Reverse-Proxy-Frontend-Eintrag mit websocket-Unterstützung.
Liste der verwendeten Variablen:
Variable | Beschreibung |
---|
connection | (Optional) kann hier eine WAN-Verbindung angegeben werden. Wird eine angegeben, so muss auf diese referenziert werden wie im Beispiel angegeben. |
backend | (Pflicht) Hier muss auf den Namen des gewünschten und zuvor erstellten Backendeintrags referenziert werden. |
websocket | (Optional) Websocket-Unterstützung. Kann mit true eingeschaltet und mit false ausgeschaltet werden. |
certificateUid | Wenn ssl auf true steht und letsEncrypt NICHT gesetzt ist, muss hier eine Referenz zum commonName des hinterlegten Zertifikats angegeben werden. Wird SSL nicht verwendet oder Let's Encrypt wird verwendet, kann das Feld mit "" leer gelassen werden. |
keyPassword | Wird auf ein Zertifikat referenziert, muss hier der entsprechende Private Key zur Validierung angegeben werden. |
Add-in Code:
/** * @param {Config} config * @param {Context} context * Do not edit this comment or parameter types. Required for code suggestions */ exports.main = function (config, context) { const ufApi = config.getUfApi(); var fwVersion = context.device.firmwareVersionObject; if (fwVersion.patch >= 7304 ) // LCOS FX 10.13 REL { ufApi.createObject( 'reverse-proxy-frontends' , { "domain" : "dasisteintest.de" , "active" : true , "connection" : ufApi.lookupField( "connections" , "uniqueId" , { "name" : "WAN" }), // WAN-connection as a filter, if whished "proxiedPaths" : [ { "backend" : ufApi.lookupField( "reverse-proxy-backends" , "uniqueId" , { "name" : "Testserver" }), // Name of the backend server entry "url" : "/" , "websocket" : true } ], "blockedPaths" : [], "port" : 443 , "ssl" : true , "letsEncrypt" : false , "certificateUid" : ufApi.lookupField( "certificates" , "uniqueId" , { "commonName" : "FrontendCert" }), // commonName of the used certificate "outlook" : false , "backendType" : "custom" , "httpRedirect" : false , "keyPassword" : "MyCertPassword" } ); } else { config.infoLog( "Cannot set Reverse-Proxy-Frontend entry. Websockets via REST-API is supported since LCOS FX 10.13 REL" ) } }; |
---|
Add-in als JSON-Datei:
reverse_proxy_websocket.json