#!/usr/bin/env node // Test E-Mail-Konfiguration // Verwendung: node test-email.js "empfaenger@example.com" require('dotenv').config(); const nodemailer = require('nodemailer'); const recipientEmail = process.argv[2] || 'tsschulz@gmx.net'; console.log('📧 Teste E-Mail-Konfiguration...'); console.log(''); console.log('SMTP-Server:', process.env.EMAIL_HOST); console.log('Port:', process.env.EMAIL_PORT); console.log('Secure:', process.env.EMAIL_SECURE); console.log('User:', process.env.EMAIL_USER); console.log('From:', process.env.EMAIL_FROM); console.log('An:', recipientEmail); console.log(''); // Erstelle Transporter const transporter = nodemailer.createTransport({ host: process.env.EMAIL_HOST, port: parseInt(process.env.EMAIL_PORT), secure: process.env.EMAIL_SECURE === 'true', auth: { user: process.env.EMAIL_USER, pass: process.env.EMAIL_PASSWORD } }); // Test-E-Mail senden async function sendTestEmail() { try { console.log('🔄 Verbinde mit SMTP-Server...'); // Verify connection await transporter.verify(); console.log('✅ SMTP-Verbindung erfolgreich!'); console.log(''); console.log('📤 Sende Test-E-Mail...'); const info = await transporter.sendMail({ from: `"${process.env.EMAIL_FROM_NAME || 'TimeClock'}" <${process.env.EMAIL_FROM}>`, to: recipientEmail, subject: 'TimeClock v3 - Test E-Mail', text: `Dies ist eine Test-E-Mail von TimeClock v3. Wenn du diese E-Mail erhältst, funktioniert die E-Mail-Konfiguration korrekt! Gesendet am: ${new Date().toLocaleString('de-DE')} --- TimeClock v3 Zeiterfassung ${process.env.FRONTEND_URL || 'https://stechuhr3.tsschulz.de'} `, html: `

TimeClock v3 - Test E-Mail

Dies ist eine Test-E-Mail von TimeClock v3.

Wenn du diese E-Mail erhältst, funktioniert die E-Mail-Konfiguration korrekt!

Gesendet am: ${new Date().toLocaleString('de-DE')}


TimeClock v3 Zeiterfassung
${process.env.FRONTEND_URL || 'https://stechuhr3.tsschulz.de'}

` }); console.log(''); console.log('✅ E-Mail erfolgreich gesendet!'); console.log(''); console.log('Message ID:', info.messageId); console.log('Response:', info.response); console.log(''); console.log('🎉 E-Mail-Konfiguration funktioniert!'); console.log(''); console.log('📬 Prüfe dein E-Mail-Postfach:', recipientEmail); console.log(' (inkl. Spam-Ordner)'); process.exit(0); } catch (error) { console.error(''); console.error('❌ Fehler beim E-Mail-Versand:'); console.error(''); console.error(error.message); console.error(''); if (error.code === 'EAUTH') { console.error('💡 SMTP-Authentifizierung fehlgeschlagen!'); console.error(' Prüfe EMAIL_USER und EMAIL_PASSWORD in .env'); } else if (error.code === 'ECONNECTION') { console.error('💡 Verbindung zum SMTP-Server fehlgeschlagen!'); console.error(' Prüfe EMAIL_HOST und EMAIL_PORT in .env'); } else if (error.code === 'ETIMEDOUT') { console.error('💡 Timeout beim Verbinden!'); console.error(' Prüfe Firewall-Einstellungen (Port', process.env.EMAIL_PORT, ')'); } console.error(''); console.error('Aktuelle Konfiguration:'); console.error(' EMAIL_HOST:', process.env.EMAIL_HOST); console.error(' EMAIL_PORT:', process.env.EMAIL_PORT); console.error(' EMAIL_SECURE:', process.env.EMAIL_SECURE); console.error(' EMAIL_USER:', process.env.EMAIL_USER); console.error(' EMAIL_FROM:', process.env.EMAIL_FROM); process.exit(1); } } sendTestEmail();