2.0 KiB
2. Requirements
Functional Requirements
FR1: O sistema deve permitir login de usuários via email/senha usando Supabase Auth unificado
FR2: O sistema deve permitir recuperação de senha via SMTP da AutomatizaSE (gerenciado pelo Supabase)
FR3: O sistema deve exibir instâncias do WhatsApp como cards individuais (estilo EvolutionAPI), mostrando nome da instância, status de conexão, e ações disponíveis
FR4: O sistema deve integrar diretamente com a EvolutionAPI para visualizar status de cada instância (conectado/desconectado)
FR5: Cada card de instância deve fornecer botão "Gerar QR Code" que chama endpoint da EvolutionAPI para gerar e exibir QR code de conexão do WhatsApp
FR6: Cada card de instância deve fornecer botão "Desconectar" que chama endpoint da EvolutionAPI para desconectar a instância do WhatsApp
FR7: O sistema NÃO deve permitir criar ou excluir instâncias da EvolutionAPI via interface
FR8: O sistema deve exibir link/botão "Conectar Google Calendar" que redireciona para endpoint OAuth do n8n
FR9: O sistema deve exibir status visual de conexão do Google Calendar (conectado ✅ ou não conectado ❌)
FR10: O sistema deve armazenar dados no schema portal do Supabase (separado do schema public existente)
FR11: O sistema deve permitir que usuário re-autentique Google Calendar com email diferente ao clicar novamente no botão OAuth
Non-Functional Requirements
NFR1: O sistema deve ser responsivo e funcionar em dispositivos mobile e desktop
NFR2: O sistema deve usar tema escuro como padrão
NFR3: O sistema deve usar cores azuis como cor primária (identidade AutomatizaSE)
NFR4: O sistema deve exibir rodapé com "Copyright by AutomatizaSE"
NFR5: O sistema deve carregar e exibir status de conexões em até 3 segundos
NFR6: O sistema deve validar credenciais e tokens de forma segura usando variáveis de ambiente
NFR7: O sistema deve ser implantável rapidamente com configuração mínima (POC)