VVT
Active Member
Hi @twisted1919 ,
I just found that a wide category of soft bounces are being marked as unsubscribes when elastic email webhooks are used.
Here's the webhook list : https://elasticemail.com/support/delivery/http-web-notification
Here's its explanation : https://elasticemail.com/support/user-interface/activity/bounced-category-filters
While comparing the stats, you can find that only "No Mailbox" and "Account Problem" should be considered as hard bounces, all others fall in to soft category.
But, hard bounces, soft bounces and unsubscribes all are mishandled in this file : /apps/frontend/controllers/DswhController.ph
You can see the category "Spam" is treated as unsubscribe, but actually it's a soft bounce. Also, handles are not available for all the categories (may be they added them after you wrote the extension).
The biggest problem I face is, instead of soft bounces, those are unsubscribed from the list. So, I request you to fix this as soon as possible
I just found that a wide category of soft bounces are being marked as unsubscribes when elastic email webhooks are used.
Here's the webhook list : https://elasticemail.com/support/delivery/http-web-notification
Here's its explanation : https://elasticemail.com/support/user-interface/activity/bounced-category-filters
While comparing the stats, you can find that only "No Mailbox" and "Account Problem" should be considered as hard bounces, all others fall in to soft category.
But, hard bounces, soft bounces and unsubscribes all are mishandled in this file : /apps/frontend/controllers/DswhController.ph
PHP:
if (in_array($category, array('Ignore', 'DNSProblem', 'NotDelivered', 'NoMailbox', 'AccountProblem', 'ConnectionTerminated', 'ContentFilter'))
) {
$softBounce = in_array($category, array('AccountProblem', 'ConnectionTerminated', 'ContentFilter'));
$bounceLog = new CampaignBounceLog();
$bounceLog->campaign_id = $campaign->campaign_id;
$bounceLog->subscriber_id = $subscriber->subscriber_id;
$bounceLog->message = 'BOUNCED BACK: ' . $category;
$bounceLog->bounce_type = $softBounce ? CampaignBounceLog::BOUNCE_SOFT : CampaignBounceLog::BOUNCE_HARD;
$bounceLog->save();
if ($bounceLog->bounce_type == CampaignBounceLog::BOUNCE_HARD) {
$subscriber->addToBlacklist($bounceLog->message);
}
Yii::app()->end();
}
if ($category == 'Spam' || ($category == 'Unknown' && $status == 'AbuseReport')) {
if (Yii::app()->options->get('system.cron.process_feedback_loop_servers.subscriber_action', 'unsubscribe') == 'delete') {
$subscriber->delete();
Yii::app()->end();
}
You can see the category "Spam" is treated as unsubscribe, but actually it's a soft bounce. Also, handles are not available for all the categories (may be they added them after you wrote the extension).
The biggest problem I face is, instead of soft bounces, those are unsubscribed from the list. So, I request you to fix this as soon as possible