Contacts Browser Plugin

New: Installation available for product oriented Mobile Web Server

Install NOW!



From the user perspective a desktop user interface is usually the preferred way to access the Internet, if available, because of the obvious advantages of having a large screen and full keyboard. On the other hand, the mobile is always available, always on and has the telephony and messaging functionalities.

We believe that the best possible mobile user experience requires bridging the gap between the mobile and the desktop. Now that the mobile browsing experience is getting close to the desktop (check out the new S60 Browser), we have taken a different viewpoint and spent some time thinking of another way to bridge the gap.

A key ingredient in this is the Mobile Web Server, also from Nokia Research Center, which turns the mobile phone into a service provider and enables new innovations. The Contacts Browser Plugin is a concept demo that was built to show the exciting possibilities of combining the mobile and desktop web experiences. It is a small, yet useful, application.

We hope you enjoy it!


So there you are browsing the web with your PC looking for

  • a place to eat,
  • a colleagues phone number, or
  • some cool ringtones to download.

With the help of modern search engines you find the contact information easily. So what do you do next? You grab your phone and start entering the number you have found manually to your contacts. After entering the information you probably call the restaurant to reserve a table or send an SMS to your colleague.

What if you could simply just click the number and select what you want to do?

Actually, you can. We have created a browser plugin and phone software package that let's you remote control your phone from your PC web browser. On the phone we have used the Mobile Web Server and Python for S60 as a platform. The browser functionality is implemented on top of GreaseMonkey plugin.


Let's assume you want to book a table at Restaurant Zetor in Helsinki. First you find the web page, for example with Google search. Then you click the phone number, which brings up this pop-up.


Clicking the call-button will initiate the call. You can also edit the number prior to calling, hang up the call, send a SMS to the number, and add the number to your contacts.

plugineditnum pluginhangup
pluginsms plugincontact

Technology Employed

Before reading further it's a good idea to familiarize with Mobile Web Server, Python for S60, and GreaseMonkey.

Overall the system has three active components (see figure):

  • A PC running a web browser
  • The user's mobile phone running Mobile Web Server
  • The Raccoon Mobile Web Server gateway

In the web browser we have added a GreaseMonkey user script that modifies the contents of each loaded page so that the telephone numbers become clickable elements. Clicking a number opens up a dialog box to call, send SMS or add a contact to your phonebook. These options invoke AJAX calls to the Mobile Web Server.

On the mobile phone side we have a set of mod_python scripts to receive these calls. Since the scripts have access to all the python APIs (contacts, messaging, telephony, etc.) on the phone, it can initiate phone calls, send SMS and modify contacts.


Research Results & Installation

The concept has been implemented as a research prototype. Follow the installation instructions to take the Contacts Browser Plugin into use.

Publications / Papers / Presentations

Contacts Browser Plugin was published and demonstrated at the Nokia Technology Media Briefing, 3 Oct. 2006.


Patent pending.