Feat: Trigger webhook on group creation

Trigger the webhook to notify N8N when a WhatsApp group is created by the user.
This commit is contained in:
gpt-engineer-app[bot] 2025-06-25 17:56:24 +00:00
parent d2070e6b34
commit b1e48398c2
2 changed files with 14 additions and 14 deletions

View File

@ -10,7 +10,7 @@ import { useToast } from '@/hooks/use-toast';
import { verificarInstanciaWhatsApp } from '@/services/gruposWhatsAppService'; import { verificarInstanciaWhatsApp } from '@/services/gruposWhatsAppService';
import { findOrCreateWhatsAppGroup } from '@/services/whatsAppGroupsService'; import { findOrCreateWhatsAppGroup } from '@/services/whatsAppGroupsService';
import { createWorkflowInN8n } from '@/services/n8nWorkflowService'; import { createWorkflowInN8n } from '@/services/n8nWorkflowService';
import { activateUserWorkflow } from '@/services/whatsAppInstance/workflowOperations'; import { createEvolutionWebhook } from '@/services/whatsApp/webhookService';
interface CreateGroupFormProps { interface CreateGroupFormProps {
userEmail: string; userEmail: string;
@ -68,15 +68,15 @@ const CreateGroupFormSimple = ({ userEmail, onSuccess }: CreateGroupFormProps) =
await createWorkflowInN8n(userEmail); await createWorkflowInN8n(userEmail);
// Enviar webhook para ativar workflow // Enviar webhook para N8N configurar webhook da Evolution API
setMensagemStatus({ tipo: 'info', texto: 'Ativando automação...' }); setMensagemStatus({ tipo: 'info', texto: 'Configurando webhook...' });
try { try {
console.log(`🔔 Enviando webhook para ativar workflow para o usuário: ${userEmail}`); console.log(`🔔 Enviando email para N8N configurar webhook: ${userEmail}`);
await activateUserWorkflow(userEmail); await createEvolutionWebhook(userEmail);
console.log('✅ Webhook de ativação de workflow enviado com sucesso'); console.log('✅ Email enviado com sucesso para N8N');
} catch (webhookError) { } catch (webhookError) {
console.error('❌ Erro ao enviar webhook de ativação:', webhookError); console.error('❌ Erro ao enviar email para N8N:', webhookError);
// Continua mesmo se o webhook falhar // Continua mesmo se o webhook falhar
} }

View File

@ -3,7 +3,7 @@ import { useState } from 'react';
import { useToast } from '@/hooks/use-toast'; import { useToast } from '@/hooks/use-toast';
import { findOrCreateWhatsAppGroup } from '@/services/whatsAppGroupsService'; import { findOrCreateWhatsAppGroup } from '@/services/whatsAppGroupsService';
import { createWhatsAppGroup, updateGroupRemoteJid } from '@/services/whatsAppGroupCreationService'; import { createWhatsAppGroup, updateGroupRemoteJid } from '@/services/whatsAppGroupCreationService';
import { activateUserWorkflow } from '@/services/whatsAppInstance/workflowOperations'; import { createEvolutionWebhook } from '@/services/whatsApp/webhookService';
export const useGroupCreation = (userEmail: string, onSuccess: () => void) => { export const useGroupCreation = (userEmail: string, onSuccess: () => void) => {
const { toast } = useToast(); const { toast } = useToast();
@ -58,17 +58,17 @@ export const useGroupCreation = (userEmail: string, onSuccess: () => void) => {
if (groupResponse.id) { if (groupResponse.id) {
await updateGroupRemoteJid(grupo.id, groupResponse.id); await updateGroupRemoteJid(grupo.id, groupResponse.id);
// 4. Enviar webhook para ativar workflow no n8n // 4. Enviar webhook para N8N configurar webhook da Evolution API
try { try {
console.log(`🔔 Enviando webhook para ativar workflow para o usuário: ${userEmail}`); console.log(`🔔 Enviando email para N8N configurar webhook: ${userEmail}`);
await activateUserWorkflow(userEmail); await createEvolutionWebhook(userEmail);
console.log('✅ Webhook de ativação de workflow enviado com sucesso'); console.log('✅ Email enviado com sucesso para N8N');
} catch (webhookError) { } catch (webhookError) {
console.error('❌ Erro ao enviar webhook de ativação:', webhookError); console.error('❌ Erro ao enviar email para N8N:', webhookError);
// Não falha o processo todo se o webhook falhar // Não falha o processo todo se o webhook falhar
toast({ toast({
title: 'Atenção', title: 'Atenção',
description: 'Grupo criado com sucesso, mas houve um problema ao ativar a automação. Entre em contato com o suporte.', description: 'Grupo criado com sucesso, mas houve um problema ao configurar a automação. Entre em contato com o suporte.',
variant: 'destructive', variant: 'destructive',
}); });
} }