I have a firebase project using node.js and I have a form that logs in and can sign up new users. I have recently wanted to make a welcome function that send a welcome email to the user when they sign up and when running the function no email is sent but no errors are thrown either. I expected an email to be sent to the email, nathantolley2008@gmail.com, but no email is sent.
I have a functions folder in my root directory and this is what the structure of that folder looks like:
The code for the index.js file is as follows:
const functions = require("firebase-functions");
const { sendEmail } = require('./sendEmail');
// Export the functions
exports.sendEmail = functions.auth.user().onCreate((user) => {
sendEmail(user);
});
The config.js file:
const functions = require('firebase-functions');
const admin = require('firebase-admin');
const serviceAccount = require('./course-curve-firebase-adminsdk-ae6ht-411a2a0ae9.json');
admin.initializeApp({
credential: admin.credential.cert(serviceAccount),
databaseURL: serviceAccount.databaseURL
});
const getEmailConfig = async () => {
const snapshot = await admin.firestore().collection('config').doc('email').get();
return snapshot.data();
};
module.exports = getEmailConfig;
And lastly the send emails file:
const functions = require('firebase-functions');
const nodemailer = require('nodemailer');
const getEmailConfig = require('./config');
const transporter = nodemailer.createTransport({
service: 'Gmail',
auth: getEmailConfig,
});
const sendEmail = async (user) => {
const emailConfig = await getEmailConfig();
const mailOptions = {
from: emailConfig.email_address,
to: 'nathantolley2008@gmail.com',
subject: 'New User Registered',
html: `<p>New user registered: ${user.email}</p>`,
};
try {
await transporter.sendMail(mailOptions);
console.log('Email sent successfully');
} catch (error) {
console.error('Error sending email:', error);
}
};
module.exports = {sendEmail};
Any help on figuring out why my function isn't working would be greatly appreciated. Have a blessed day.
Via Active questions tagged javascript - Stack Overflow https://ift.tt/XzfpWjk
Comments
Post a Comment