Checkpoint: Correction du bug d'envoi d'emails : les emails sont maintenant envoyés uniquement via SMTP en mode production, sans notification simulée supplémentaire. Ajout de logs détaillés pour faciliter le diagnostic des problèmes d'envoi.
This commit is contained in:
@@ -133,15 +133,29 @@ export async function sendEmail(params: EmailParams): Promise<boolean> {
|
||||
// Récupérer la configuration depuis la base de données
|
||||
const config = await getActiveEmailConfig();
|
||||
|
||||
console.log('[Email] Configuration récupérée:', config ? {
|
||||
provider: config.provider,
|
||||
mode: config.mode,
|
||||
fromEmail: config.fromEmail,
|
||||
hasSmtpHost: !!config.smtpHost,
|
||||
hasSmtpUser: !!config.smtpUser,
|
||||
hasSmtpPassword: !!config.smtpPassword,
|
||||
} : 'Aucune configuration');
|
||||
|
||||
// Si mode simulation ou pas de config, simuler
|
||||
if (!config || config.mode === 'simulation') {
|
||||
console.log('[Email] Mode simulation activé ou pas de config');
|
||||
return await simulateEmail(params);
|
||||
}
|
||||
|
||||
// Si mode production
|
||||
if (config.mode === 'production') {
|
||||
console.log('[Email] Mode production activé');
|
||||
|
||||
// Essayer SMTP en priorité si configuré
|
||||
if (config.provider === 'smtp' && config.smtpHost && config.smtpPort && config.smtpUser && config.smtpPassword) {
|
||||
console.log('[Email] Tentative d\'envoi via SMTP...');
|
||||
|
||||
const sent = await sendViaSMTP(params, {
|
||||
host: config.smtpHost,
|
||||
port: config.smtpPort,
|
||||
@@ -154,14 +168,17 @@ export async function sendEmail(params: EmailParams): Promise<boolean> {
|
||||
|
||||
// Si l'envoi échoue, simuler en fallback
|
||||
if (!sent) {
|
||||
console.log('[Email] Échec de l\'envoi SMTP, basculement en simulation');
|
||||
return await simulateEmail(params);
|
||||
}
|
||||
|
||||
console.log('[Email] Email envoyé avec succès via SMTP');
|
||||
return true;
|
||||
}
|
||||
|
||||
// Sinon essayer Resend
|
||||
if (config.provider === 'resend' && config.apiKey) {
|
||||
console.log('[Email] Tentative d\'envoi via Resend...');
|
||||
const sent = await sendViaResend(params, {
|
||||
apiKey: config.apiKey,
|
||||
fromEmail: config.fromEmail,
|
||||
|
||||
Reference in New Issue
Block a user