diff --git a/.env.example b/.env.example index fa4c1039..bd6b892d 100644 --- a/.env.example +++ b/.env.example @@ -1,4 +1,6 @@ PORT=Port number of the server. (optional) +GOGO_CUSTOM_DOMAIN=Custom domain name for gogoanime (optional) (e.g. anitaku.so) +ZORO_CUSTOM_DOMAIN=Custom domain name for zoro (optional) (e.g. hianime.to) BILIBILI_COOKIE=Cookie for Bilibili (optional) PROXY=Proxies for requests (optional) (e.g. ["https://proxy1.com", "https://proxy2.com"]) REDIS_HOST=Redis host (optional) @@ -6,4 +8,4 @@ REDIS_PORT=Redis port (optional) REDIS_PASSWORD=Redis password (optional) NINE_ANIME_HELPER_URL=9anime (optional) TMDB_KEY=TMDB access token auth (optional) -NODE_ENV=Environment (optional) (DEMO or PROD) +NODE_ENV=Environment (optional) (DEMO or PROD) \ No newline at end of file diff --git a/README.md b/README.md index cb5c65b0..ec5ff677 100644 --- a/README.md +++ b/README.md @@ -78,6 +78,8 @@ Check out the `.env.example` file for more information. You can add `-d` flag to run the server in detached mode. +You can add `GOGO_CUSTOM_DOMAIN` and `ZORO_CUSTOM_DOMAIN` as custom domain configarations for gogoanime and zoro in your environment variables respectively, (optional). + ### Heroku Host your own instance of Consumet API on Heroku using the button below. diff --git a/src/main.ts b/src/main.ts index 30912af3..950cbae1 100644 --- a/src/main.ts +++ b/src/main.ts @@ -17,11 +17,7 @@ import Utils from './utils'; export const redis = process.env.REDIS_HOST && - new Redis({ - host: process.env.REDIS_HOST, - port: Number(process.env.REDIS_PORT), - password: process.env.REDIS_PASSWORD, - }); + new Redis(`rediss://default:${process.env.REDIS_PASSWORD}@${process.env.REDIS_HOST}:${process.env.REDIS_PORT}`); const fastify = Fastify({ maxParamLength: 1000, diff --git a/src/routes/anime/gogoanime.ts b/src/routes/anime/gogoanime.ts index 4a83be3a..42674a4a 100644 --- a/src/routes/anime/gogoanime.ts +++ b/src/routes/anime/gogoanime.ts @@ -6,7 +6,7 @@ import { redis } from '../../main'; import { Redis } from 'ioredis'; const routes = async (fastify: FastifyInstance, options: RegisterOptions) => { - const gogoanime = new ANIME.Gogoanime(); + const gogoanime = new ANIME.Gogoanime(process.env.GOGO_CUSTOM_DOMAIN); const redisCacheTime = 60 * 60; const redisPrefix = 'gogoanime:'; diff --git a/src/routes/anime/zoro.ts b/src/routes/anime/zoro.ts index 78f098be..8b97f1dc 100644 --- a/src/routes/anime/zoro.ts +++ b/src/routes/anime/zoro.ts @@ -3,7 +3,7 @@ import { ANIME } from '@consumet/extensions'; import { StreamingServers } from '@consumet/extensions/dist/models'; const routes = async (fastify: FastifyInstance, options: RegisterOptions) => { - const zoro = new ANIME.Zoro(); + const zoro = new ANIME.Zoro(process.env.ZORO_CUSTOM_DOMAIN); fastify.get('/', (_, rp) => { rp.status(200).send({ diff --git a/src/routes/meta/anilist.ts b/src/routes/meta/anilist.ts index 97aa1e1c..249ebd2c 100644 --- a/src/routes/meta/anilist.ts +++ b/src/routes/meta/anilist.ts @@ -310,7 +310,7 @@ const routes = async (fastify: FastifyInstance, options: RegisterOptions) => { '/watch/:episodeId', async (request: FastifyRequest, reply: FastifyReply) => { const episodeId = (request.params as { episodeId: string }).episodeId; - const provider = (request.query as { provider?: string }).provider; + const provider = (request.query as { provider?: string }).provider || 'gogoanime'; const server = (request.query as { server?: StreamingServers }).server; if (server && !Object.values(StreamingServers).includes(server))