File size: 1,291 Bytes
2dc228e
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
/**
 * Configurações do Akira Bot
 * ==========================
 * Variáveis de ambiente com fallbacks
 */

const config = {
  // Diretórios
  LOG_DIR: process.env.LOG_DIR || './logs',
  AUTH_DIR: process.env.AUTH_DIR || './data/sessions',
  
  // API
  API_BASE_URL: process.env.API_BASE_URL || 'https://akra35567-akira.hf.space',
  API_TIMEOUT: parseInt(process.env.API_TIMEOUT) || 30000,
  API_ROUTE_PREFIX: process.env.API_ROUTE_PREFIX || '/api'.replace(/^\/+|\/+$/g, ''),

  // Cache
  CACHE_DURATION: parseInt(process.env.CACHE_DURATION) || 3600000,
  MAX_CACHE_SIZE: parseInt(process.env.MAX_CACHE_SIZE) || 1000,
  MAX_QR_ATTEMPTS: parseInt(process.env.MAX_QR_ATTEMPTS) || 10,
  
  // Segurança
  PRIVILEGED_NUMBERS: (process.env.PRIVILEGED_NUMBERS || '244937035662').split(',').map(n => n.trim()),
  ADMIN_NAME: process.env.ADMIN_NAME || 'Isaac'
};

// Helper: verifica número privilegiado
config.isPrivilegedNumber = function(number) {
  if (!number) return false;
  const normalized = number.toString().replace(/[^0-9]/g, '');
  return this.PRIVILEGED_NUMBERS.some(privileged => {
    const privNormalized = privileged.toString().replace(/[^0-9]/g, '');
    return normalized.endsWith(privNormalized) || privNormalized.endsWith(normalized);
  });
};

module.exports = config;