- define a catchall name to run globally or per service - catchall must be javascript, but not necessarily a .js file - catchall can request async mode - catchall will catch any non-existing requests under its directory - see wtv-flashrom:/content/content-serve.js as an example, which will catch wtv-flashrom:/content/ URLs. - http pc: sends HTTP/1.0 to PC clients - can be disabled with `pc_server_hidden_service_enabled`: false - can change servicevault path by changing string of pc_server_hidden_service - get.js in default PC service vault to get any WTV Url on the service
24 lines
1.1 KiB
JavaScript
24 lines
1.1 KiB
JavaScript
const WTVFlashrom = require("./WTVFlashrom.js");
|
|
request_is_async = true;
|
|
console.log(request_headers);
|
|
|
|
var bf0app_update = false;
|
|
var request_path = request_headers.request_url.replace(service_name + ":/", "");
|
|
var romtype = ssid_sessions[socket.ssid].get("wtv-client-rom-type");
|
|
var bootver = ssid_sessions[socket.ssid].get("wtv-client-bootrom-version")
|
|
|
|
if ((romtype == "bf0app" || !romtype) && (bootver == "105" || !bootver)) {
|
|
// assume old classic in flash mode, override user setting and send tellyscript
|
|
// because it is required to proceed in flash mode
|
|
bf0app_update = true;
|
|
ssid_sessions[socket.ssid].set("bf0app_update", bf0app_update);
|
|
}
|
|
|
|
if (!ssid_sessions[socket.ssid].data_store.WTVFlashrom) {
|
|
ssid_sessions[socket.ssid].data_store.WTVFlashrom = new WTVFlashrom(service_vaults, service_name, minisrv_config.services[service_name].use_zefie_server, bf0app_update, minisrv_config.services[service_name].debug);
|
|
}
|
|
|
|
ssid_sessions[socket.ssid].data_store.WTVFlashrom.getFlashRom(request_path, function (data, headers) {
|
|
sendToClient(socket, headers, data);
|
|
});
|