mirror of
https://git.mirrors.martin98.com/https://github.com/sub-store-org/Sub-Store.git
synced 2025-08-11 21:09:05 +08:00
Add script demo
This commit is contained in:
parent
d8129de848
commit
535a20bd90
@ -236,7 +236,6 @@ async function parseSub(sub, platform) {
|
|||||||
} else {
|
} else {
|
||||||
proxies = processFilter(filter(item.args), proxies);
|
proxies = processFilter(filter(item.args), proxies);
|
||||||
}
|
}
|
||||||
|
|
||||||
} catch (err) {
|
} catch (err) {
|
||||||
$.error(`Failed to apply filter "${item.type}"!\n REASON: ${err}`);
|
$.error(`Failed to apply filter "${item.type}"!\n REASON: ${err}`);
|
||||||
}
|
}
|
||||||
@ -940,7 +939,7 @@ function URI_VMess() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
// handle scert
|
// handle scert
|
||||||
if (proxy.tls && params['"tls-verification"'] === 'false') {
|
if (proxy.tls && params['"tls-verification"'] === "false") {
|
||||||
proxy.scert = true;
|
proxy.scert = true;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -1719,14 +1718,22 @@ function Surge_Producer() {
|
|||||||
}`;
|
}`;
|
||||||
}
|
}
|
||||||
if (proxy.tls) {
|
if (proxy.tls) {
|
||||||
config += `${typeof proxy.scert !== 'undefined' ? ",skip-cert-verify=" + proxy.scert : ""}`
|
config += `${
|
||||||
|
typeof proxy.scert !== "undefined"
|
||||||
|
? ",skip-cert-verify=" + proxy.scert
|
||||||
|
: ""
|
||||||
|
}`;
|
||||||
config += proxy.sni ? `,sni=${proxy.sni}` : "";
|
config += proxy.sni ? `,sni=${proxy.sni}` : "";
|
||||||
}
|
}
|
||||||
return config;
|
return config;
|
||||||
case "trojan":
|
case "trojan":
|
||||||
return `${proxy.name}=trojan,${proxy.server},${proxy.port},password=${
|
return `${proxy.name}=trojan,${proxy.server},${proxy.port},password=${
|
||||||
proxy.password
|
proxy.password
|
||||||
}${typeof proxy.scert !== "undefined" ? ",skip-cert-verify=" + proxy.scert : ""}${proxy.sni ? ",sni=" + proxy.sni : ""},tfo=${proxy.tfo || "false"}`;
|
}${
|
||||||
|
typeof proxy.scert !== "undefined"
|
||||||
|
? ",skip-cert-verify=" + proxy.scert
|
||||||
|
: ""
|
||||||
|
}${proxy.sni ? ",sni=" + proxy.sni : ""},tfo=${proxy.tfo || "false"}`;
|
||||||
case "http":
|
case "http":
|
||||||
tls_opts = ",tls=false";
|
tls_opts = ",tls=false";
|
||||||
if (proxy.tls) {
|
if (proxy.tls) {
|
||||||
@ -2010,7 +2017,7 @@ function ScriptOperator(script) {
|
|||||||
} else if (item.name.indexOf("Operator") !== -1) {
|
} else if (item.name.indexOf("Operator") !== -1) {
|
||||||
return processFilter(item, proxies);
|
return processFilter(item, proxies);
|
||||||
}
|
}
|
||||||
}
|
};
|
||||||
eval(script);
|
eval(script);
|
||||||
output = operator(proxies);
|
output = operator(proxies);
|
||||||
})();
|
})();
|
||||||
|
@ -1,10 +1,17 @@
|
|||||||
function operator(proxies) {
|
function operator(proxies) {
|
||||||
const counter = {};
|
const counter = {};
|
||||||
return proxies.map(p => {
|
const increment = {};
|
||||||
if (!counter[p.name]) counter[p.name] = 0;
|
proxies.forEach((p) => {
|
||||||
++counter[p.name];
|
if (typeof counter[p.name] === 'undefined') counter[p.name] = 1;
|
||||||
const num = "00000" + counter[p.name];
|
else counter[p.name]++;
|
||||||
p.name = p.name + " " + num.substr(num.length-2);
|
});
|
||||||
|
console.log(counter);
|
||||||
|
return proxies.map((p) => {
|
||||||
|
if (counter[p.name] > 1) {
|
||||||
|
if (typeof increment[p.name] === "undefined") increment[p.name] = 1;
|
||||||
|
const num = "00000" + increment[p.name]++;
|
||||||
|
p.name = p.name + " " + num.substr(num.length - 2);
|
||||||
|
}
|
||||||
return p;
|
return p;
|
||||||
});
|
});
|
||||||
}
|
}
|
3
scripts/udp-filter.js
Normal file
3
scripts/udp-filter.js
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
function filter(proxies) {
|
||||||
|
return proxies.map(p => p.udp);
|
||||||
|
}
|
Loading…
x
Reference in New Issue
Block a user