api/config: add CUSTOM_INNERTUBE_CLIENT env

This commit is contained in:
wukko 2025-03-14 08:53:26 +06:00
parent aba23f8655
commit e10fad3d4e
No known key found for this signature in database
GPG key ID: 3E30B3F26C7B4AA2

View file

@ -1,3 +1,4 @@
import { Constants } from "youtubei.js";
import { getVersion } from "@imput/version-info";
import { services } from "./processing/service-config.js";
import { supportsReusePort } from "./misc/cluster.js";
@ -52,6 +53,7 @@ const env = {
keyReloadInterval: 900,
enabledServices,
customInnertubeClient: process.env.CUSTOM_INNERTUBE_CLIENT,
}
const genericUserAgent = "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/114.0.0.0 Safari/537.36";
@ -74,6 +76,12 @@ if (env.instanceCount > 1 && !env.redisURL) {
throw new Error('SO_REUSEPORT is not supported');
}
if (env.customInnertubeClient && !Constants.SUPPORTED_CLIENTS.includes(env.customInnertubeClient)) {
console.error("CUSTOM_INNERTUBE_CLIENT is invalid. Provided client is not supported.");
console.error(`Supported clients are: ${Constants.SUPPORTED_CLIENTS.join(', ')}\n`);
throw new Error("Invalid CUSTOM_INNERTUBE_CLIENT");
}
export {
env,
genericUserAgent,