add wtvchat://

(and unofficial irc://)
This commit is contained in:
zefie
2022-11-30 21:25:38 -05:00
parent 2cde307e20
commit 3dbb258b8f
5 changed files with 74 additions and 33 deletions

View File

@@ -0,0 +1,21 @@
var minisrv_service_file = true;
var urldata = request_headers.request_url.split(":");
delete urldata[0];
urldata = urldata.join(":").substring(1);
console.log(urldata);
while (urldata.substring(0, 1) == "/") urldata = urldata.substring(1);
var server = urldata.split('/')[0];
var port = 6667;
if (server.indexOf(":") > 0) {
port = server.split(":")[1];
server = server.split(":")[0];
}
channel = urldata.split('/')[1]
var dest_url = "wtv-chat:/MakeChatPage?host=" + server + "&port=" + port + "&channel=" + channel;
headers = `300 Moved
Location: ${dest_url}`

View File

@@ -855,6 +855,40 @@ class WTVShared {
});
}
isConfiguredService(service) {
if (this.minisrv_config.services[service]) {
if (!this.minisrv_config.services[service].disabled) return true;
}
return false;
}
getServiceString(service, overrides = {}) {
// used externally by service scripts
if (service === "all") {
var self = this;
var out = "";
Object.keys(this.minisrv_config.services).sort().forEach(function (k) {
if (!self.isConfiguredService(k)) return true;
if (self.minisrv_config.services[k].pc_services) return true;
if (overrides.exceptions) {
Object.keys(overrides.exceptions).forEach(function (j) {
if (k != overrides.exceptions[j]) out += self.minisrv_config.services[k].toString(overrides) + "\n";
});
} else {
out += self.minisrv_config.services[k].toString(overrides) + "\n";
}
});
return out;
} else {
if (!this.minisrv_config.services[service]) {
throw ("SERVICE ERROR: Attempted to provision unconfigured service: " + service)
} else {
return this.minisrv_config.services[service].toString(overrides);
}
}
}
doErrorPage(code, data = null, details = null, pc_mode = false, wtv_reset = false) {
var headers = null;
var minisrv_config = this.minisrv_config;

View File

@@ -209,6 +209,17 @@
"port": 1630,
"connections": 3
},
"wtvchat": {
"port": 1630,
"nobind": true,
"flags": "0x00000004"
},
"irc": {
"port": 1630,
"nobind": true,
"flags": "0x00000004",
"servicevault_dir": "wtvchat"
},
"wtv-disk": {
// wtv-disk (used for DiskMaps)
"port": 1635,