If you use one or more web-based emails or web thin clients for Instant Messaging such as Yahoo! Messenger, GMail chat or Facebook, it’s probably because for some reason you find them better than the equivalent desktop applications, or likely you don’t want to install stuff at the office, or you can’t do it. A disadvantage of this solution is that you don’t have a visual notification when a new email or chat message arrives (at lest so far, and unless your browser is chrome and your web-mail is gmail (which uses the desktop notifications) or you can take advantage of some other combination of browser-plugin-webclient using HTML5 Notifications or similar, which is not my case).
If you can install at least one desktop application, an excellent “all-in-one” solution is a multi-protocol IM program such as pidgin that notifies also new incoming emails for some kind of mailboxes. If you opt for pidgin you should install a plug-in that shows notifications in a “toaster popup”, for this porpuse I used guification 2 for long, but I don’t think it’s nice with the default theme. To install a theme, after downloading it, open the themes tab (Tools>Plugins>Guifications>Configure Plugin>Themes), drag the downloaded file and drop on it. This post shows a screenshot of guification with the Green Toast Theme. On a recent linux distribution you may prefer to activate the pre-installed libnotify plug-in.
Pidgin is not the only multiprotocol chat client out there, I’d like to mention at least Empaty.
An alternative for users without administrator privileges is to install a suitable extensions for your browser. I checked the chrome web store and there were several of them. Some act as proper email clients, which means that you have to configure them the same way you would do it with your desktop email application, others use specific ways to check the mailbox such as the Yahoo! Mail API, I didn’t find an all-in-one solution (please post it if you find something with nice alerts for any of the major browsers).
Let’s do it ourselves
The basic idea here is that to solve a simple problem you should need a simple solution. Most of the mentioned web clients change the title of the page to tell the user that something happened. If we can detect and correctly interpret these alerts we can take advantage of that, in this way we won’t need to poll the mailboxes duplicating the work of the web-based mails and we won’t need to configure anything. Basically we won’t need to reinvent te wheel, the web clients are there and usually they are good enough, we just need to add the things that they need: the desktop notifications.
This is what the Tab notifier for chrome does. In the next post we’ll see how it is made, using it as an excuse to explore some of the capabilities in developing chrome extensions.