I m using personalized mailer library in Codeigniter for sending emails to customers, mails are going perfectly but how can i get bounced email list. Please help me how to do this...Thanks
Unfortunately servers are not required to send a rejected email request. And those that do, have no standard way of doing so. The gmails and hotmails might, but you cant rely on a response.
If you think about it, it would be a great security concern if that were allowed as you could check for all valid emails at a domain.
Related
I'm setting up my Laravel website, and now comes the part where I configure Mailgun to send and receive emails.
I followed different guides to do that, yet I don't feel I'm doing it right. I'm now stuck with this error:
Failed: postmaster#syrianafood.dk → ibrahim_hasan_eng#hotmail.com 'New Order from Ibrahim Hasan' Not delivering to previously bounced address
i.e. Mailgun is not able to deliver my emails. Could you please guide me through this? Thank you!
If mail was sent and rejected by the provider (bad content, headers, etc), Mailgun will automatically blacklist that address from being sent to in the future.
This is to prevent blacklisting yourself from many of the different MX providers out there.
If you think you've solved that problem, you can perform a DELETE request through the Mailgun API in the format of DELETE /<domain>/bounces/<address> before sending the mail, and then you'll be able to send to that address again.
You can check if a bounce has happened previously by performing a POST request to POST /<domain>/bounces. Furthermore, you will receive a JSON object back with a REASON as to why the bounce occurred, giving you the ability to respond in kind to this.
If a domain is not working correctly and it's not in the blacklist, then it's possible that the MX Provider its self is not accepting the emails and is responding unfavorably in a way that Mailgun cannot handle.
You can also delete the mail directly from the Mailgun UI if you have the login credentials. Please see the comment below and give it an upvote.
I did a lot of research through internet but I didn't found the solution. I'm trying to send a confirmation email using Mail::send() in laravel 5.1, I don't want to use any third party like mailgun or mandrill because they are not free sometimes limited of usage. The problem with this is all of the confirmation of the users is in their spam folder in gmail, and trash folder in outlook. Sometimes they didn't receive the confirmation. Why is that? Do you have any idea with this? My website is also registered to https so I don't think this is the problem.
.env
MAIL_DRIVER=smtp
MAIL_HOST=mail.mywebsite.com
MAIL_PORT=587
MAIL_USERNAME=email#mywebsite.com
MAIL_PASSWORD=mypassword
MAIL_ENCRYPTION=tls
Landing of an email into Spam is nothing to do with Laravel.
Either you have to change the TXT record of your domain.
You can check it on mail-tester which values need to be changed.
https://www.mail-tester.com/
You might wanna try testing at Mail Tester. This can reveal a lot of information on why your emails are ending up in spam. I also recommend checking SPF and DKIM checking at SPF & DKIM checking at the same site.
Also are you hosting your emails with your hosting provider or some other third-parties like GSuite or Microsoft Exchange? These providers can influence the mail quality and spam checking greatly.
The spam classification of emails is to the discretion of the receiving mail server. There are a couple of best pratices to follow, when trying to avoid being marked as spam:
Make sure the sending server (smtp server) is allowed through
SPF
DKIM
DMARC
MX records
Further, the recipient server may check for bulk content with decentralized solutions like razor, pyzor or DCC. So, try to personalize the messages and not send bulk content. Its hard to evaluate your situation without specifics. Another problem may be the sending webserver if its in or from a country with "bad reputation" (like Russia, China). Since mail server also check the Original-IP of the email and potentially flag them as well.
SPF:
https://mxtoolbox.com/SPFRecordGenerator.aspx
DKIM:
https://dkimcore.org/tools/keys.html
DMARC:
https://mxtoolbox.com/DMARCRecordGenerator.aspx
To check your settings, it helps to use mail testing solutions visualizing those mentioned factors as mentioned by other answers.
Current email deliverability professional here. If you are willing to share the domain you are sending from, and the IP address initiating the sends I'm happy to check for any obvious problems.
I also heartily recommend mail-tester.com as I use it almost daily. If you want to share the link to the report I'm happy to help interpret.
The other thing to be aware of is, that IP addresses have a sender reputation that is tracked in the Email ecosystem at large. If it's a new sending IP address it has to get warmed up. Just like you cannot get a credit card with no limit as soon as you turn 21, Inbox Providers like Gmail and Hotmail are not just going to deliver everything a new sending IP starts trying to deliver to their recipients. They will essentially do some A/B testing by delivering some to the Inbox and some to the Spam/Promotions folder, and see how their recipients interact with your mailings. Gmail and thus other inbox providers are primarily concerned with how recipients interact with your mailings. Do they open, do they click links, do they add you to safe senders, etc.
-LB
I am trying to build a control that the user can use to send feedback to developer. I am using email as a delivery method and I leverage sendgrid email service for this. Now I want to know the users email address so I can respond back to the user's concern. I am not sure how to get the user's email in window 10. Any help or pointers please?
I would strongly recommend to use the sharing approach that has been introduced with Windows 8 - instead of writing and maintaining your own mail functionality and trying to access additional user data.
Have a look at the existing and built in e-mail functionalities. They make use of the user's connected mail accounts and the mail app. This way you don't need to worry about handling the message transmission or anything but rather hand the information over to the mail client. This way you also know how to reply back.
And as a bonus, the user can still access their message via the Sent Mails folder :)
There is a specific class for that, the EmailMessageClass (https://msdn.microsoft.com/en-us/library/windows/apps/windows.applicationmodel.email.emailmessage.aspx?cs-save-lang=1&cs-lang=csharp#code-snippet-1) as well as a dedicated guide with code example.
https://msdn.microsoft.com/en-us/library/windows/apps/mt269391.aspx
Essentially you can prepopulate the Mail fields with necessary app information where applicable. The user gets to choose which accounts he wants to send the mail from, but it will open in the mail client.
Hi I am using the bellow function, can you please guide me how can I use Mail::failures(); in it
Mail::send('emails.caregiversetprimary', $templateArray, function($message)use($email)
{
$message->to($email, 'username')->subject('my subject');
});
Mail::failures(); < ====== this gives me black array as I have used wrong email
I am using laravel 4.1
tl;dr
You can know which recipients the email has been sent to but no which recipients have received it.
details
You need a better understanding of how mail servers work. From a Laravel point of view, there is no way (or at least not a simple one*) of knowing which recipients got the email. Its a matter of how mail protocol works. You may know which recipients the message has been sent to but no which recipients actually got it.
With Mail::failures() you get a list of recipients to which Laravel tried to send the email but it failed on actually sending it. But again, if it has been sent there is no straightforward way to known if the mail reached their inbox or no.
*If you happend to use Mailgun, Mandrill or any other 3rd party software then you are not dealing with a mail server 'per se' but with an API service. May be you could check the mail service provider documentation to research if they perform any kind of delivery tracking that you can programatically check.
I have developed a website in joomla, and I have a contact us page, in that the form works fine only when I use to send an email from the same domain
Eg :
From : rimaz#abcd.com
To : john#abcd.com
But when I send to a different domain the form gives an error as "Could not instantiate mail function."
Eg :
From : rimaz#abcd.com
To : john#gmail.com
Can anyone explain me about this problem ??
Instead of debugging your providers SMTP / email setup you can use the new mandrill service from the guys who do mailchimp - Mandrill ( http://blog.mailchimp.com/public-beta-of-mandrill-smtp-email-service/ ) with the plugin :
http://extensions.joomla.org/extensions/content-sharing/mailing-a-distribution-lists/20624
Mandrill is a plugin that allows your Joomla installation to send transactional emails. The only thing you need to do is to provide your Mandrill API key and enable the plugin. After that all emails (new user registration, password reset etc) will be send through the Mandrill service.
Mandrill Features:
Uses MailChimp's awesome email delivery engine instead of your server
Tracks opens and clicks so you know how effective these emails are to your users . Now you can > see what you need to change to make them
more effective.
Has pretty, visual reports of the email results
Allows you to tag the emails and see your stats filtered by tag
Why would understanding transactional emails be important for you. An example is when a user signs > up on your site an email is sent via Joomla. But, you get no reports to understand how effective that email did. These emails are sent as instructions to your users telling them a message you want them to understand. Where they designed good? Was the content well written? Was it structured properly? This is hard to say when it goes thru Joomla but now you will understand all this when the emails goes thru Mandrill.
This is a setting from your host. YOu can ask them for help in figuring out how to make it work, but they are trying to prevent you from using their hosting to spam people.
Sometimes it is possible to work around it but not always.
This usually happens due to restrictive mail server settings, which you most likely don't have influence on with shared hosting.
If you have more control over the server, you should fix the mail server settings.
If not, the easiest way is to use Joomla's ability to send mails using any SMTP mail account. Create a mail account for Joomla, and enter the credentials in Joomla's configuration. Joomla will then use that account to send mails. So will extensions, if they are properly written.