Использование sendgrid, как узнать, была ли моя электронная почта возвращена или успешно доставлена ​​​​в моем коде

Я использую модуль Sendgrid npm для отправки электронных писем своим клиентам с помощью node.js, теперь я столкнулся с проблемой здесь, когда я отправляю электронное письмо на несуществующее электронное письмо, тогда мое электронное письмо возвращается, но в моем ответе на моем сервере код, который я получаю «успех», но на моей панели инструментов sendgrid он показывает мне электронную почту как возвращенную, теперь может кто-нибудь, пожалуйста, скажите мне, как я могу узнать в своем коде, был ли мой код возвращен или успешно отправлен.

Мой код приведен ниже

var options = {
        auth: {
            api_user: 'abc',
            api_key: 'pass'
        }
    }

    var mailer = nodemailer.createTransport(sgTransport(options));

    var email = {
        to: email_id,
        from: '[email protected]',
        subject: 'ABC Verification Code',
        text: "Your ABC Verification Code is " + totp
//        html: '<b>Awesome sauce</b>'
    };

    mailer.sendMail(email, function(err, res) {
        if (err) { 
            console.log(err);
            res.json({success : 0, message : "Sorry Please try Again"});
            return next();
        } else {
            console.log('res: ', res);
            res.json({success : 1, message : "Successfully Sent Otp To Email Id"});
            return next();
        }
    });

Также еще один вопрос здесь, когда я отправляю свою электронную почту, используя идентификатор группы без подписки, тогда моя электронная почта всегда доставляется в разделе «промоакции» gmail. Может ли кто-нибудь сказать мне, как я могу показать свою электронную почту пользователю в разделе «обновления» gmail.


person Prakash Kumar    schedule 14.10.2016    source источник


Ответы (1)


API SendGrid является асинхронным. Ваш запрос принят и затем проходит несколько этапов обработки, включая доставку. На запросы API потребуется очень много времени, чтобы ответить, если им придется ждать попытки доставки.

У вас есть два варианта. Лучше всего использовать веб-перехватчик событий для получения событий в режиме реального времени. Вот пример кода веб-перехватчика событий nodejs:

var express = require('express');
var app = express();

app.configure(function(){
  app.set('port', process.env.PORT || 3000);
  app.use(express.bodyParser());
});

app.post('/event', function (req, res) {
  var events = req.body;
  events.forEach(function (event) {
    // Here, you now have each event and can process them how you like
    processEvent(event);
  });
});

var server = app.listen(app.get('port'), function() {
  console.log('Listening on port %d', server.address().port);
});

Или вы можете опросить свои списки подавления через API, используя, например. конечная точка отказов.

Невозможно контролировать, какую вкладку Gmail использует для отображения вашего сообщения, это основано на анализе Google содержания сообщений и ваших привычках отправки.

person bwest    schedule 14.10.2016