Envio plantilla sendinblue entrada online

This commit is contained in:
David Arranz 2022-09-19 14:29:00 +02:00
parent 73f8ed5de7
commit 46f2717507
3 changed files with 58 additions and 17 deletions

View File

@ -1,4 +1,6 @@
const moment = require("moment");
const sendinblueHelper = require("./sendinblue.helper");
const mailjet_public = "c9cbd50d7f4afe487e56949f95cb28a0";
const mailjet_private = "f8b77ee8e7b1181d94f07905d90e18c6";
const mailjet_from_email = "info@loquedeverdadimporta.org";
@ -125,16 +127,13 @@ function sendTicket(header, values) {
},
],*/
};
console.log('sendTicket >>>>>>>>>>>>>>>>>>>>>>>>>>>>>><<<', header, body)
return send(header, body);
}
function sendTicketOnline(header, values) {
//console.log('>>>>>>>>>>>>>>>>>>><<VALUES ONLINE>>>', values);
const body = {
TemplateID: 3717629,
TemplateID: 177,
TemplateLanguage: true,
TemplateErrorDeliver: true,
TemplateErrorReporting: {
@ -147,15 +146,15 @@ function sendTicketOnline(header, values) {
eventName: values.eventName,
dateEvent: values.dateEvent,
dateInscription: values.dateInscription,
color: values.color ? values.color : "green",
color: values.color ? values.color : "gray",
nameInscription: header.name,
},
};
console.log(body.Variables);
return send(header, body);
// console.log(body.Variables);
return sendinblueHelper.sendEmailTransactional(header, body);
// return send(header, body);
}
function sendListaEspera(header, values) {

View File

@ -7,6 +7,47 @@ const defaultClient = SibApiV3Sdk.ApiClient.instance;
const apiKey = defaultClient.authentications['api-key'];
apiKey.apiKey = config.sendinblue.API_KEY;
function sendEmailTransactional(header, body) {
if (header === undefined || header === null) {
throw new Error("Missing the required parameter 'header' when calling sendEmailTransactional");
}
if (body === undefined || body === null) {
throw new Error("Missing the required parameter 'body' when calling sendEmailTransactional");
}
let apiInstance = new SibApiV3Sdk.TransactionalEmailsApi();
let sendSmtpEmail = new SibApiV3Sdk.SendSmtpEmail();
sendSmtpEmail.templateId = body.TemplateID;
sendSmtpEmail.sender = { name: 'Fundación Lo Que De Verdad Importa', email: 'info@loquedeverdadimporta.org' };
sendSmtpEmail.to = [{ name: header.name, email: header.to }];
if (header.bcc) { sendSmtpEmail.bcc = [{ name: header.bccName, email: header.bcc }] };
sendSmtpEmail.subject = header.subject;
sendSmtpEmail.params = {
tipoEntrada: body.Variables.tipoEntrada,
color: body.Variables.color,
descripcionEntrada: body.Variables.descripcionEntrada,
eventName: body.Variables.eventName,
dateEvent: body.Variables.dateEvent,
nameInscription: body.Variables.nameInscription,
};
apiInstance.sendTransacEmail(sendSmtpEmail).then(function (data) {
console.log('API called successfully. Returned data: ' + JSON.stringify(data));
}, function (error) {
console.error(error);
});
}
function _createMember(member) {
const api = new SibApiV3Sdk.ContactsApi();
@ -21,7 +62,7 @@ function _createMember(member) {
SMS: member.phone,
SOURCE: member.source,
USERID: member.userId,
ENTITYNAME: (member.entity) ? member.entity : '',
ENTITYNAME: (member.entity) ? member.entity : '',
RESERVATIONCODE: (member.reservation_code) ? member.reservation_code : '',
TICKETCODE: member.code_ticket,
//VALIDATED: (member.validated) ? 1 : 0,
@ -46,7 +87,7 @@ function _createMember(member) {
reject(error);
});
});
};
};
function _addMemberToList(member, listId) {
const api = new SibApiV3Sdk.ContactsApi();
@ -56,13 +97,13 @@ function _addMemberToList(member, listId) {
return new Promise(function (resolve, reject) {
api.addContactToList(listId, contactEmails)
.then(function(data) {
.then(function (data) {
console.debug('API called successfully. Returned data: ' + data);
if ((data.contacts.success) && (data.contacts.success[0] === member.email)) {
resolve(data.contacts.success[0])
} else reject()
})
.catch(function(error) {
.catch(function (error) {
reject(error)
})
});
@ -112,14 +153,14 @@ function getLists() {
};
function addMember(listId, member) {
function addMember(listId, member) {
return new Promise(function (resolve, reject) {
_createMember(member)
.then(function(contact) {
.then(function (contact) {
console.debug('añadir a lista: ' + listId + ' * ' + contact);
return _addMemberToList(contact, listId);
})
.then(function() {
.then(function () {
resolve(true);
})
.catch(function (error) {
@ -135,6 +176,7 @@ function deleteMember(listId, member) {
module.exports = {
sendEmailTransactional,
getLists,
addMember,
deleteMember,

View File

@ -65,11 +65,11 @@
"sanitize-filename": "^1.6.2",
"sequelize": "^5.16.0",
"sharp": "^0.23.0",
"sib-api-v3-sdk": "^7.2.4",
"sib-api-v3-sdk": "^8.4.2",
"tinytim": "^0.1.1",
"unique-file-name": "^1.0.0",
"vimeo": "^2.1.1",
"vm": "^0.1.0",
"winston": "^3.2.1"
}
}
}