Mailgun: сообщения "Accepted", но длительное время для доставки (или не доставки)

Я использую Mailgun для сайта, который я поддерживаю, обычно Mailgun отлично работает, но я сталкиваюсь с какой-то странной проблемой. Мой script вызывает HTTP API для отправки сообщений с помощью Mailgun, они затем отображаются в моем журнале как "принятые", но затем очень долгое время "доставляются", часто не доставляются вообще и просто остаются как "принято". Кто-нибудь испытал подобную ошибку или кто-нибудь может предложить способ исправить это? Я догадываюсь об этом в аргументах, предоставленных API, но я не могу на всю жизнь понять проблему.

Проблема существует для разных доменов получателей и разного времени суток.

Журнал проблемного сообщения JSON приведен ниже. Я, конечно, изменил адреса и домены.

{
    "tags": [], 
    "timestamp": 1411498829.247304, 
    "envelope": {
        "targets": "[email protected]", 
        "transport": "", 
        "sender": "[email protected]"
    }, 
    "recipient-domain": "address.com", 
    "event": "accepted", 
    "campaigns": [], 
    "user-variables": {}, 
    "flags": {
        "is-authenticated": true, 
        "is-system-test": false, 
        "is-test-mode": false
    }, 
    "message": {
        "headers": {
            "to": "[email protected]", 
            "message-id": "[email protected]", 
            "from": "\"the-site-in-question.com\" <[email protected]>", 
            "subject": "Dom, your password was reset."
        }, 
        "attachments": [], 
        "recipients": [
            "[email protected]"
        ], 
        "size": 556
    }, 
    "recipient": "[email protected]", 
    "method": "http"
}

Ответ 1

Когда сообщение отображается как "Принято" в журналах Mailgun, это указывает, что Mailgun принял это сообщение и поставил его в очередь для доставки. Сообщение должно быть доставлено достаточно быстро, однако оно может быть поставлено в очередь на некоторое время, если вы отправили большое количество сообщений одновременно или если ESP-получатель подавляет сообщения из IP/домена в вашей учетной записи.

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

Ответ 2

Если это происходит регулярно, очень вероятно, что у Mailgun есть один из их IP-адресов с низким уровнем. Я предполагаю, что это значение по умолчанию для бесплатных учетных записей, так как они не хотят "загрязнять" свои хорошие адреса новыми пользователями, которые не могут быть серьезными/законными.

Вы можете проверить "качество" IP-адреса на сайте, например "Оценка отправителя" . Найдите эту строку в журнале Mailgun доставленного сообщения:

"sending-ip": "XXX.XX.XXX.XXX"

Если "Оценка отправителя" показывает оценку в 70-е годы, это ваша проблема. Отправить Mailgun билет поддержки, как предложил Крис, и посмотреть, смогут ли они получить вас на IP-адрес более высокого качества. Я сделал это, и мои письма теперь отправляются с IP-адреса со счетом в 90-х. С тех пор не было никакой задержки.