mailparser updated

This commit is contained in:
2025-07-08 16:31:29 -05:00
parent 9a3e279212
commit cb25a44d69
18 changed files with 12846 additions and 212 deletions

View File

@@ -2,7 +2,7 @@ import express from 'express';
import { Pool } from 'pg';
import AWS from 'aws-sdk';
import nodemailer from 'nodemailer';
import { MailParser } from 'mailparser';
import { simpleParser } from 'mailparser';
import { Base64 } from 'js-base64';
import { createGzip, gunzipSync } from 'zlib';
import { createLogger, format, transports } from 'winston';
@@ -145,15 +145,8 @@ app.post('/process/:domain', async (req, res) => {
const raw = Base64.decode(content);
const emailBytes = compressed ? gunzipSync(Buffer.from(raw, 'binary')).toString('binary') : raw;
const parser = new MailParser();
const emailBuffer = Buffer.from(emailBytes, 'binary');
await new Promise((resolve, reject) => {
parser.on('error', reject);
parser.on('end', resolve);
parser.write(emailBuffer);
parser.end();
});
const parser = await simpleParser(body);
const fromAddr = parser.from?.value[0]?.address || `lambda@${domain}`;
recipients = [
...(parser.to?.value || []),