feat: funzione per l'invio della posta elettronica da otrs-turbo. fix: corretta consuntivazione automatica. feat: aggiunto link apri in otrs anche nel numero del ticket in cima

This commit is contained in:
Gabriele Cimaschi
2026-07-08 21:46:11 +02:00
parent 9a91c3d9f5
commit 5b914eb198
15 changed files with 1358 additions and 9 deletions
+35
View File
@@ -0,0 +1,35 @@
/**
* utils/mailer.js
* Factory: seleziona il metodo di invio email corretto in base alla configurazione .env.
* Priorità: Graph API (se AZURE_TENANT_ID configurato) → SMTP (se SMTP_HOST configurato)
*/
'use strict';
function getMailer() {
if (process.env.AZURE_TENANT_ID && process.env.AZURE_CLIENT_ID && process.env.AZURE_CLIENT_SECRET) {
return require('./graphMailer');
}
if (process.env.SMTP_HOST) {
return require('./smtpMailer');
}
throw new Error('[Mailer] Nessun metodo di invio email configurato. Impostare AZURE_TENANT_ID oppure SMTP_HOST nel .env.');
}
/**
* Invia una email usando il metodo configurato (Graph API o SMTP).
*
* @param {Object} options
* @param {string[]} options.to
* @param {string[]} [options.cc]
* @param {string[]} [options.bcc]
* @param {string} options.subject
* @param {string} options.bodyHtml
* @param {Array} [options.attachments]
* @param {Array} [options.inlineImages]
*/
async function sendMail(options) {
const mailer = getMailer();
return mailer.sendMail(options);
}
module.exports = { sendMail };