import "dotenv/config"; const config = { LOG_LEVEL: process.env.LOG_LEVEL ?? "debug", REDIS_CONN: process.env.REDIS_CONN ?? "redis://localhost:6379/10", PUPPETEER_URL: process.env.PUPPETEER_URL ?? "http://localhost:8000/api/v1/visit", MASTODON_URL: process.env.MASTODON_URL ?? "https://mastodon.cl", MASTODON_API_URL: process.env.MASTODON_API_URL ?? "https://mastodon.cl/api/v1/", MASTODON_STREAMING_URL: process.env.MASTODON_STREAMING_URL ?? "wss://mastodon.cl/api/v1/streaming", IMG_PLACEHOLDER: process.env.IMG_PLACEHOLDER ?? "https://placehold.co/600x400", DEFAULT_TIMEZONE: process.env.DEFAULT_TIMEZONE ?? "America/Santiago", DEFAULT_LOCALE: process.env.DEFAULT_LOCALE ?? "es-CL", MASTODON_DB_HOST: process.env.MASTODON_DB_HOST, MASTODON_DB_USER: process.env.MASTODON_DB_USER, MASTODON_DB_PASSWORD: process.env.MASTODON_DB_PASSWORD, MASTODON_DB_DATABASE: process.env.MASTODON_DB_DATABASE, // PORTALES HORAS24: process.env["24HORAS"] ?? "https://www.24horas.cl/", ADNRADIO: process.env.ADNRADIO ?? "https://www.adnradio.cl/", BIOBIOCHILE: process.env.BIOBIOCHILE ?? "https://www.biobiochile.cl/", CAMBIO21: process.env.CAMBIO21 ?? "https://cambio21.cl/", CHILECULTURA: process.env.CHILECULTURA ?? "https://chilecultura.gob.cl/", CIPER: process.env.CIPER ?? "https://www.ciperchile.cl/actualidad/", CODEXVERDE: process.env.CODEXVERDE ?? "https://codexverde.cl/", CONTRAPODER: process.env.CONTRAPODER ?? "https://contrapoderchile.cl/category/portada/", COOPERATIVA: process.env.COOPERATIVA ?? "https://www.cooperativa.cl/", CNNCHILE: process.env.CNNCHILE ?? "https://www.cnnchile.com/", DF: process.env.DF ?? "https://www.df.cl/ultimasnoticias", ELCIUDADANO: process.env.ELCIUDADANO ?? "https://www.elciudadano.com/chile/", ELDESCONCIERTO: process.env.ELDESCONCIERTO ?? "https://eldesconcierto.cl", ELMOSTRADOR: process.env.ELMOSTRADOR ?? "https://www.elmostrador.cl/categoria/dia/", ELSIGLO: process.env.ELSIGLO ?? "https://elsiglo.cl/", EMOL: process.env.EMOL ?? "https://www.emol.com", FASTCHECK: process.env.FASTCHECK ?? "https://www.fastcheck.cl/category/chequeo/", GLACIARESCHILENOS: process.env.GLACIARESCHILENOS ?? "https://www.glaciareschilenos.org/articulos/", INTERFERENCIA: process.env.INTERFERENCIA ?? "https://interferencia.cl/", LADERASUR: process.env.LADERASUR ?? "https://laderasur.com/", LAHORA: process.env.LAHORA ?? "https://lahora.cl/", LAVOZDELOSQUESOBRAN: process.env.LAVOZDELOSQUESOBRAN ?? "https://lavozdelosquesobran.cl/", LANACION: process.env.LANACION ?? "https://www.lanacion.cl/", LATERCERA: process.env.LATERCERA ?? "https://www.latercera.com/canal/nacional/", METEORED: process.env.METEORED ?? "https://www.meteored.cl/", RESUMEN: process.env.RESUMEN ?? "https://resumen.cl/", SISMOLOGIA: process.env.SISMOLOGIA ?? "https://www.sismologia.cl/index.html", TARREO: process.env.TARREO ?? "https://www.tarreo.com/noticias/", THECLINIC: process.env.THECLINIC ?? "https://www.theclinic.cl/lo-ultimo/", // KEYS MASTODON_KEY_24HORAS: process.env.MASTODON_KEY_24HORAS ?? "", MASTODON_KEY_ADNRADIO: process.env.MASTODON_KEY_ADNRADIO ?? "", MASTODON_KEY_BIOBIOCHILE: process.env.MASTODON_KEY_BIOBIOCHILE ?? "", MASTODON_KEY_CAMBIO21: process.env.MASTODON_KEY_CAMBIO21 ?? "", MASTODON_KEY_CHILECULTURA: process.env.MASTODON_KEY_CHILECULTURA ?? "", MASTODON_KEY_CIPER: process.env.MASTODON_KEY_CIPER ?? "", MASTODON_KEY_CODEXVERDE: process.env.MASTODON_KEY_CODEXVERDE ?? "", MASTODON_KEY_CNNCHILE: process.env.MASTODON_KEY_CNNCHILE ?? "", MASTODON_KEY_CONTRAPODER: process.env.MASTODON_KEY_CONTRAPODER ?? "", MASTODON_KEY_COOPERATIVA: process.env.MASTODON_KEY_COOPERATIVA ?? "", MASTODON_KEY_DF: process.env.MASTODON_KEY_DF ?? "", MASTODON_KEY_ELCIUDADANO: process.env.MASTODON_KEY_ELCIUDADANO ?? "", MASTODON_KEY_ELDESCONCIERTO: process.env.MASTODON_KEY_ELDESCONCIERTO ?? "", MASTODON_KEY_ELMOSTRADOR: process.env.MASTODON_KEY_ELMOSTRADOR ?? "", MASTODON_KEY_ELSIGLO: process.env.MASTODON_KEY_ELSIGLO ?? "", MASTODON_KEY_EMOL: process.env.MASTODON_KEY_EMOL ?? "", MASTODON_KEY_FASTCHECK: process.env.MASTODON_KEY_FASTCHECK ?? "", MASTODON_KEY_GLACIARESCHILENOS: process.env.MASTODON_KEY_GLACIARESCHILENOS ?? "", MASTODON_KEY_INTERFERENCIA: process.env.MASTODON_KEY_INTERFERENCIA ?? "", MASTODON_KEY_LADERASUR: process.env.MASTODON_KEY_LADERASUR ?? "", MASTODON_KEY_LAHORA: process.env.MASTODON_KEY_LAHORA ?? "", MASTODON_KEY_LAVOZDELOSQUESOBRAN: process.env.MASTODON_KEY_LAVOZDELOSQUESOBRAN ?? "", MASTODON_KEY_LANACION: process.env.MASTODON_KEY_LANACION ?? "", MASTODON_KEY_LATERCERA: process.env.MASTODON_KEY_LATERCERA ?? "", MASTODON_KEY_METEORED: process.env.MASTODON_KEY_METEORED ?? "", MASTODON_KEY_RESUMEN: process.env.MASTODON_KEY_RESUMEN ?? "", MASTODON_KEY_SISMOLOGIA: process.env.MASTODON_KEY_SISMOLOGIA ?? "", MASTODON_KEY_TARREO: process.env.MASTODON_KEY_TARREO ?? "", MASTODON_KEY_THECLINIC: process.env.MASTODON_KEY_THECLINIC ?? "", // AGENTS MASTODON_KEY_FORTUNE: process.env.MASTODON_KEY_FORTUNE ?? "", MASTODON_KEY_REMINDME: process.env.MASTODON_KEY_REMINDME ?? "", MASTODON_KEY_ANNIVERSARIES: process.env.MASTODON_KEY_ANNIVERSARIES ?? "", MASTODON_KEY_ANONYBOT: process.env.MASTODON_KEY_ANONYBOT ?? "", MASTODON_KEY_COUNTDOWN: process.env.MASTODON_KEY_COUNTDOWN ?? "", MASTODON_KEY_VIDEO_STREAMS: process.env.MASTODON_KEY_VIDEO_STREAMS ?? "", COUNTDOWN_EVENTS: process.env.COUNTDOWN_EVENTS ?? "", VIDEO_STREAMS: process.env.VIDEO_STREAMS ?? "", VIDEO_STREAMS_SCREENSHOT_DELAY: Number(process.env.VIDEO_STREAMS_SCREENSHOT_DELAY ?? 10000), VIDEO_STREAMS_CLICK_SELECTOR: process.env.VIDEO_STREAMS_CLICK_SELECTOR ?? ".ytp-large-play-button", // ANONYBOT Settings ANONYBOT_MAX_MESSAGE_LENGTH: process.env.ANONYBOT_MAX_MESSAGE_LENGTH ?? 500, ANONYBOT_RATE_LIMIT_HOURS: process.env.ANONYBOT_RATE_LIMIT_HOURS ?? 1, ANONYBOT_MAX_MESSAGES_PER_HOUR: process.env.ANONYBOT_MAX_MESSAGES_PER_HOUR ?? 5, ANONYBOT_MODERATION_LEVEL: process.env.ANONYBOT_MODERATION_LEVEL ?? "conservative", // OLLAMA OLLAMA_URL: process.env.OLLAMA_URL ?? "http://localhost:11434/api/generate", OLLAMA_MODEL: process.env.OLLAMA_MODEL ?? "llama3.2", OLLAMA_ENABLED: !(process.env.OLLAMA_ENABLED === "false"), OLLAMA_TIMEOUT: Number(process.env.OLLAMA_TIMEOUT ?? 10000), // Develop DEVELOP: !(process.env.DEVELOP === "false"), DEV_ACTIVE_PORTALS: process.env.DEV_ACTIVE_PORTALS?.split(";") ?? [], MASTODON_TEST_ACCESS_TOKEN: process.env.MASTODON_TEST_ACCESS_TOKEN ?? "", }; export default config;