From f46b56f6066b72492305ba707f9008b70e596e6d Mon Sep 17 00:00:00 2001 From: DebaucheryLibrarian Date: Fri, 20 Mar 2026 23:01:57 +0100 Subject: [PATCH] Updated unprint, integrated remote browser. Updated Kink affiliate URLs. --- config/default.js | 6 +-- package-lock.json | 105 ++++++++++++++++++++++++++++++++++++++--- package.json | 2 +- seeds/06_affiliates.js | 24 +++++----- src/app.js | 10 +--- 5 files changed, 116 insertions(+), 31 deletions(-) diff --git a/config/default.js b/config/default.js index 6d0f0ad2..d24bcdaf 100755 --- a/config/default.js +++ b/config/default.js @@ -231,10 +231,10 @@ module.exports = { ], }, remote: { - enabled: false, - address: 'http://10.0.0.1:3333', + enable: false, + use: false, + address: 'ws://10.0.0.1:3333/browser', key: null, - methods: ['browser'], }, cloudflare: { enable: false, diff --git a/package-lock.json b/package-lock.json index 4586adab..b5e31846 100644 --- a/package-lock.json +++ b/package-lock.json @@ -94,7 +94,7 @@ "tunnel": "0.0.6", "ua-parser-js": "^1.0.37", "undici": "^5.28.1", - "unprint": "^0.19.4", + "unprint": "^0.19.8", "url-pattern": "^1.0.3", "v-tooltip": "^2.1.3", "video.js": "^8.6.1", @@ -9559,6 +9559,40 @@ "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" }, + "node_modules/express-ws": { + "version": "5.0.2", + "resolved": "https://registry.npmjs.org/express-ws/-/express-ws-5.0.2.tgz", + "integrity": "sha512-0uvmuk61O9HXgLhGl3QhNSEtRsQevtmbL94/eILaliEADZBHZOQUAiHFrGPrgsjikohyrmSG5g+sCfASTt0lkQ==", + "dependencies": { + "ws": "^7.4.6" + }, + "engines": { + "node": ">=4.5.0" + }, + "peerDependencies": { + "express": "^4.0.0 || ^5.0.0-alpha.1" + } + }, + "node_modules/express-ws/node_modules/ws": { + "version": "7.5.10", + "resolved": "https://registry.npmjs.org/ws/-/ws-7.5.10.tgz", + "integrity": "sha512-+dbF1tHwZpXcbOJdVOkzLDxZP1ailvSxM6ZweXTegylPny803bFhA+vqBYw4s31NSAk4S2Qz+AKXK9a4wkdjcQ==", + "engines": { + "node": ">=8.3.0" + }, + "peerDependencies": { + "bufferutil": "^4.0.1", + "utf-8-validate": "^5.0.2" + }, + "peerDependenciesMeta": { + "bufferutil": { + "optional": true + }, + "utf-8-validate": { + "optional": true + } + } + }, "node_modules/express/node_modules/body-parser": { "version": "1.20.1", "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.20.1.tgz", @@ -10996,6 +11030,14 @@ "node": ">= 14" } }, + "node_modules/human-readable-ids": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/human-readable-ids/-/human-readable-ids-1.0.4.tgz", + "integrity": "sha512-h1zwThTims8A/SpqFGWyTx+jG1+WRMJaEeZgbtPGrIpj2AZjsOgy8Y+iNzJ0yAyN669Q6F02EK66WMWcst+2FA==", + "dependencies": { + "knuth-shuffle": "^1.0.0" + } + }, "node_modules/human-signals": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-2.1.0.tgz", @@ -12548,6 +12590,11 @@ "node": ">=8" } }, + "node_modules/knuth-shuffle": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/knuth-shuffle/-/knuth-shuffle-1.0.8.tgz", + "integrity": "sha512-IdC4Hpp+mx53zTt6VAGsAtbGM0g4BV9fP8tTcviCosSwocHcRDw9uG5Rnv6wLWckF4r72qeXFoK9NkvV1gUJCQ==" + }, "node_modules/kuler": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/kuler/-/kuler-2.0.0.tgz", @@ -16882,6 +16929,28 @@ "url": "https://github.com/sponsors/jonschlinkert" } }, + "node_modules/pidtree": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/pidtree/-/pidtree-0.6.0.tgz", + "integrity": "sha512-eG2dWTVw5bzqGRztnHExczNxt5VGsE6OwTeCG3fdUf9KBsZzO3R5OIIIzWR+iZA0NtZ+RDVdaoE2dK1cn6jH4g==", + "bin": { + "pidtree": "bin/pidtree.js" + }, + "engines": { + "node": ">=0.10" + } + }, + "node_modules/pidusage": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/pidusage/-/pidusage-4.0.1.tgz", + "integrity": "sha512-yCH2dtLHfEBnzlHUJymR/Z1nN2ePG3m392Mv8TFlTP1B0xkpMQNHAnfkY0n2tAi6ceKO6YWhxYfZ96V4vVkh/g==", + "dependencies": { + "safe-buffer": "^5.2.1" + }, + "engines": { + "node": ">=18" + } + }, "node_modules/pify": { "version": "4.0.1", "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", @@ -20599,9 +20668,9 @@ } }, "node_modules/unprint": { - "version": "0.19.4", - "resolved": "https://registry.npmjs.org/unprint/-/unprint-0.19.4.tgz", - "integrity": "sha512-n+s9eNeVPmJO4Qs3qiyCcoH6SE/jAnnYJDOa18OA5//jFrEppRnt9bbwbGTXYnt7ZIsDMXU6ZZBf5crOCHu6+g==", + "version": "0.19.8", + "resolved": "https://registry.npmjs.org/unprint/-/unprint-0.19.8.tgz", + "integrity": "sha512-xaNyu/y4eWmLnCYNa4Ij/tSID26XPMEDGSvkk/JfmAaF6Sh9tse8JLTKFukOsUkeVkOMfzxGveDZr4ZziTOebQ==", "dependencies": { "bottleneck": "^2.19.5", "cookie": "^1.1.1", @@ -20610,15 +20679,19 @@ "eslint": "^8.17.0", "eslint-config-airbnb": "^19.0.4", "eslint-config-airbnb-base": "^15.0.0", + "express-ws": "^5.0.2", + "human-readable-ids": "^1.0.4", "jsdom": "^17.0.0", - "minimist": "^1.2.8", "moment-timezone": "^0.5.34", "object-hash": "^3.0.0", "patchright": "^1.56.1", + "pidtree": "^0.6.0", + "pidusage": "^4.0.1", "set-cookie-parser": "^3.0.1", "srcset": "^4.0.0", "tunnel": "^0.0.6", - "undici": "^7.18.2" + "undici": "^7.18.2", + "ws": "^8.19.0" }, "optionalDependencies": { "express": "^5.2.1" @@ -21279,6 +21352,26 @@ "node": ">=12" } }, + "node_modules/unprint/node_modules/ws": { + "version": "8.19.0", + "resolved": "https://registry.npmjs.org/ws/-/ws-8.19.0.tgz", + "integrity": "sha512-blAT2mjOEIi0ZzruJfIhb3nps74PRWTCz1IjglWEEpQl5XS/UNama6u2/rjFkDDouqr4L67ry+1aGIALViWjDg==", + "engines": { + "node": ">=10.0.0" + }, + "peerDependencies": { + "bufferutil": "^4.0.1", + "utf-8-validate": ">=5.0.2" + }, + "peerDependenciesMeta": { + "bufferutil": { + "optional": true + }, + "utf-8-validate": { + "optional": true + } + } + }, "node_modules/unprint/node_modules/xml-name-validator": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/xml-name-validator/-/xml-name-validator-3.0.0.tgz", diff --git a/package.json b/package.json index d5eab02b..3a31194c 100755 --- a/package.json +++ b/package.json @@ -153,7 +153,7 @@ "tunnel": "0.0.6", "ua-parser-js": "^1.0.37", "undici": "^5.28.1", - "unprint": "^0.19.4", + "unprint": "^0.19.8", "url-pattern": "^1.0.3", "v-tooltip": "^2.1.3", "video.js": "^8.6.1", diff --git a/seeds/06_affiliates.js b/seeds/06_affiliates.js index 64fa5c92..5032742a 100755 --- a/seeds/06_affiliates.js +++ b/seeds/06_affiliates.js @@ -763,42 +763,42 @@ const affiliates = [ // kink { network: 'kink', - url: 'https://www.c4cgmn8trk.com/G483KW96H/225JFQ', + url: 'https://www.dfrs31kg.com/G483KW96H/225JFQ', comment: '50%', parameters: { - dynamicScene: 'https://www.c4cgmn8trk.com/G483KW96H/225JFQ/?uid=18&ef_page={scenePath}', - dynamicEntity: 'https://www.c4cgmn8trk.com/G483KW96H/225JFQ/?uid=18&ef_page={entityPath}', + dynamicScene: 'https://www.dfrs31kg.com/G483KW96H/225JFQ/?uid=18&ef_page={scenePath}', + dynamicEntity: 'https://www.dfrs31kg.com/G483KW96H/225JFQ/?uid=18&ef_page={entityPath}', prefixSlash: false, }, }, { channel: 'kinktrans', - url: 'https://www.c4cgmn8trk.com/G483KW96H/XCQZJ/', + url: 'https://www.dfrs31kg.com/G483KW96H/XCQZJ/', comment: '50%', parameters: { - dynamicScene: 'https://www.c4cgmn8trk.com/G483KW96H/XCQZJ/?uid=21&ef_page={scenePath}', - dynamicEntity: 'https://www.c4cgmn8trk.com/G483KW96H/XCQZJ/?uid=21&ef_page={entityPath}', + dynamicScene: 'https://www.dfrs31kg.com/G483KW96H/XCQZJ/?uid=21&ef_page={scenePath}', + dynamicEntity: 'https://www.dfrs31kg.com/G483KW96H/XCQZJ/?uid=21&ef_page={entityPath}', prefixSlash: false, }, }, { network: 'kinkmen', - url: 'https://www.c4cgmn8trk.com/G483KW96H/SL1HB/', + url: 'https://www.dfrs31kg.com/G483KW96H/SL1HB/', comment: '50%', parameters: { - dynamicScene: 'https://www.c4cgmn8trk.com/G483KW96H/SL1HB/?uid=20&ef_page={scenePath}', - dynamicEntity: 'https://www.c4cgmn8trk.com/G483KW96H/SL1HB/?uid=20&ef_page={entityPath}', + dynamicScene: 'https://www.dfrs31kg.com/G483KW96H/SL1HB/?uid=20&ef_page={scenePath}', + dynamicEntity: 'https://www.dfrs31kg.com/G483KW96H/SL1HB/?uid=20&ef_page={entityPath}', prefixSlash: false, }, }, { channel: 'kinkvr', - url: 'https://www.c4cgmn8trk.com/G483KW96H/PS824/', + url: 'https://www.dfrs31kg.com/G483KW96H/PS824/', comment: '50%', parameters: { // no dedicated scene pages, use Kink main - dynamicScene: 'https://www.c4cgmn8trk.com/G483KW96H/225JFQ/?uid=18&ef_page={scenePath}', - dynamicEntity: 'https://www.c4cgmn8trk.com/G483KW96H/225JFQ/?uid=18&ef_page={entityPath}', + dynamicScene: 'https://www.dfrs31kg.com/G483KW96H/225JFQ/?uid=18&ef_page={scenePath}', + dynamicEntity: 'https://www.dfrs31kg.com/G483KW96H/225JFQ/?uid=18&ef_page={entityPath}', prefixSlash: false, }, }, diff --git a/src/app.js b/src/app.js index 6f7bfebb..5f6c055f 100755 --- a/src/app.js +++ b/src/app.js @@ -38,7 +38,7 @@ const unprintOptions = { browserUserAgent: 'Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/141.0.0.0 Safari/537.36', apiUserAgent: 'traxxx', clientRetirement: config.bypass.browser.clientRetirement, - // remote: config.bypass.remote, + remote: config.bypass.remote, limits: { ...config.limits, default: { @@ -124,14 +124,6 @@ async function testProxy() { throw new Error(`Proxy is offline (${res.status})`); } } - - if (unprintOptions.remote.enable) { - await unprint.post(`${unprintOptions.remote.address}/options`, unprintOptions, { - headers: { - 'unprint-key': unprintOptions.remote.key, - }, - }); - } } async function init() {