SOA UMS Email Populating black list - email

I'm sending email notifications through SOA using UMS. However, email server has a limit on the amount of emails sent and some go to invalid emails.
I'm trying to find a way to retrieve notifications of message delivery failure in order to populate a black list. SOA human workflow notifications are sucessfully sent despite the email address, they only record status on gateway delivery. Email client is not registering sent notifications nor is it receiving delivery failure notifications. (Unless I send an email through the email client, not from SOA)
Basically, I would like to know if UMS stores information of delivery failure to recipient (not gateway) and if so how can I access it. In alternative, how can I setup email client to register sent notifications and receive failure reports that can somehow be passed to SOA so they can be analyzed and the email added to a black list.
Any info missing that can help solving this issue just ask and I'll append it to the post.
Best regards,
Martin

You can create an inbound UMS adapter polling the inbox to read all the incoming mails. UMS adapter has a filtering option to read only mails that matches the pattern. Set the pattern to read only delivery failure notifications. That way the polling service will get triggered only for messages with delivery failure.
Try this out and let me know if this solve your problem.
Regards,
Viv

Related

Sendgrid - Activity says email delivered but email not received

I tried to send an email through sendgrid. I have a custom domain myself#contoso.com. If i try to send an email to user1#gmail.com with the from address as myself#contoso.com,then,the email is delivered to gmail with "via". When i try sending email to myself#contoso.com with the from address being myself#contoso.com the activity says the email is delivered however, in outlook client i have not received the email. What is it that I can try or do?
I have tried whitelisting contoso.com but it did not work
This is not an answer, as it doesn't help work out why the emails that are "Delivered" have not been received, but this is SendGrid's note on why Email messages with the “Delivered” status are not received:
Twilio SendGrid posts the Delivered event after the destination server accepts the message with a 250 OK response. Once an email is accepted by the destination server, we are unable to see what happens to the message. The receiving server could send it to the inbox, queue it for later delivery, put it into the spam folder, etc.
Often times, a recipient domain will initially accept a message for delivery, and then apply additional filtering afterwards. In this situation, we would have posted the Delivered event, but not have any insight into the additional filtering. Any additional Twilio SendGrid events for your email message would be triggered by recipient engagement (i.e. open/click events, unsubscribes, etc.).
Also note that at the time of writing, that answer had 26 downvotes (and zero upvotes) on the SendGrid website, probably indicating that many other users have experienced this problem.
I had several issue solving this problem. The most important part is to set "Sender Authentication" from sendgrid to your domain dns. There is a instruction here. I'm using godaddy, so the link to set dns is https://dcc.godaddy.com/manage//dns .

Multiple emails when triggered from SendGrid remain undelivered and stay in "Processed" state

I am using SendGrid to send email notifications. I have a requirement where I send multiple reminder emails once a day.
Currently, I am facing an issue with this. When the emails are triggered, ideally 5 emails should be sent from the application but instead of that only 1 mail is received. When checked in the logs and SendGrid dashboard it is observed that the emails are triggered but they stay in a Processed state which stops them from being delivered to the respective recipients.
I am not understanding what is this issue about and why is this happening even after receiving success code from SendGrid.
The success code from SendGrid just means that they received the message properly from you. Email is asynchronous, and the SendGrid 200 doesn't mean the message was delivered. In your SendGrid Email Activity, look and see if you have Deferred events for those additional messages; trying to send multiple messages to the same address at the same moment may be causing warmup-based deferrals, until the receiving system trusts you.

How do I change the email address that Amazon SES feedback reports go to?

Background: I was handed the reins for our company's AWS account to implement a process to make sure our SES delivery report notifications can get acted on instead of just being filed away or deleted.
That said, the first hurdle is that the email address associated with our company's helpdesk keeps receiving all Amazon SES notifications for bounces, complaints and delivery failures. This creates a mess for our support staff in having to wade through these emails individually, and our ticketing system doesn't have the capability of auto-forwarding emails even though I can categorize them based on rules when they arrive.
I have read through all the knowledge base articles for SES notifications as well as ~380 forum topics relating to email notifications, but I didn't see an answer posted this question even though it had been asked a handful of times.
What we've done:
Set up a dedicated email inbox for these requests so we can then process them correctly (that we want to divert these messages to).
Created an SNS topic with the new email address as its endpoint and applied it to all categories, but the emails still kept going to support, so that clearly wasn't the solution.
Removed all hard-coded references to these emails from our software code, but we still get individual Amazon SES notifications to the helpdesk (~30 a day).
Simple idea, but AWS is pretty intimidating especially for our small company where no one has taken the time to learn through the ins and outs after first setting it up (fire and forget).
Edit for clarity, the emails I'm trying to redirect are "Delivery Status Notification (Failure/Delay)" and "Undeliverable:..."
Here's how i got this to work:
Under "AWS SNS"
Create an SNS Topic
Create a subscription to the topic that sends an email to your desired "catch address"
Confirm this subscription by clicking the link sent by AWS to this address
Under "SES Management - Identity Mangement"
Verify a domain or email address
At the domain/email address go to Notification and DISABLE Email Feedback Forwarding
Same place select your SNS topic for Bounces and Complaints
Under "SES Managment - Email Receiving"
Create a Rule set and then create a rule with the domain or email address above
Make the action the SNS rule above
When sending mail be sure that the From address is using the domain/email address above. All bounces and complaints should now end up in the catch address inbox. ALL OF THIS must be setup in the same region.
These notifications are configured either at a verified Domain level or at a verified email address level. This page has info on it. At the bottom, it talks about how you can confirgue to have messages sent to email or a SNS topic. You probably have a notification setup on your domain or the specific email address you are using.
You'll find all this in the SES section of the AWS Console under the Identity Management section. Make sure you check both the Domains area and the Email Addresses area.
You make the feedback address differ from the sender by setting the Return-Path header in your message (subject to a few other rules):
From the developer guide:
If you used the SMTP interface to send the message, then notifications go to the address specified in the MAIL FROM command.
If you used the SendEmail API operation to send the message, then the notifications are delivered according to the following rules:
If you specified the optional ReturnPath parameter in your call to the SendEmail API, then notifications go to that address.
Otherwise, notifications go to the address specified in the required Source parameter of SendEmail.
If you used the SendRawEmail API operation to send the message, then the notifications are delivered according to the following rules:
If you specified a Source parameter in your call to the SendRawEmail API, then notifications go to that address. This is true even if you specified a Return-Path header in the body of the email.
Otherwise, if you specified a Return-Path header in the raw message, then notifications go to that address.
Otherwise, notifications go to the address in the From header of the raw message.

Gmail blocked emails sent from Send Grid

We are trying to send mail on to Gmail account by using send grid api but Gmail has blocked the email which is sent from send grid. Please check the message given below:
550 5.7.1 [167.89.24.147 12] Our system has detected that this message is likely unsolicited mail. To reduce the amount of spam sent to Gmail, this message has been blocked. Please visit http://support.google.com/mail/bin/answer.py?hl=en&answer=188131 for more information. kw15si11591084pab.218 - gsmtp
We have checked all header parameter suggested by Send Grid and implemented it in our code. At the same moment, it works fine for other domain like AOL, Rediff etc.
Please suggest how we overcome with this problem as we have huge users on Gmail and we will send our emails to all those users as. Also, we have noticed that the email came after some time from Send Grid.
Many thanks in advance.
The recipient mail server analyzed your message and determined that the content of the message is spammy. My recommendation would be to run your formatted message through a third-party service, www.mail-tester.com , to identify ways to improve the reception of the message. It's also possible that your sending IP address, 167.89.24.147 based on the response message you've included, is listed on a black list. You'll want to scan your sending IP on a site like http://multirbl.valli.org/ and, if you see that your IP is listed anywhere, submit a delisting request with the black list.
SendGrid also has a Spam Checker app - Turning on SendGrid's Spam Checker app can help combat this, as you're able to set a predefined filter and get alerted when your content exceeds the filter that you set.

Creating a plugin/component that will filter incoming emails on an exchange server?

Is there a predefined protocol / API that will allow me to create a plugin component for exchange (let's say 2007+)?
I need to write a simple spam filter that will communicate with the exchange server and receive every mail that is received by that server. If the mail doesn't pass a check, it will be deleted from the server before being delivered to the user. If it is ok, it will be placed in the user's inbox.
I am looking for a protocol that supports the following:
subscribe to receive a notification whenever an email arrives to the server (before the email is placed in the users' in-box.
get the content of such emails.
have the ability to block further processing on some emails (so they are blocked before reaching the inbox).
Thanks in advance,
May be u can write a transport agent(Exchange Server 2007onwards) which will monitor and act on all the emails flowing through the organisation.
You can get most of the details of an email via a transport agent depending on the event at which u trigger the agent.
Here's a link which gives a thorough documentation.
http://msdn.microsoft.com/en-us/library/exchange/bb204097(v=exchg.150).aspx
You can check body/subject and if it doesn't comply with any of the organisational policy,just clear off all the recipients and the email delivery won't happen.