iphone push email.pngI’ve been waiting a long time for someone to come up with a way to get push notifications on my iPhone for my Gmail accounts, but up until today there wasn’t really anything available. Thanks to an iPhone app called Prowl I’m now receiving nearly instantaneous push notifications on my phone.

The one downside for a lot of people is that this app will require you to have some sort of computer running (either Windows or Mac) during the time you want to receive the notifications. For me I didn’t even have to think twice about that, because I have a Windows machine running 24/7 that does a combination of downloads, backups, and television recording. For others that might be a deal breaker.

So how does it work? I’m about to tell you how I set it up to send me push email notifications for all of my Gmail accounts. There’s basically three things you need: Prowl for your iPhone (of course), Growl (for Windows or Mac), and Thunderbird. We’re going to also show you how to setup Thunderbird to utilize Gmail’s IMAP IDLE (sometimes referred to as Push IMAP) functionality so that Thunderbird doesn’t go out to fetch new emails. Instead Gmail sends them to Thunderbird almost instantaneously.

–Step 1: Get Prowl–

The Prowl iPhone app is a critical part of this puzzle. It basically serves as a middleman between your home computer and your iPhone. The software on your computer will send notifications to the Prowl servers, which will then relay on a push notification to your phone.

The iPhone app does cost $2.99, but I didn’t mind paying the one-time fee considering that they need money to keep their servers up and running. Then after you buy the app (or you can do it before you buy the app) head on over to their site to create a quick account.

–Step 2: Get Growl–

I’m going to focus on using Growl for Windows here, but Lifehacker has a great guide on setting up Prowl + Growl on a Mac. If you follow their Mac instructions you can always skip back to Step 4 in our article for configuring Thunderbird.

Once you’ve grabbed Growl for Windows go ahead and install it. You’ll probably be surprised to see that it doesn’t support notifications for any apps out-of-the-box, but that’s not a big deal. They have a centralized download page for the available add-ons.

Once you’ve got Growl running you’ll need to get it setup to talk to the Prowl servers. In the Growl configuration just go to the Network tab, click the plus sign, and then choose the iPhone option:

growl setup-1.png

Then just enter in your Prowl credentials that you setup in the previous step.

–Step 3: Get Thunderbird–

If you looked at the add-ons page for Growl you might start to wonder why we aren’t just using the dedicated Gmail solution. Two reasons. First, it only supports one Gmail account. Bummer. Second, it is only capable of “fetching” your emails at a specified interval. Double bummer. Thunderbird overcomes both of these things.

So head on over and get Mozilla Thunderbird which is a free email client. After you get it running you’ll want to grab the Growl extension for Thunderbird. Installing extensions can be a pain in Thunderbird, but generally what I do is save the extension to my computer, and in Thunderbird go to Tools -> Add-ons. Then just drag-and-drop the extension anywhere in that window. You should then receive a prompt to install it.

I’ll give you a heads up now that after installing the extension there isn’t a whole lot you can configure. Then again, there’s isn’t all that much that you’d probably want to configure. Here are the available settings:

growl thunderbird.png

One thing the settings are good for, however, is the “send test message” button. If you’ve done the previous steps you should be able to hit that button and receive a push notification on your iPhone.

–Step 4: Setup Gmail Accounts–

Alright, now the fun part… hooking all of this up to your Gmail account(s)! Here’s the play-by-play for setting up your Gmail account in Thunderbird so that it uses the IMAP IDLE functionality, which is very close to having push:

  1. IMPORTANT: Make sure you have IMAP enabled in your Gmail settings before proceeding.
  2. In Thunderbird go to File -> New -> Account.
  3. Choose the Email Account option… do NOT choose the “Gmail” option since that tries to use POP3 instead of IMAP. Click Next.
  4. Enter your name and the email address you want to use. Be sure to include the “@gmail.com” (or whatever domain you have tied to a Google Apps account). Click Next.
  5. Choose the IMAP bubble. For the incoming server enter imap.gmail.com into the box. For the SMTP server enter smtp.gmail.com into the box. Click Next.
  6. Enter your Gmail username (with the @gmail.com) into the incoming and outgoing boxes. Click Next.
  7. Pick any name for your account. Click Next.
  8. Verify the settings, and click Finish.
  9. You’re not quite done yet. Go to Tools -> Account Settings. Find your account in the sidebar, and click the Server Settings option underneath it.
  10. Set the port to 993, fill in the SSL bubble, and uncheck both the Check for new messages at startup and the Check for new messages every XX minutes.
    gmail imap.png
  11. In the left sidebar of the Account Settings you should see an option labeled Outgoing Server (SMTP), click that. Then select the email account, and click Edit.
  12. Change the port to 587, and fill in the TLS bubble.
    gmail smtp.png
  13. You’re done! Repeat these steps for however many accounts you want to add. Note that after you’ve created your first account Thunderbird won’t ask for SMTP information for each subsequent account.

At this point you may be wondering why you disabled the options to “check for new messages.” Simple… IMAP IDLE will take care of that. With these options unchecked you might be surprised to see that new emails show up almost instantly in Thunderbird. In my tests it never took more than 15 to 30 seconds after receiving an email for it to show up in Thunderbird.

–Step 4: Enjoy the Pushiness–

You are all set to receive your push notifications! There are some additional settings you can configure in Growl in regards to how the notifications look when they appear on the computer, but for the notifications to show up on your iPhone there isn’t really anything else you need to do. You can, however, set priorities for the notifications, and then choose which priority will be sent to your iPhone. That way you aren’t getting notifications for all of your Growl-enabled programs.

Here are some screenshots of Prowl hard at work:

(Click to Enlarge)
prowl homescreen.png prowl app.png

Overall I’d say the time from me hitting the send button to receiving the notification on my phone was between 30 and 45 seconds. That is good enough for me. Almost immediately after setting this up I went and set the fetching to “manual” on my iPhone, which should also help save on battery life.

Another plus about this is that my credentials for all of my accounts are never passed on to the Prowl servers. Anyone that is security conscious will always think long and hard before giving their password to some third-party service, but with this you don’t have to. All their servers receive is exactly what you see in your notification.

There are Growl add-ons for all kinds of other applications, too. You can get notified when a Firefox download is finished, hook it up to your Outlook emails, get notified when your machine is low on disk space, reminders for when your favorite TV shows are coming on, and even a message telling you when your Torrents have finished downloading. This has the ability to become very powerful.

This has quickly become one of my favorite apps on my iPhone, but it won’t be for everyone since it does require a computer that is on during the times you want to get notifications. And for just $3 I can’t complain.