import { useState } from 'react'; import { Button } from '@/components/ui/button'; import { Card, CardContent, CardHeader, CardTitle, CardDescription } from '@/components/ui/card'; import { Input } from '@/components/ui/input'; import { Label } from '@/components/ui/label'; import { Loader2, Plus } from 'lucide-react'; import { cadastrarGrupoWhatsApp } from '@/services/gruposWhatsAppService'; import { useToast } from '@/hooks/use-toast'; interface CreateGroupFormProps { userEmail: string; onSuccess: () => void; } const CreateGroupForm = ({ userEmail, onSuccess }: CreateGroupFormProps) => { const { toast } = useToast(); const [cadastrando, setCadastrando] = useState(false); const [nomeGrupo, setNomeGrupo] = useState(''); const [errorMessage, setErrorMessage] = useState(null); const [debugInfo, setDebugInfo] = useState(null); // Cadastrar novo grupo ou atualizar workflow se necessário const handleCadastrarGrupo = async () => { setErrorMessage(null); setDebugInfo(null); if (!userEmail) { toast({ title: 'Erro', description: 'Você precisa estar logado para cadastrar um grupo', variant: 'destructive', }); return; } if (!nomeGrupo.trim()) { toast({ title: 'Atenção', description: 'Digite um nome para o grupo', variant: 'destructive', }); return; } setCadastrando(true); try { console.log("Iniciando processo de cadastro de grupo..."); const grupo = await cadastrarGrupoWhatsApp(nomeGrupo.trim()); if (grupo) { let successMessage = 'Grupo registrado com sucesso'; let variant: 'default' | 'destructive' = 'default'; if (grupo.workflow_id) { successMessage = 'Grupo cadastrado e workflow criado com sucesso!'; } else { successMessage = 'Grupo cadastrado, mas falha ao criar workflow de automação.'; setDebugInfo('O grupo foi criado no Supabase, mas houve um problema ao criar o workflow no n8n. Verifique os logs do console para mais detalhes.'); variant = 'destructive'; } toast({ title: grupo.workflow_id ? 'Sucesso' : 'Atenção', description: successMessage, variant: variant, }); // Resetar o campo de nome setNomeGrupo(''); // Atualizar a lista de grupos onSuccess(); } else { setErrorMessage('Não foi possível registrar o grupo. Verifique a conexão com o Supabase.'); toast({ title: 'Erro', description: 'Não foi possível registrar o grupo', variant: 'destructive', }); } } catch (error) { console.error('Erro ao cadastrar grupo:', error); let errorMsg = 'Erro desconhecido'; if (error instanceof Error) { errorMsg = error.message; // Tentar extrair detalhes específicos do erro se existirem if (errorMsg.includes('Status')) { const statusMatch = errorMsg.match(/Status (\d+)/); if (statusMatch && statusMatch[1]) { setDebugInfo(`Código de status HTTP da API: ${statusMatch[1]}`); } } } setErrorMessage('Erro ao cadastrar grupo: ' + errorMsg); toast({ title: 'Erro', description: 'Não foi possível registrar o grupo', variant: 'destructive', }); } finally { setCadastrando(false); } }; return ( Cadastrar novo grupo Preencha as informações abaixo para cadastrar um novo grupo do WhatsApp
setNomeGrupo(e.target.value)} />

Digite um nome descritivo para o grupo que você irá criar

Após cadastrar:

  1. Adicione o número (61)99244-4275 ao grupo do WhatsApp que deseja automatizar
  2. Envie uma mensagem neste grupo com o seguinte texto:
{userEmail}

Copie e cole o email exatamente como aparece acima

{errorMessage &&

{errorMessage}

} {debugInfo &&

{debugInfo}

}
); }; export default CreateGroupForm;