Luke Cyca .com
 
Push email on Symbian S60 smartphones

There is a lot of discussion about using IMAP Idle with the Symbian Series 60 smart phones but nobody seems to have really gotten it working well. I have, and here are my experiences...

My setup

Configuring basic email

Since this phone was purchased unlocked and unbranded, none of Fido's settings were pre-configured. I called them and they sent me a couple SMSs with all of the settings I would need. For email, I created a new access point at Menu -> Settings -> Phone Settings -> Connection -> Access Points for internet.fido.ca.

I was able to quite easily get basic email sending and receiving by filling out the usual settings such as server, login and password in: Messaging -> Options -> Settings -> Email. It's painful to type in all those settings using a numeric keypad though.

My mail server requires SSL (actually, TLS) for encrypted connections, and uses a certificate from GoDaddy. The phone complained about it being an untrusted certificate until I installed GoDaddy's root certificate on the phone. To do this:

  1. Download gd-class2-root.cer
  2. It still isn't in the right format, so run the following command on it in terminal: openssl x509 -in gd-class2-root.cer -out cert.cer -outform DER
  3. Use bluetooth to send cert.cer to the phone. When you open it, it will ask you to install it.

Of course, if your mail server doesn't use SSL/TLS, then you don't really need to do this, although you should probably think about switching to SSL/TLS 'cause the Internet is a scary place and someone's probably spying on you.

Enabling IMAP Idle

The Cyrus server supports Idle by default. To get the phone to take advantage of it, you have to make a couple adjustments:

  • Menu -> Settings -> Phone Settings -> Connection -> Packet Data, set to "When available."
  • Messaging -> Options -> Settings -> Email -> Mailboxes -> (yours) -> Automatic retrieval:
    • Email notifications: disabled
    • Email retrieval: enabled
    • Retrieval interval: 15 minutes

Is it working?

IMAP Idle keeps a persistent connection alive, so the most convenient way to verify that it's working is to look at your phone's network status icons.

Status Indicators

If you have the solid arrows, there is a connection and chances are good that IMAP Idle is working. It doesn't matter what connection type you have, but a UMTS one will likely suck your battery dry pretty quickly.

Of course, the only real way to test is to send yourself an email. Your phone should get it in about 30 seconds or less.

Caveats

The email client software feels a little buggy on the S60 phones. Occasionally it will stop checking automatically. To jump start it again, you need to go into Messaging -> Options -> Settings -> Email -> Mailboxes -> (yours) -> Automatic retrieval, and then exit them all. Somehow just visiting this menu reminds it that it should be checking your email.

Your carrier is probably also dropping connections that are open for more than about 20 minutes with no activity. (At least that's what mine seems to be doing). Luckily, if you receive enough emails, your connection may stay active enough to keep the connection alive for hours at a time. If it does drop, your phone should re-establish it when it is next scheduled to check email (every 15 minutes).

Overall

It's not perfect, but it's definitely a workable solution if you want instant email notification on your mobile without using proprietary setups like ActiveSync or BES.

I'm interested in trying out Zimbra's S60 client now...

Luke Cyca .com