Archive

Category Archives for "Broadcasts"

Bounces and Invalid Emails

There are many reasons why an email is not delivered to the recipient.

  • Auto-responses and Vacation Replies
  • Email delivered to “Junk” or “Spam” folder of recipient
  • General undeliverable emails with no error specified by recipient’s server
  • Recipient email server is down or unreachable
  • “Connection timed out”
  • Recipient mail box full
  • Recipient email address not found
  • Temporary non-delivery (server will keep trying for a few more days)
  • Your server IP is blocked by recipient’s ISP (“Relaying Denied”)
  • Your server IP is blacklisted for suspected spam

And the list goes on!

That should give you an idea why email delivery is so tricky and complicated, which is what created a niche for the email delivery industry, and which is why companies like Aweber, MailChimp and GetResponse even came into existence and have thrived while charging a hefty fee for what you would think is the simple act of delivering email over the interwebs.

When you use DAP for sending out emails (whether autoresponder or broadcast emails), the “From Name” and “From Email” you set up in the DAP Config are used to send out the emails.

If you use your own web host as the “carrier”, then your web host’s email server is the one that carries the email and tries to deliver to the inbox of the recipient. And web hosts are generally not very good at the intricate science of email delivery, which is why if you’re going to use DAP, we recommend that you bypass your web host and have a third-party email system like Amazon SES deliver your emails.

Regardless of the carrier (web host, Amazon SES, AuthSMTP.com, etc), all bounced and undeliverable emails come back to the “From Email” that you have used under DAP Config.

DAP by itself does not do anything with those emails, as those emails don’t come back to DAP, but they go straight to the inbox of whatever “From Email” you have specified.

We will surely address this in the future. But for now, you will have to manually review those email bounces, see which one of them sound more serious (like, say, recipient email id not found, or domain no longer in use, etc), and then de-activate those email id’s from your DAP database.

When you use Amazon SES, Amazon by itself also monitors email id’s that have a consistent history of bouncing back, and will automatically suppress those email id’s and won’t even deliver email to those email id’s even if DAP did send the actual email to those id’s.

Emailing Expired Users

You can send an email broadcast to expired users of a product/level, on the DAP Admin > Email > Broadcasts page, by selecting Group #4.

The same feature works for sending emails to those who have “Cancelled” their subscription or trial.

Go to DAP Admin > Email > Broadcasts
Select Group #4.
1st drop-down: Select Product Name
2nd drop-down: Select “Have Already Expired”
3rd text field: Enter within how many days the users should’ve expired – as in, expired in the “Last X Days

dap-broadcast-cancelled-users

Once you’ve scheduled the broadcast, the emails will be sent out at the top of the hour when the DAP hourly cron runs.

Troubleshooting Amazon SES Integration

DAP’s Amazon SES integration has been heavily tested, and we use it ourselves at DigitalAccessPass.com . So you can rest assured that there are no “bugs” of any kind.

Here are some troubleshooting steps if SES integration is not working even after you’ve followed the documentation exactly.

Troubleshooting SES

  1. MOST COMMON MISTAKE: Have you whitelisted the DAP “From” email in Amazon? And have you used exact same “case” for the email id in both places (DAP and Amazon)? Double-check spelling and case in both DAP and Amazon – they must be EXACTLY the same. For eg., you@yoursite.com is NOT the same as You@YourSite.com as far as Amazon is concerned. So if you’ve set the “From Email” in DAP to be you@yoursite.com, then you must whitelist exactly the same email id you@yoursite.com within your Amazon SES account as well. If you are not sure, delete the whitelisted email in your SES account, then COPY the from-email from DAP config (be sure to copy, and not re-type) and then PASTE the exact from-email into your Amazon SES account and whitelist it again.
  2. IMPORTANT: Have you requested Amazon for “Production Access” to your SES account? Being in “Sandbox” mode has its disadvantages (you can only send “from” and “to” whitelisted” emails ONLY). So your account MUST, MUST, MUST be in “Production” mode before Amazon SES lets you send emails to your customers.
  3. Are you using the exact ports as mentioned in our documentation? Ignore the port #s that Amazon recommends.
  4. IMPORTANT: Double-check with your web host to make sure that they actually allow a plugin like DAP to connect to a third-party server like Amazon SES to send out emails. Some hosts don’t even allow that to begin with (like BlueHost, for eg.)
  5. Turn on the logs by setting DAP > Setup > Config > Log Level to “Log All Activity”.
  6. Then go to System > Logs and clear the logs. Then go to one of your test accounts, and edit the user.
  7. On the “User Edit” page, click on “Resend Login/Password”.
  8. Check the email inbox to see if you got the email. If you didn’t, go to System > Logs and take the entire logs shown there, and paste it into a support ticket, and don’t forget to give us your WP login info and FTP info (and if possible, Amazon login info as well), and we’ll troubleshoot it.
3

AuthSMTP Integration

If you’re having email delivery issues on your host, you can connect DAP to 3rd-party email systems like Amazon SES and AuthSMTP.

In this article, you’ll see how to integrate DAP with AuthSMTP.

  1. Signup for an account at AuthSMTP
  2. Log in to your AuthSMTP account
  3. Go to Registered From Address tab
  4. Take the email id from DAP Admin > Setup > Config > From-Email Id and enter that email here and register it here (basically, you’re whitelisting your DAP Admin email id as a registered sender – if you don’t do this, AuthSMTP will reject and discard all emails sent via DAP). You will need to “Confirm” the registration by clicking on an activation link that they will be sending you.
  5. In your AuthSMTP account, go to SMTP Details tab.
  6. Make a note of the SMTP Server (usually mail.authsmtp.com), SMTP Username, SMTP Password.
  7. Now log in to DAP Admin, and go to Email > SMTP
  8. On this screen, use the section Add a New SMTP Server to create a new SMTP row as follows:
    Description: AuthSMTP
    Server: mail.authsmtp.com (or from Step 6 above)
    Port: 2525 (must be exactly that)
    SSL: N (must be exactly that)
    User Id: Your AuthSMTP Username (from Step 6 above)
    Password: Your AuthSMTP Password (from Step 6 above)
    Email Sending Limit Per Hour: 500
    (Max 500 if on shared server. Max 2000 if VPS or dedicated server)

    Activated: Y
  9. Click on the “Add” button to create and save the new AuthSMTP server setting.
  10. And now you should see two rows under Manage Existing SMTP Servers: One for “Local Web Host” and another for “AuthSMTP”.
  11. For the “Local Web Host” row, be sure to set “Active” to “N” – because now that you have set up AuthSMTP, you want all instant welcome emails, autoresponder and broadcast emails to be sent out through AuthSMTP, and not your web host’s email server.

That’s it!

5

Gmail Integration With DAP

WARNING: Gmail integration may not work for everyone. Many factors – including, but not limited to, your physical location, the location associated with your Gmail account, location of server, IP address, etc – appear to play a role in whether or not this will work for you with your Gmail account. So please note, that if it doesn’t work for you, then there isn’t anything the DAP team can do to overcome or “fix” that. It’s Google, after all. We don’t know what rules and monitoring they have in place for this. So, if Gmail integration doesn’t work for you, then you may want to consider Amazon SES integration, which has a 100% success rate with DAP users at this time.

To increase deliverability of your autoresponder, broadcast and instant emails (like “Welcome” email), you can make DAP completely by-pass your web host’s email server, and send emails out through third-party email servers, like Gmail or Amazon SES. This article is about setting up DAP to send out emails through Gmail’s email servers.

Sending Email Through Google’s Gmail Servers

Before you start sending out mass emails through Google’s Gmail Servers, please note this…

Sending out emails through Gmail instead of your web host, will surely boost your deliverability, no doubt. But remember that Gmail is NOT meant to use for mass emails. It is not really meant to be used as a list service. Plus they have a very strict restriction of 500 emails per 24-hour period.

You exceed that quota even by one, and they probably will temporarily disable your Gmail account for about 24 hours. Sending a large number of un-deliverable emails (resulting in bounces) could also get your entire Gmail account permanently suspended. And if you lose your Google username, it may (no confirmation available) affect your other Google accounts too – like AdWords or AdSense.

Anyway, DAP has a round-robin emailing system – so you could set up and use multiple Gmail accounts – each with its own 500 email limit per day – and combine them to send out a larger broadcast. However, remember – we’re talking about Google here – which means they can suspend/cancel/delete your account for any reason at all, even more so when you’re going against their TOS.

So use Gmail with caution, and only for smaller lists. If you want a larger sending email limit, check out the DAP integration with Amazon SES which allows you to send out tens of thousands of emails a day.

  1. Log in to your DAP Admin Panel, and go to DAP Admin > Email > SMTP.
  2. On this screen, use the section Add a New SMTP Serverto create a new SMTP row as follows:Description: Gmail (can be anything really)
    Server: tls://smtp.gmail.com (must be exactly that)
    Port: 465 (must be exactly that)
    SSL: N (must be exactly that)
    User Id: youremail@gmail.com (your gmail email id)
    Password: yourpassword (your gmail password)
    Email Sending Limit Per Hour: 500 (don’t go more – less is ok)
  3. Click on the Add button to create and save the new Gmail SMTP server setting.
  4. Once it is saved, now you will see 2 rows on the screen: One for “Localhost”, and the other is the new “Gmail”.
  5. Towards the end of each row, you’ll see a setting called “Activated?”. Set it to “N” for Localhost and “Y” for Gmail.
  6. That will now make all of your outgoing emails (listed below) go out only through Gmail, totally bypassing your web host’s email server. Which means, your email deliverability will go up substantially.
  7. List of outgoing emails for which your Gmail account will be used, include:
    – Real-time Welcome Emails
    – Third-party Notification Emails (to Admin, other third-parties, Aweber, etc)
    – All notification and transactional emails to DAP Admin – like payment receipt, new user signup, error notifications, user unsubscription notifications, etc
    – All autoresponder and broadcast emails
    – etc…

 

37

Amazon Simple Email Service (SES) Integration With DAP

DAP/Amazon SES Integration

Starting DAP v4.3.1, you can hook up DAP to Amazon’s Simple Email Service (Amazon SES) and have all of your emails go through Amazon’s beefed up, high-performance, high-deliverability email servers.

The document below explains how to connect DAP to Amazon SES. (troubleshooting info for DAP/SES integration)

  1. Go to http://aws.amazon.com/ses/ and sign up for Amazon SES. You must already have an Amazon account and you can add SES to that same account.
  2. Then go to https://console.aws.amazon.com/console/home , log in if required, and click on the SES link there.
  3. That will bring you to the SES “Dashboard”.
  4. When you first sign up for SES, you will be assigned a “Sandbox” account. Which means that you will only be able to send emails TO and FROM verified email addresses (a verified email address is something you add yourself to your SES account and then click on a confirmation link that Amazon sends you, to prove that you are the owner of that email id). Also, Sandbox access allows you to send out a maximum of just 25 emails per day, both FROM and TO verified email id’s only.
  5. So the first step is to add a Verified Sender. So click on the “Verified Senders” link in the menu on the left.
  6. That will bring you to this page. Click on the Verify a New Email Address link with the green check-mark next to it.
  7. In the popup, enter the email id that you wish to use as your FROM email id to send out emails. Please note that you can ONLY use verified email id’s to send out emails from your Amazon SES account. So whatever email id you wish to use in DAP Admin as the sender for outgoing emails (see DAP Admin > Setup > Config > From-Email Id : For all outgoing DAP emails), that’s the email id you should verify.

    IMPORTANT: The email address is case sensitive. So if you white-listed You@YourSite.com at Amazon SES, then you must enter the email address with the exact same cAsE within DAP Config too (You@YourSite.com is NOT the same as you@yoursite.com for the purposes of Amazon SES. Crazy, we know! But that’s how it is.)

  8. You will then receive an email from Amazon at that email id which has a confirmation link. Once you click on that link, your email id in your Amazon SES account is now “Verified” (also known as whitelisted). Please note that at this time, you still have Sandbox access. Which means you can send email both FROM and TO the same verified email id. Not very useful, but that’s ok. Now time to go back to the SES Dashboard and Request Production Access.
  9. Click on Request Production Access and you will be taken to a form that you need to fill out and submit. Amazon then reviews it, and it can take up to 48 hours for your account to be granted Production Access – which basically means, you can now use SES and start sending out real emails, and your per-day limit is now 10,000 emails per day.
  10. Now, you need to get a SMTP Username and SMTP password for sending out emails. This username & password is NOT the same as your Amazon account email and password. Neither does it have anything to do with your Amazon Public or Secret keys. This is a completely different (and new) username and password used JUST for sending emails, and it needs to be generated newly.
  11. To generate a new set of SMTP Username and Password, click on the SMTP Settings link in the menu. And then on the next page, click on Create My SMTP Credentials.
  12. In the resulting popup, click on Create.
  13. That will create your SMTP credentials. But to see it, you have to click on Show User SMTP Security Credentials
  14. Once you click on Show User SMTP Security Credentials, you will be shown your SMTP Username and Password.
  15. Be sure to note down the username and password in a safe place where you can get to it again, because Amazon will not show this same set of username and password ever again. If you lose them, of course, you can always generate a new set of username/password again for free, but you’ll never get the same pair again – it will be a fresh pair.
  16. Go to the SMTP Settings link in the menu and note down the Server Name.
    It will be one of the following:
    email-smtp.us-east-1.amazonaws.com (as in the image below)
    email-smtp.us-west-1.amazonaws.com
    email-smtp.eu-west-1.amazonaws.com (European Union users)
    ses-smtp-settingsYou need to determine what your host name is, and then add the text “ssl://” to it at the front.

    So if the server name displayed in your Amazon SES account is this…
    email-smtp.us-east-1.amazonaws.com

    …then the text you would enter into the DAP Email > SMTP page is this…
    ssl://email-smtp.us-east-1.amazonaws.com

  17. Now log in to your DAP Admin Panel, and go to DAP Admin > Email > SMTP.
  18. On this screen, use the section Add a New SMTP Server to create a new SMTP row as follows:

    (Click on image above to see full-size screenshot)
    Description: Amazon SES
    Server: <what you noted down above>
    Port: 443 (must be exactly that – ignore port numbers recommended by Amazon SES)
    SSL: N (must be exactly that)
    User Id: Amazon SMTP Username (that you generated and noted down in Step 15 above)
    Password: Amazon SMTP Password (that you generated and noted down in Step 15 above)
    Email Sending Limit Per Hour: 500 (ideal number – don’t go more – less is ok)Click on the “Add” button to create and save the new Amazon SES SMTP server setting in DAP.
  19. Once it is saved, now you will see 2 rows on the “Email > SMTP” screen. One is for the server “Localhost”, and the other is the new “Amazon SES”.
  20. Towards the end of each row, you’ll see a setting called “Activated?”. Set it to “N” for Localhost and “Y” for Amazon SES.
  21. That will now make all of your outgoing emails (listed below) go out only through Amazon SES, totally bypassing your web host’s email server. Which means, your email deliverability will go up substantially.
  22. List of outgoing emails include:
    – Real-time Welcome Emails
    – All transactional emails to DAP Admin – like payment receipt, new user signup, error notifications, user unsubscription notifications, etc
    – All autoresponder and broadcast emails
    – etc…
8

Testing Autoresponder And Broadcast Emails

Here’s how you test emails in the system before making them live.

Testing Autoresponder Emails

  1. Create a test DAP Product called “Test Product”
  2. Set up the email drip for this product
  3. Give yourself (or a new test user, but with a real email id that belongs to you) access to this DAP Product on the Users > Manage page (for existing users) or Users > Add page for new users
  4. Run the hourly-cron manually, by going to http://YourSite.com/dap/dap-cron.php . That should send out the day 1 drip for that test user.
  5. Go to Users > Manage page, and back-date the Access Start Date for this test user for the test product, back by one day. So DAP now thinks he bought the product “Yesterday”.
  6. Now run the cron manually again. This time, DAP will send out the day #2 drip for this user.
  7. So every time, move the user’s access start date back by as many days as you want, to trigger that day’s autoresponder email. And each time run the cron manually.

Testing Broadcast Emails

  1. Create a test DAP Product called “Test Product” (or if you have previously created one above, then use the same one)
  2. Add 3-4 test users to this product
  3. On the Emails > Broadcast page, schedule a broadcast email to be sent to “All Users of Product <<Test Product>>”
  4. Run the hourly-cron manually, by going to http://YourSite.com/dap/dap-cron.php . That should send out the broadcast to that test product.
  5. Log in to the email id’s of all the test users that you added to this product, and make sure the email arrived in the inbox.

Troubleshooting Email Broadcasts

* When you schedule a broadcast email, it’s added to the job queue with a status of NEW
* When the cron job runs at the top of the hour, then the job status changes to COMPLETE (C) and the emails get sent.

So to test it, do this.

  1. set up an email broadcast to a test user using the CSV format (option # 5)
  2. Go to DAP Admin > System > Job Queue and see if the job was added with a status of NEW
  3. Now manually run the cron by running this cron script in a browser (just for testing)
    http://yoursite.com/dap/dap-cron.php (replace yoursite.com with the name of your site)
  4. Then go back to the job queue and see if the status for the email job has changed to ‘C’ (complete)
  5. If yes, check if the email was received.

Troubleshooting “Payload Format Incorrect” Error

If you see this error when trying to send out a broadcast to a default group from the Email > Broadcast page, then the most plausible cause for this is that there are some special, non-standard characters in the body of the email that you’re trying to broadcast.

This could happen if you copied text that you composed in a Microsoft Word doc, or you cut/pasted from a WordPress blog post. And both Word and WordPress (some themes) are famous for creating special characters out of normal characters.

Example:

If you take a closer look at the body of your email, especially the single quotes and double-quotes characters, you will find that these may not be the standard single quote and double quote characters that you get from a plain text editor.

And these special characters trip up the DAP email broadcasting system.

So please take a closer look at all of the following characters:

  • Single quotes
  • Double quotes
  • Hyphens
  • Special symbols like trademark and copyright

And just type over them again just to be sure with the normal equivalent using your keyboard, and try the broadcast again.

And this time, it should work.

Email Body Showing Up Partially On Job Queue

When you view the broadcast emails that you just scheduled on the System > Job Queue page, if you see that the email body in the saved job has been randomly cut off at one point (usually at the point where there would normally be a single or double quote), then that’s also an indication of non-standard characters in the email that you tried to send out. So see the above example for how to weed out any non-standard single or double quotes or hyphens, and try the test again with just one test email, and see if it goes out to just that one email. Because if it fails for one email, then it will fail for all emails being sent via the DAP Broadcast system.

Strange Characters In Emails

If you or your members are noticing strange characters in emails – especially where there should normally be a single or double quote, then these are due to what are known as “Smart Quotes”.

These special characters always show up when you copy text from a WordPress blog (some themes use these characters) or a Microsoft Word document.

Single quote:

'(correct)

`(incorrect)

Double quote:

" (correct)

`` (incorrect)

The single quote that works correctly is located next to the “Enter” key.

The incorrect one is located next to the “1” number key.

So copy your email text to a text editor, like notepad. Then change all single quotes to be and all double-quotes to be in your emails. Then put them back into DAP, and then test.

The “strange characters” issue should then be resolved.

NOTE: In a future version, we will implement an enhancement in DAP so that DAP can handle this automatically, but for now, the above solution is your only option.

2

Troubleshooting Cron

The Problem

  • Your autoresponder or broadcast emails are not going out (hourly cron job dap-cron.php)
  • Your Affiliates aren’t being credited with sales (hourly cron job dap-cron.php)
  • Your 1SiteAutomation/1ShoppingCart Orders are not being processed. (10-minute cron job dap-emailorder.php)

The Solution

One possible solution is that your cron job(s) aren’t running correctly.

DAP has two cron jobs. One that runs once an hour (dap-cron.php), and one that runs every 10 minutes (dap-emailorder.php).

You can see how to set them up here.

But in this post, we will see how to make sure your cron is actually set up correctly, or if it’s running correctly.

How To Know If Cron Is Running

  1. Go to System > Logs and click on “Empty Logs”. That will fully clear out all logs.
  2. Go to Setup > Config and set “Log Level” to “Log All Activity (during troubleshooting)” and click “Update“.
  3. Wait for the top of the hour for the hourly cron job to run. So if the time when you’re doing this, is say 11:20 AM, then wait for 12:00 Noon. If time is 3:45 PM, then wait for 4:00 PM.
  4. A few minutes past the top of the hour and go back to the System > Logs screen.
  5. If you see hundreds of lines of text in the logs, then that means your cron job is running correctly. If you only see maybe 10-20 lines of text, then your cron job is NOT running correctly, and you need to make sure the cron job is actually set up correctly.