Fix: Improve WhatsApp instance and group creation logic
Analyze and fix the logic for WhatsApp instance and group creation, ensuring correct instance detection based on user email and status. Also, check for any exposed API keys or sensitive information.
This commit is contained in:
parent
8bedfeb33c
commit
61e154ed02
@ -4,6 +4,7 @@ import { useGroupCreation } from '@/hooks/whatsappGroups/useGroupCreation';
|
|||||||
import LoadingState from './LoadingState';
|
import LoadingState from './LoadingState';
|
||||||
import NoInstanceState from './NoInstanceState';
|
import NoInstanceState from './NoInstanceState';
|
||||||
import GroupCreationForm from './GroupCreationForm';
|
import GroupCreationForm from './GroupCreationForm';
|
||||||
|
import { useEffect } from 'react';
|
||||||
|
|
||||||
interface CreateGroupFormProps {
|
interface CreateGroupFormProps {
|
||||||
userEmail: string;
|
userEmail: string;
|
||||||
@ -11,18 +12,47 @@ interface CreateGroupFormProps {
|
|||||||
}
|
}
|
||||||
|
|
||||||
const CreateGroupForm = ({ userEmail, onSuccess }: CreateGroupFormProps) => {
|
const CreateGroupForm = ({ userEmail, onSuccess }: CreateGroupFormProps) => {
|
||||||
const { hasWhatsAppInstance, checkingInstance, userInstance } = useWhatsAppInstanceVerification(userEmail);
|
const {
|
||||||
|
hasWhatsAppInstance,
|
||||||
|
checkingInstance,
|
||||||
|
userInstance,
|
||||||
|
recheckInstance
|
||||||
|
} = useWhatsAppInstanceVerification(userEmail);
|
||||||
|
|
||||||
const { cadastrando, handleCadastrarGrupo } = useGroupCreation(userEmail, onSuccess);
|
const { cadastrando, handleCadastrarGrupo } = useGroupCreation(userEmail, onSuccess);
|
||||||
|
|
||||||
|
// Re-verificar a instância quando o componente for montado ou quando houver mudanças
|
||||||
|
useEffect(() => {
|
||||||
|
console.log('🔄 [GRUPO] CreateGroupForm montado, verificando instância');
|
||||||
|
recheckInstance();
|
||||||
|
}, [userEmail]);
|
||||||
|
|
||||||
|
// Log detalhado do estado atual
|
||||||
|
useEffect(() => {
|
||||||
|
console.log('📊 [GRUPO] Estado atual do CreateGroupForm:', {
|
||||||
|
userEmail,
|
||||||
|
hasWhatsAppInstance,
|
||||||
|
checkingInstance,
|
||||||
|
userInstance,
|
||||||
|
instanceStatus: userInstance?.status_instancia,
|
||||||
|
instanceName: userInstance?.instancia_zap
|
||||||
|
});
|
||||||
|
}, [userEmail, hasWhatsAppInstance, checkingInstance, userInstance]);
|
||||||
|
|
||||||
if (checkingInstance) {
|
if (checkingInstance) {
|
||||||
|
console.log('⏳ [GRUPO] Verificando instância WhatsApp...');
|
||||||
return <LoadingState message="Verificando instância WhatsApp..." />;
|
return <LoadingState message="Verificando instância WhatsApp..." />;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!hasWhatsAppInstance) {
|
if (!hasWhatsAppInstance) {
|
||||||
|
console.log('❌ [GRUPO] Instância WhatsApp não encontrada ou não conectada');
|
||||||
return <NoInstanceState userInstance={userInstance} />;
|
return <NoInstanceState userInstance={userInstance} />;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
console.log('✅ [GRUPO] Instância válida encontrada, mostrando formulário de criação');
|
||||||
|
|
||||||
const handleSubmit = (nomeGrupo: string) => {
|
const handleSubmit = (nomeGrupo: string) => {
|
||||||
|
console.log('🚀 [GRUPO] Iniciando criação de grupo:', nomeGrupo);
|
||||||
handleCadastrarGrupo(nomeGrupo, userInstance);
|
handleCadastrarGrupo(nomeGrupo, userInstance);
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|||||||
@ -1,7 +1,9 @@
|
|||||||
|
|
||||||
import { Card, CardContent, CardDescription, CardHeader, CardTitle } from '@/components/ui/card';
|
import { Card, CardContent, CardDescription, CardHeader, CardTitle } from '@/components/ui/card';
|
||||||
import { Alert, AlertDescription } from '@/components/ui/alert';
|
import { Alert, AlertDescription } from '@/components/ui/alert';
|
||||||
import { AlertCircle } from 'lucide-react';
|
import { MessageCircle, AlertTriangle } from 'lucide-react';
|
||||||
|
import { Button } from '@/components/ui/button';
|
||||||
|
import { useNavigate } from 'react-router-dom';
|
||||||
|
|
||||||
interface NoInstanceStateProps {
|
interface NoInstanceStateProps {
|
||||||
userInstance: {
|
userInstance: {
|
||||||
@ -12,35 +14,72 @@ interface NoInstanceStateProps {
|
|||||||
}
|
}
|
||||||
|
|
||||||
const NoInstanceState = ({ userInstance }: NoInstanceStateProps) => {
|
const NoInstanceState = ({ userInstance }: NoInstanceStateProps) => {
|
||||||
|
const navigate = useNavigate();
|
||||||
|
|
||||||
|
const handleGoToWhatsApp = () => {
|
||||||
|
navigate('/whatsapp');
|
||||||
|
};
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<Card>
|
<Card>
|
||||||
<CardHeader>
|
<CardHeader>
|
||||||
<CardTitle>Cadastrar novo grupo</CardTitle>
|
<div className="flex items-center mb-2">
|
||||||
|
<AlertTriangle className="h-6 w-6 mr-2 text-orange-600" />
|
||||||
|
<CardTitle>WhatsApp não conectado</CardTitle>
|
||||||
|
</div>
|
||||||
<CardDescription>
|
<CardDescription>
|
||||||
Para criar um grupo é necessário ter uma instância do WhatsApp conectada
|
Para criar grupos, você precisa ter uma instância WhatsApp conectada
|
||||||
</CardDescription>
|
</CardDescription>
|
||||||
</CardHeader>
|
</CardHeader>
|
||||||
<CardContent>
|
<CardContent className="space-y-4">
|
||||||
<Alert>
|
<Alert variant="destructive">
|
||||||
<AlertCircle className="h-4 w-4" />
|
<MessageCircle className="h-4 w-4" />
|
||||||
<AlertDescription>
|
<AlertDescription>
|
||||||
{userInstance && userInstance.instancia_zap && userInstance.status_instancia !== 'conectado' ? (
|
{userInstance ? (
|
||||||
<>
|
userInstance.status_instancia === 'desconectado' ? (
|
||||||
Sua instância WhatsApp <strong>{userInstance.instancia_zap}</strong> está <strong>desconectada</strong>.
|
<>
|
||||||
Acesse o menu "Conectar WhatsApp" e escaneie o QR Code para conectar sua instância.
|
Sua instância WhatsApp está <strong>desconectada</strong>.
|
||||||
<br />
|
Você precisa reconectar para criar grupos.
|
||||||
<span className="text-sm text-gray-600 mt-2 block">
|
</>
|
||||||
Status atual: {userInstance.status_instancia}
|
) : (
|
||||||
</span>
|
<>
|
||||||
</>
|
Instância encontrada, mas status: <strong>{userInstance.status_instancia || 'desconhecido'}</strong>.
|
||||||
|
Para criar grupos, o status deve ser "conectado".
|
||||||
|
</>
|
||||||
|
)
|
||||||
) : (
|
) : (
|
||||||
<>
|
'Nenhuma instância WhatsApp encontrada. Você precisa criar e conectar uma instância primeiro.'
|
||||||
Para criar um grupo é necessário ter sua instância do WhatsApp conectada.
|
|
||||||
Acesse o menu "Conectar WhatsApp" e realize a conexão primeiro.
|
|
||||||
</>
|
|
||||||
)}
|
)}
|
||||||
</AlertDescription>
|
</AlertDescription>
|
||||||
</Alert>
|
</Alert>
|
||||||
|
|
||||||
|
{userInstance && (
|
||||||
|
<div className="bg-gray-50 p-4 rounded-lg">
|
||||||
|
<h4 className="font-medium text-gray-900 mb-2">Status da sua instância:</h4>
|
||||||
|
<div className="space-y-1 text-sm text-gray-600">
|
||||||
|
<p><strong>Instância:</strong> {userInstance.instancia_zap || 'Não configurada'}</p>
|
||||||
|
<p><strong>Status:</strong> {userInstance.status_instancia || 'Desconhecido'}</p>
|
||||||
|
<p><strong>WhatsApp:</strong> {userInstance.whatsapp || 'Não configurado'}</p>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
)}
|
||||||
|
|
||||||
|
<div className="flex flex-col sm:flex-row gap-3">
|
||||||
|
<Button onClick={handleGoToWhatsApp} className="flex-1">
|
||||||
|
<MessageCircle className="h-4 w-4 mr-2" />
|
||||||
|
{userInstance ? 'Reconectar WhatsApp' : 'Conectar WhatsApp'}
|
||||||
|
</Button>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div className="bg-blue-50 p-4 rounded-lg">
|
||||||
|
<h4 className="font-medium text-blue-900 mb-2">Como resolver:</h4>
|
||||||
|
<ol className="list-decimal list-inside space-y-1 text-sm text-blue-800">
|
||||||
|
<li>Vá para a página "Conectar WhatsApp"</li>
|
||||||
|
<li>{userInstance ? 'Reconecte sua instância existente' : 'Crie uma nova instância WhatsApp'}</li>
|
||||||
|
<li>Escaneie o QR Code com seu celular</li>
|
||||||
|
<li>Volte aqui para criar grupos</li>
|
||||||
|
</ol>
|
||||||
|
</div>
|
||||||
</CardContent>
|
</CardContent>
|
||||||
</Card>
|
</Card>
|
||||||
);
|
);
|
||||||
|
|||||||
@ -59,28 +59,28 @@ export const useInstanceCreation = (
|
|||||||
setLoading(true);
|
setLoading(true);
|
||||||
|
|
||||||
try {
|
try {
|
||||||
console.log(`🚀 Iniciando criação de instância com nome ${instanceName} e número ${fullPhoneNumber}`);
|
console.log(`🚀 [INSTÂNCIA] Iniciando criação de instância com nome ${instanceName} e número ${fullPhoneNumber}`);
|
||||||
|
|
||||||
// 1. Criar instância na API
|
// 1. Criar instância na API
|
||||||
console.log('📡 Passo 1: Criando instância na API...');
|
console.log('📡 [INSTÂNCIA] Passo 1: Criando instância na API...');
|
||||||
const data = await createWhatsAppInstance(instanceName, fullPhoneNumber);
|
const data = await createWhatsAppInstance(instanceName, fullPhoneNumber);
|
||||||
console.log('✅ Resposta da API de criação de instância:', data);
|
console.log('✅ [INSTÂNCIA] Resposta da API de criação de instância:', data);
|
||||||
|
|
||||||
// 2. Atualizar o banco de dados com status "conectado"
|
// 2. Atualizar o banco de dados com status "conectado"
|
||||||
console.log('💾 Passo 2: Atualizando banco de dados...');
|
console.log('💾 [INSTÂNCIA] Passo 2: Atualizando banco de dados...');
|
||||||
await updateUserWhatsAppInstance(userEmail, {
|
await updateUserWhatsAppInstance(userEmail, {
|
||||||
instanceName,
|
instanceName,
|
||||||
status: 'conectado'
|
status: 'conectado'
|
||||||
});
|
});
|
||||||
console.log('✅ Instância registrada no banco de dados com status "conectado"');
|
console.log('✅ [INSTÂNCIA] Instância registrada no banco de dados com status "conectado"');
|
||||||
|
|
||||||
// 3. Ativar o workflow do usuário no n8n
|
// 3. Ativar o workflow do usuário no n8n
|
||||||
console.log('🔄 Passo 3: Ativando workflow do usuário no n8n...');
|
console.log('🔄 [INSTÂNCIA] Passo 3: Ativando workflow do usuário no n8n...');
|
||||||
try {
|
try {
|
||||||
await activateUserWorkflow(userEmail);
|
await activateUserWorkflow(userEmail);
|
||||||
console.log('✅ Workflow ativado com sucesso no n8n');
|
console.log('✅ [INSTÂNCIA] Workflow ativado com sucesso no n8n');
|
||||||
} catch (workflowError) {
|
} catch (workflowError) {
|
||||||
console.error('⚠️ Erro ao ativar workflow, mas instância foi criada:', workflowError);
|
console.error('⚠️ [INSTÂNCIA] Erro ao ativar workflow, mas instância foi criada:', workflowError);
|
||||||
toast({
|
toast({
|
||||||
title: "Aviso",
|
title: "Aviso",
|
||||||
description: "Instância criada, mas houve um problema ao ativar a automação. Entre em contato com o suporte.",
|
description: "Instância criada, mas houve um problema ao ativar a automação. Entre em contato com o suporte.",
|
||||||
@ -99,7 +99,7 @@ export const useInstanceCreation = (
|
|||||||
connectionState: 'closed'
|
connectionState: 'closed'
|
||||||
};
|
};
|
||||||
|
|
||||||
console.log('✅ Nova instância criada:', newInstance);
|
console.log('✅ [INSTÂNCIA] Nova instância criada:', newInstance);
|
||||||
|
|
||||||
// 5. Atualizar estado para evitar nova criação
|
// 5. Atualizar estado para evitar nova criação
|
||||||
setHasExistingInstance(true);
|
setHasExistingInstance(true);
|
||||||
@ -111,15 +111,20 @@ export const useInstanceCreation = (
|
|||||||
// 6. Notificar componente pai
|
// 6. Notificar componente pai
|
||||||
onInstanceCreated(newInstance);
|
onInstanceCreated(newInstance);
|
||||||
|
|
||||||
|
// 7. Forçar um pequeno delay para garantir que o banco foi atualizado
|
||||||
|
console.log('⏳ [INSTÂNCIA] Aguardando propagação das mudanças no banco...');
|
||||||
|
await new Promise(resolve => setTimeout(resolve, 2000));
|
||||||
|
|
||||||
toast({
|
toast({
|
||||||
title: "Sucesso!",
|
title: "Sucesso!",
|
||||||
description: "Instância do WhatsApp criada e ativada com sucesso!"
|
description: "Instância do WhatsApp criada e ativada com sucesso! Agora você pode criar grupos.",
|
||||||
|
duration: 5000
|
||||||
});
|
});
|
||||||
|
|
||||||
return true;
|
return true;
|
||||||
|
|
||||||
} catch (error) {
|
} catch (error) {
|
||||||
console.error("💥 Erro ao criar instância WhatsApp:", error);
|
console.error("💥 [INSTÂNCIA] Erro ao criar instância WhatsApp:", error);
|
||||||
|
|
||||||
// Se houve erro na API, tentar reverter no banco de dados
|
// Se houve erro na API, tentar reverter no banco de dados
|
||||||
try {
|
try {
|
||||||
@ -127,9 +132,9 @@ export const useInstanceCreation = (
|
|||||||
instanceName: '',
|
instanceName: '',
|
||||||
status: 'desconectado'
|
status: 'desconectado'
|
||||||
});
|
});
|
||||||
console.log('🔄 Instância removida do banco devido ao erro na API');
|
console.log('🔄 [INSTÂNCIA] Instância removida do banco devido ao erro na API');
|
||||||
} catch (dbError) {
|
} catch (dbError) {
|
||||||
console.error('❌ Erro ao reverter instância no banco:', dbError);
|
console.error('❌ [INSTÂNCIA] Erro ao reverter instância no banco:', dbError);
|
||||||
}
|
}
|
||||||
|
|
||||||
toast({
|
toast({
|
||||||
|
|||||||
@ -13,64 +13,71 @@ export const useWhatsAppInstanceVerification = (userEmail: string) => {
|
|||||||
const [checkingInstance, setCheckingInstance] = useState<boolean>(true);
|
const [checkingInstance, setCheckingInstance] = useState<boolean>(true);
|
||||||
const [userInstance, setUserInstance] = useState<WhatsAppInstanceData | null>(null);
|
const [userInstance, setUserInstance] = useState<WhatsAppInstanceData | null>(null);
|
||||||
|
|
||||||
useEffect(() => {
|
const checkUserInstance = async () => {
|
||||||
const checkUserInstance = async () => {
|
if (!userEmail) {
|
||||||
if (!userEmail) {
|
console.log('❌ Email do usuário não fornecido');
|
||||||
console.log('❌ Email do usuário não fornecido');
|
setCheckingInstance(false);
|
||||||
setCheckingInstance(false);
|
return;
|
||||||
return;
|
}
|
||||||
}
|
|
||||||
|
|
||||||
setCheckingInstance(true);
|
setCheckingInstance(true);
|
||||||
try {
|
try {
|
||||||
console.log('🔍 Verificando instância para criação de grupo:', userEmail);
|
console.log('🔍 [GRUPO] Verificando instância para criação de grupo:', userEmail);
|
||||||
|
|
||||||
const instanceData = await getUserWhatsAppInstance(userEmail);
|
const instanceData = await getUserWhatsAppInstance(userEmail);
|
||||||
console.log('📋 Dados da instância encontrados:', instanceData);
|
console.log('📋 [GRUPO] Dados da instância encontrados:', instanceData);
|
||||||
|
|
||||||
if (instanceData) {
|
if (instanceData) {
|
||||||
// Verificação correta: deve ter instancia_zap igual ao email E status conectado
|
// Verificação correta: deve ter instancia_zap igual ao email E status conectado
|
||||||
const hasValidInstance = !!(
|
const hasValidInstance = !!(
|
||||||
instanceData &&
|
instanceData &&
|
||||||
instanceData.instancia_zap &&
|
instanceData.instancia_zap &&
|
||||||
instanceData.instancia_zap.trim() !== '' &&
|
instanceData.instancia_zap.trim() !== '' &&
|
||||||
instanceData.instancia_zap !== 'null' &&
|
instanceData.instancia_zap !== 'null' &&
|
||||||
instanceData.instancia_zap !== null &&
|
instanceData.instancia_zap !== null &&
|
||||||
instanceData.instancia_zap.toLowerCase() === userEmail.toLowerCase() &&
|
instanceData.instancia_zap.toLowerCase() === userEmail.toLowerCase() &&
|
||||||
instanceData.status_instancia === 'conectado'
|
instanceData.status_instancia === 'conectado'
|
||||||
);
|
);
|
||||||
|
|
||||||
console.log('✅ Instância válida para criar grupos:', hasValidInstance, {
|
console.log('✅ [GRUPO] Instância válida para criar grupos:', hasValidInstance, {
|
||||||
instancia_zap: instanceData.instancia_zap,
|
instancia_zap: instanceData.instancia_zap,
|
||||||
status_instancia: instanceData.status_instancia,
|
status_instancia: instanceData.status_instancia,
|
||||||
userEmail: userEmail,
|
userEmail: userEmail,
|
||||||
instanceMatchesEmail: instanceData.instancia_zap?.toLowerCase() === userEmail.toLowerCase(),
|
instanceMatchesEmail: instanceData.instancia_zap?.toLowerCase() === userEmail.toLowerCase(),
|
||||||
isConnected: instanceData.status_instancia === 'conectado',
|
isConnected: instanceData.status_instancia === 'conectado',
|
||||||
hasValidInstance
|
hasValidInstance
|
||||||
});
|
});
|
||||||
|
|
||||||
setHasWhatsAppInstance(hasValidInstance);
|
setHasWhatsAppInstance(hasValidInstance);
|
||||||
setUserInstance(instanceData);
|
setUserInstance(instanceData);
|
||||||
} else {
|
} else {
|
||||||
console.log('❌ Nenhuma instância encontrada');
|
console.log('❌ [GRUPO] Nenhuma instância encontrada');
|
||||||
setHasWhatsAppInstance(false);
|
|
||||||
setUserInstance(null);
|
|
||||||
}
|
|
||||||
} catch (error) {
|
|
||||||
console.error('❌ Erro ao verificar instância do usuário:', error);
|
|
||||||
setHasWhatsAppInstance(false);
|
setHasWhatsAppInstance(false);
|
||||||
setUserInstance(null);
|
setUserInstance(null);
|
||||||
} finally {
|
|
||||||
setCheckingInstance(false);
|
|
||||||
}
|
}
|
||||||
};
|
} catch (error) {
|
||||||
|
console.error('❌ [GRUPO] Erro ao verificar instância do usuário:', error);
|
||||||
|
setHasWhatsAppInstance(false);
|
||||||
|
setUserInstance(null);
|
||||||
|
} finally {
|
||||||
|
setCheckingInstance(false);
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
|
useEffect(() => {
|
||||||
checkUserInstance();
|
checkUserInstance();
|
||||||
}, [userEmail]);
|
}, [userEmail]);
|
||||||
|
|
||||||
|
// Função para forçar re-verificação (útil quando o status da instância muda)
|
||||||
|
const recheckInstance = () => {
|
||||||
|
console.log('🔄 [GRUPO] Forçando re-verificação da instância');
|
||||||
|
checkUserInstance();
|
||||||
|
};
|
||||||
|
|
||||||
return {
|
return {
|
||||||
hasWhatsAppInstance,
|
hasWhatsAppInstance,
|
||||||
checkingInstance,
|
checkingInstance,
|
||||||
userInstance
|
userInstance,
|
||||||
|
recheckInstance
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|||||||
@ -1,3 +1,4 @@
|
|||||||
|
|
||||||
import { supabase } from "@/integrations/supabase/client";
|
import { supabase } from "@/integrations/supabase/client";
|
||||||
|
|
||||||
interface CreateGroupResponse {
|
interface CreateGroupResponse {
|
||||||
@ -15,37 +16,37 @@ export async function createWhatsAppGroup(
|
|||||||
groupName: string
|
groupName: string
|
||||||
): Promise<CreateGroupResponse> {
|
): Promise<CreateGroupResponse> {
|
||||||
try {
|
try {
|
||||||
const url = `https://evolutionapi2.innova1001.com.br/group/create/${userEmail}`;
|
console.log('🚀 Iniciando criação de grupo via API Evolution');
|
||||||
|
console.log('📧 Email do usuário:', userEmail);
|
||||||
|
console.log('🏷️ Nome do grupo:', groupName);
|
||||||
|
|
||||||
const requestBody = {
|
// Usar a edge function para fazer a requisição segura
|
||||||
subject: groupName,
|
const { data, error } = await supabase.functions.invoke('whatsapp-api', {
|
||||||
description: "Finance Home seu controle sem complicação",
|
body: {
|
||||||
participants: ["5561992444275"]
|
endpoint: `/group/create/${encodeURIComponent(userEmail)}`,
|
||||||
};
|
method: 'POST',
|
||||||
|
body: {
|
||||||
console.log('Criando grupo WhatsApp:', { url, requestBody });
|
subject: groupName,
|
||||||
|
description: "Finance Home seu controle sem complicação",
|
||||||
const response = await fetch(url, {
|
participants: ["5561992444275"]
|
||||||
method: 'POST',
|
}
|
||||||
headers: {
|
}
|
||||||
'Content-Type': 'application/json',
|
|
||||||
'apikey': 'beeb77fbd7f48f91db2cd539a573c130'
|
|
||||||
},
|
|
||||||
body: JSON.stringify(requestBody)
|
|
||||||
});
|
});
|
||||||
|
|
||||||
if (!response.ok) {
|
if (error) {
|
||||||
const errorText = await response.text();
|
console.error('❌ Erro na edge function:', error);
|
||||||
console.error('Erro na resposta da API:', response.status, errorText);
|
throw new Error(`Falha ao criar grupo: ${error.message}`);
|
||||||
throw new Error(`Falha ao criar grupo: ${response.status} - ${errorText}`);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
const data = await response.json();
|
if (data.error) {
|
||||||
console.log('Grupo criado com sucesso:', data);
|
console.error('❌ Erro da API Evolution:', data.error);
|
||||||
|
throw new Error(`Falha ao criar grupo: ${data.error}`);
|
||||||
|
}
|
||||||
|
|
||||||
|
console.log('✅ Grupo criado com sucesso:', data);
|
||||||
return data;
|
return data;
|
||||||
} catch (error) {
|
} catch (error) {
|
||||||
console.error('Erro ao criar grupo WhatsApp:', error);
|
console.error('❌ Erro ao criar grupo WhatsApp:', error);
|
||||||
throw error;
|
throw error;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -58,19 +59,23 @@ export async function updateGroupRemoteJid(
|
|||||||
remoteJid: string
|
remoteJid: string
|
||||||
): Promise<void> {
|
): Promise<void> {
|
||||||
try {
|
try {
|
||||||
|
console.log('💾 Atualizando remote_jid no banco de dados');
|
||||||
|
console.log('🆔 Group ID:', groupId);
|
||||||
|
console.log('📱 Remote JID:', remoteJid);
|
||||||
|
|
||||||
const { error } = await supabase
|
const { error } = await supabase
|
||||||
.from('grupos_whatsapp')
|
.from('grupos_whatsapp')
|
||||||
.update({ remote_jid: remoteJid })
|
.update({ remote_jid: remoteJid })
|
||||||
.eq('id', groupId);
|
.eq('id', groupId);
|
||||||
|
|
||||||
if (error) {
|
if (error) {
|
||||||
console.error('Erro ao atualizar remote_jid:', error);
|
console.error('❌ Erro ao atualizar remote_jid:', error);
|
||||||
throw error;
|
throw error;
|
||||||
}
|
}
|
||||||
|
|
||||||
console.log(`Remote JID atualizado para o grupo ${groupId}: ${remoteJid}`);
|
console.log('✅ Remote JID atualizado com sucesso');
|
||||||
} catch (error) {
|
} catch (error) {
|
||||||
console.error('Erro ao atualizar remote_jid no banco:', error);
|
console.error('❌ Erro ao atualizar remote_jid no banco:', error);
|
||||||
throw error;
|
throw error;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user