Saturday, December 27, 2008

Server Forwarding in S60 Smartphone Email


The easiest way to aggregate messages to a mobile email account is to have the original accounts forward the messages. If your original email account is on a Unix server, you can simply place a .forward file in your home directory with the following line (it keeps a copy of the message in the original account and forwards a copy to your mobile account):

/username, you@mobile.address.com
If you use the procmail utility (see http://www.procmail.org/) to manage your Unix email Inbox, you can add the following rule to the end of the .procmailrc file to copy all incoming messages to the you@mobile.address.com address:

:0c
*
! you@mobile.address.com
The advantage of procmail is that it supports a complex set of filtering rules. You can determine which messages to forward to the mobile account based on the sender and the content. For instance, you can avoid forwarding mailing list messages or autogenerated messages from forums. When you use it together with a spam filter, you can also avoid forwarding any message that might be spam.

For corporate email accounts (or non-Unix accounts) where you do not have access to the home directory, you should ask the administrator to set up the forwarding service.

Filtering and Sandbox for Mobile Email

In addition to providing convenient access to all your messages, an account dedicated to aggregating your email can make mobile email management a lot easier than before. Here are some use cases for a dedicated mobile email account:

Filtering
We typically do not need to read all messages on our phone. For instance, one of my email accounts receives an alert message from every post to a discussion forum I monitor; another account is subscribed to a high-volume mailing list. I certainly do not want to read these messages while I am on the go. You can set up the aggregation account to aggregate only certain messages, and to filter out some messages for later processing when you are in front of a desktop computer.

Sandbox
Multiple email clients from phones and desktop computers create message management issues. In particular, as I discussed earlier, if you delete a message from your phone, the desktop client cannot recover it or archive it later. You can use the mobile email aggregation account as an email "sandbox." You can download, view, and delete any message in the mobile account from your phone. The regular accounts still keep all your messages when you are home, where you can download the messages via your primary email client.

When you send or reply to a message from your phone, it is a good idea to Cc yourself so that your desktop computer has a record of it later.

Ideally, the mobile email aggregation account should be a standard user account on a Unix/Linux server, with basic support for POP and SMTP. Most Unix/Linux-based ISPs or web hosts provide such services.

Make mobile email more efficient with email forwarding and filtering solutions

Most of us have more than one email address these days. For example, I have separate email accounts for business, personal, news group, and web commerce needs. However, not all email accounts can be accessed directly from a Nokia mobile phone:

Some accounts might require SSL or APOP authentication, which is not supported on all phones.

Some accounts might require connections from computers in the same corporate network. The mobile phone connects from the wireless opera-tor's network, and hence they are certainly outside of most corporate firewalls.

Servers such as Microsoft Exchange are known to provide substandard POP/IMAP services. They prefer you to connect via their proprietary protocols, which are not supported on Nokia phones.

Even if you can access all your accounts from your phone, it is a hassle to thumb through the phone's lengthy menu options (especially for Series 40 devices) and check the mailboxes one by one. If you do not check all the mailboxes at one time, you might forget which ones you already checked the next time, and you'll have to go through all of them again. It would be nice to have a mobile-accessible email account that captures all your email messages in a single mailbox.

Web-Based Email in S60 Smartphone


If you use web-based email services, such as Yahoo! Mail, Hotmail, Gmail, and AOL Mail, you can check email directly from your phone's web browser. Most popular web-based email services offer WAP interfaces that work with almost any phone browser. The advantage of this approach is its simplicity. You do not need to configure the email servers on the phone. You do not even need a high-end data plana regular WAP browser will suffice in many cases.

Many ISPs or corporate email systems also provide web interfaces. But they are typically HTML-only. So, you need an HTML-compatible browser on the phone to access those services via the Web].

However, the WAP interfaces do not support all advanced features of the web-based email service. HTML message formatting and attachments are not supported. But long messages are divided into multiple pages for easy reading on mobile phones.

Again, HTML formatting or file attachments are not supported. If you click the To or Cc link on the message composition form, you will be able to select recipient addresses from your Yahoo! address book.

Using EmailViewer in S60 Smartphone


ProfiMail is a "heavyweight" email client that works only on Series 60 phones. What if you need to display HTML messages and attachments on a smaller Series 40 phone? The EmailViewer program (http://www.reqwireless.com/emailviewer.html) is the answer. It renders HTML messages, as well as common document formats for email attachments, such as PDF files, zip files, and MS Word files. EmailViewer is a Java application, and it works on both Series 40 and Series 60 phones.

Under the hood, EmailViewer utilizes a proxy server to do all the heavy lifting. The proxy server fetches the message, renders it into a stream of bytes in a compact and proprietary format, and then delivers the bytes to the client. The mobile client simply displays the data in the stream according to a predefined convention. There is no need to parse, decode, render, and then lay out the HTML content on your mobile phone.

You have to install a proxy server licensed from Reqwireless, or subscribe to Reqwireless's proxy service, for the EmailViewer client to work.

EmailViewer and WebViewe are developed by the same company, and they utilize the same approach for proxy-based content rendering.

Thursday, December 11, 2008

Using ProfiMail in S60 Devices


ProfiMail is a Symbian-based email client application for Nokia Series 60 devices. It is developed by Lonely Cat Games and is available for sale and trial at http://www.lonelycatgames.com/mobile/profimail/profimail.html. The process to set up mailboxes in ProfiMail is very similar to the setup process for the native email client.

ProfiMail renders HTML markup in email messages. If you have a multipart message with several text and image components, ProfiMail renders the components in the order they appear in the message. So, you can have images between paragraphs of text even if you do not use HTML.

A ProfiMail feature many people like is the ability to display messages in small fonts. That fits more message content in a single screen. For instance, ProfiMail splits the screen into a message header panel and a message body panel to ease message navigation. However, the problem with small fonts is that they are very difficult for seniors or vision-impaired people to see.


ProfiMail also comes with a built-in file management program for the Symbian OS. It is very similar to the FExplorer file manager. Using the file manager, you can save any email attachment (e.g., images, PDF documents, Word documents, etc.) directly to your phone memory or MultiMediaCard (MMC) card. Compared with the Nokia native email client, ProfiMail allows you to open more types of file attachments. For instance, you can open and browse zip files or the text in a Microsoft Word file.

Finally, ProfiMail supports rule-based filters that can automatically classify incoming messages based on their subject line, or on the text content in the body. You also can configure ProfiMail to automatically delete messages that it thinks are spam.

Using HTML Email Client in S60 Devices


In recent years, many email clients began supporting Hyper Text Markup Language (HTML) formatting tags in messages. An HTML message can have rich fonts, layout controls, hyperlinks, and inline images. The inline images can be included in the same message as attachments. While the Nokia native email client handles plain-text messages and attachments very well, it does not support HTML rendering or inline images. To view HTML email messages on your phone, you need third-party software.

When I have a choice, I always try to avoid sending HTML email messages, since they are not compatible with all email reader clients.

Handling email attachments in S60 devices


Originally, email messages were just plain text. Later, Multipurpose Internet Mail Extensions (MIME) technology was developed to encode arbitrary binary files into text, and hence allowed the files to be sent as part of the email message (i.e., attachments). The Nokia native email client on Series 60 phones supports MIME attachments for both sending and receiving email messages.

The current generation of Nokia Series 40 phones (e.g., the Nokia 6230 camera phone) does not support attachments in email. You can still use MMS to send media files from the phone to an email address. But you cannot receive files in email messages.


Notice the difference in the header bar in the first and last screenshots (i.e., after the attachment is added the message size is larger, and a paper-clip icon indicates there is an attachment).


You can open and save the message attachments, if there are any, from the Options menu. If the phone recognizes the attachment file format as a supported media format, it provides the option to save the attachment file to the phone's Gallery.


If the attachment is in a format the phone does not support, the phone will not allow you to save it to the Gallery.

If you install a PDF reader program on your phone, the PDF reader will register .pdf files (and their appropriate MIME types) as "recognized" file formats. Then you will be able to open PDF attachments using the reader program from within the Messaging Inbox.


You can still send the attachment to another device or computer. Or, you can use a file browser, such as FExplorer, to get the attachment file directly from the mail folders.

Delete email in S60 devices


Since the Nokia phone first retrieves all the message headers from the remote POP/IMAP server, it retrieves the message bodies only when you specifically instruct it to do so (e.g., by opening a message). So, when you delete a message via the Options Delete menu, you have two options:

If you choose to delete from the phone memory only, the message body is deleted. But the message header remains in the phone memory. You can still see the message in the email message list, and if you open it, the phone redownloads the message's body.

If you choose to delete the message from both the phone and the server, the message header is marked with a delete sign in the phone's email list. The next time the phone connects to the server, it instructs the server to delete the message immediately.

When deleting a message, the Nokia email client behaves differently from most desktop email clients. Desktop email clients can be configured to delete the message on the server several days after the message is deleted locally. That allows you to recover deleted messages from the server if you need to. The Nokia phone's native email Inbox is always a mirror of the account on the server. The deleted messages are erased from the server immediately after the phone connects to the server the next time.

Receive email in S60 devices


On a Nokia Series 60 device, you can simply open any properly configured email mailbox from the Messaging application's Main menu. The phone connects to the Internet and checks for new messages on the remote POP/IMAP server. Or, you can select Options Connect to force a connection.

On a Nokia Series 40 device, select the Messages Email Retrieve menu to retrieve messages from the currently active mailbox. The retrieved messages are available under the Messages Email Inbox menu.

For all new messages, the phone retrieves only those message headers that show the sender's email addresses, the message dates, and the message subjects. It does not automatically retrieve the message bodies or attachments. This saves bandwidth and greatly improves the email client's response time. If you want to view an individual message, you can retrieve the message body by opening it. You can also select commands from the Options menu to retrieve all messages or marked messages.

Friday, November 28, 2008

Send a message

To create a new message on the phone, choose the Options > Create message > Email menu in the Messaging application (Series 60) or the Messages > Email > Create email menu (Series 40). You can select any recipient from the phone's Contacts list or type in any valid email address in the To and Cc fields. The body field of the email composition form is pre-populated with your email signature, if you have one. Type in your message and select the Options Send menu to send the message using the currently active mailbox settings.

Set up your mailboxes

Setting up mailboxes is quite easy on both Series 60 and Series 40 phones.

On a Series 60 device, you can just launch the Messaging application and choose the Options > Settings > Email > Mailboxes menu. Then you can select and edit any existing email message in the Inbox. Or, you can use the Options > New mailbox menu item to create a new mailbox for an email account. The Messaging application's main screen lists the phone's native Inbox (for receiving SMS and MMS messages) as well as all configured mailboxes. Email messages are pulled into the mailboxes, not into the native Inbox. The Options > Settings > Email > Mailbox in use menu item points to the default mailbox to use when sending email messages.

A Series 40 phone can hold 520 mailboxes (i.e., email accounts). You can activate a mailbox via the menu path Messages > Message settings > Email messages > Active email settings (or via Messages > Email > Setting > Mailbox in use for older phones). The email Inbox (in Messages > Email > Inbox) on the phone retrieves messages from the currently active mailbox, and all outgoing email messages are sent via the SMTP server in the active mailbox. To edit the settings for a mailbox, you need to first activate it and then select the "Edit active email settings" (or "Edit active mailbox") menu in the email settings screen.

In the mailbox settings screen for both Series 60 and Series 40 phones, you need to enter the following information:

  • Your email address
  • An SMTP server address and its access credentials
  • A POP/IMAP server and its access credentials
  • The data access point to connect to the email servers
The security setting specifies whether the phone uses encrypted connections (SSL) to connect the email servers. You should always try this option first, and disable it if you get an error. SSL protects your username and password from eavesdroppers. Although it also transports your email messages securely, the moment a plain-text email message hits the wide-open Internet, it becomes susceptible to eavesdroppers.

The SMTP server and POP/IMAP server share the same GPRS access point and the same username/password. Some devices (e.g., the Nokia 6230 phone in Series 40) allow you to specify a different GPRS access point, and a different username/password for the SMTP server and the POP/IMAP server, respectively. Many phones also support the Authenticated POP (APOP) protocol to retrieve messages. Under APOP, the user-name and password are sent in encrypted format to the POP server. APOP provides protection against network sniffers that intercept clear-text passwords.

Email Basics


When you send and receive email messages over the Internet, your email client software on the PC or on the phone primarily needs to communicate with two types of email servers over the TCP/IP protocol:

Simple Mail Transport Protocol (SMTP) server
Takes email messages from your email client and sends them to the recipient's email server. To avoid being exploited by spammers, most SMTP servers require you to have an account with them and to authenticate yourself before you can send an email message.

POP or IMAP servers
Give you access to your email accounts. Your email client software logs into the POP or IMAP server periodically, using your username and password, to check for and retrieve new messages.
Typically, your SMTP and POP/IMAP servers are hosted by your Internet Service Provider (ISP) or by your company's IT department. If you use web mail (e.g., Yahoo! Mail and Hotmail), you typically need to pay for the privilege to directly access their mail servers.

An open source program called YPOPs emulates a POP3 account over your free Yahoo! Mail account on your own computer. For more information, visit http://yahoopops.sourceforge.net/.

Send and Receive Email on Your Phone


Send and receive email on your phone using your regular email account.
To send and receive email via SMS and MMS, you need to use the wireless operator's special email address, which is tied to your phone number. While this is convenient, it does not address the needs of most email users, especially business users, who need to manage email in multiple existing accounts while on the road. To access regular email on a Nokia phone, you have to configure the phone with your email server and account information. In this hack, I will teach you how to do that. But first, let's go over some basic concepts regarding the Internet email infrastructure.

To access email on your phone, you also need to subscribe to General Packet Radio Service (GPRS) or Code Division Multiple Access (CDMA) 1x data services. On some networks, the MMS access point provides access to email as well.

Receive Email Via SMS

If you look more closely, you'll see that the message comes from an email address that contains a mobile phone number. If you reply to this message or simply send a new message to that address, you will receive it on the phone as an SMS message. This feature is known as an email-to-SMS gateway.

Almost all wireless operators offer this kind of gateway at no extra charge beyond regular SMS subscription or per-message charges. An alternative way to send SMS messages via the wireless operator is to submit the message and target phone number to a web-to-SMS web form typically available on the operator's consumer portal web site once you log in.

Table below shows the web form and gateway email addresses for popular wireless operators in the U.S. If your operator is not in this table, you can typically call the operator's technical support to find out its gateway email address. This way, you can get your email messages delivered to almost any phone as SMS messages.

Nextel
http://messaging.nextel.com/
@messaging.nextel.com

SprintPCS
http://messaging.sprintpcs.com/
@messaging.sprintpcs.com

AT&T Wireless
http://www.mymmode.com/messagecenter/
@mobile.att.net

Cingular
http://www.cingular.com/sendamessage
@mobile.mycingular.com

Verizon
http://www.vtext.com/
@vtext.com

T-Mobile
http://www.t-mobile.com/messaging/
@tmomail.net

In addition to the operator gateways, other commercial email-to-SMS gateways interoperate with multiple operators. For instance, a service called Teleflip (http://www.teleflip.com/) forwards any message sent to the address @teleflip.com to the target phone number as an SMS message (this service works only in the U.S.).

The SMS message is limited to 160 characters. You cannot send long messages or message attachments to a phone via SMS.

Since SMS messages cost money to send and receive, it is crucial that wireless operators incorporate some security measures into the SMS-to-email gateway to prevent spam. As a result, you cannot send more than 10 messages in a short period of time (typically several minutes) via the gateway. To send many SMS messages from the PC or a backend server to a phone.


Tuesday, November 11, 2008

Send Email Via MMS in Nokia Smartphone


The MMS service allows you to send messages with multimedia attachments from one phone to another, or from a phone to any email address. All you need to do is to open the Messaging application (Series 60) or the Messages menu (Series 40), choose New Message, and then choose to create a multimedia message. Using the Options Add Recipient menu option, you can select any email address from your Contacts list in the To or Cc fields. In the message composition window, you can type some text and/or attach media files. Once you click Options Send, the phone queues the message for delivery to the selected email addresses.
Alternatively, you can choose any media file in the Gallery and use the Options Send Via MMS menu item to create a message composition form with the file already attached. Or, you can choose any person from the Contacts list and use the Options Create message Multimedia message menu to create a message with the To field already filled in.

Most wireless operators limit the size of MMS messages to 100 KB or less. You probably will be unable to attach more than two VGA (640 x 480) quality pictures in the message.

In your email client, you can retrieve the message and view its contents, including any attachments. Your wireless operator might add a logo or some custom graphics to the message.

Send Email the Easy Way

Using the existing mobile messaging infrastructure to send and receive email messages is convenient and fits seamlessly with the mobile user experience.

The easiest way to send and receive email messages is to use the underlying wireless messaging infrastructure. You can use the SMS and MMS clients built into your phone to transport email messages. The tight integration between the message client and the wireless network offers some great benefits from the user's perspective:

It is very easy to use. You do not need to install any additional software or configure anything on the phone or in the email account. It just works.

The incoming messages are pushed to your phone. You are notified with a tone or an on-screen message when the message arrives. There is no need to push the "Check mail" button to check and retrieve messages.

Of course, this approach also has several drawbacks that you should be aware of when deciding whether this is the right way for you to connect to email:

The biggest drawback is that you cannot use your existing email accounts to send or receive messages. Instead, the messages are routed through special accounts provided by the wireless operator.

Although the email accounts and infrastructure are free, you need to subscribe to MMS and/or SMS services, and there might be a per-message charge.

There are size limits for both SMS and MMS messages. You cannot send long messages or big attachments. I will illustrate this point in more detail later in this hack.

The wireless network does not have a service guarantee for SMS or MMS. It might take a long time to deliver a message. The message might be dropped silently if it is not delivered in 24 hours.

Overall, this method works great for casual mobile email users. Now let's check out exactly how it works.

The regular email infrastructure over the Internet also does not have a service-level guarantee. But the wireless data network is less reliable than the Internet. In addition, the SMS traffic is low priority on wireless networks. Also, when an Internet email message doesn't make it to its destination, you will usually receive a failure notification.

Copy and Paste in Nokia Smartphone

One of the most overlooked items in the manual for your handset is the ability to copy and paste text. I found myself wishing I could do this on several occasions, blissfully unaware that this functionality is actually built into my phone.

On a Series 60 phone (Nokia 3650, N-Gage, and many others), simply press and hold the pen/ABC key when you are editing text in an email, the Note Viewer, or other application. Normally this button allows you to change input modes from various languages, or to switch between T9 and multitap. If you press and hold this button, however, any movement with the navigation pad (i.e., the joystick) will draw a selection box around the text of your choosing.

Once you have selected some text in this way, press the Options soft key and select the Copy option. To paste, simply put the cursor where you want it, press the Options soft key again, and select the Paste option

This is a clever way to add address information from an email to the contact card of a friend, or to capture a long URL from your browser to email to someone else.

A Guide to T9 Text Input


When entering text on the phone's numeric keypad, most people rely on the easiest but slowest multitapping method. Using multitapping, each alphabetic letter requires multiple repeated keystrokes on the keypad. For instance, to enter the letter i, you need to tap the 4 key three times; to enter the letter c, you need to tap the 2 key three times; and so on. Hence, typing a message such as "I cannot find my pants" requires that you press the numbers 444 222266666668 333444663 6999 726687777 on your phone's keypad. Come on, people, the Morse code is faster!

In the multitapping mode (alphabetic input mode), it is slow to enter numbers. For instance, you need to press the 2 key four times to enter the number 2. You can enter numbers quickly by switching to the numeric input mode, but switching modes is slow when you have mixed letters and numbers. To speed up number input, you can press and hold the number key to get that number without leaving the current input mode.

Thankfully your Nokia phone supports Text on Nine Keys (T9), which lets you type that phrase in roughly half the number of keystrokes: 4 226668 3463 69 72687. Figure 10-1 shows the sequence for typing "pants."

T9 is a predictive-text input engine from Tegic Communications (which is owned by AOL) for mobile devices such as your mobile phone. Instead of having to press each key multiple times for just one letter, you press each numeric key only once per letter; as you're pressing the keys, T9 will examine what you're typing and predictively figure out the potential combinations for valid words. Most handsets will pop up a list that shows you which word Tegic thinks you're typing, but you can just wait until you are done typing the word, and it will be right in most cases. If not, you can select the next matching word from the T9 dictionary. If you don't see anything marked "next," it is probably the 0 key.

You might find that T9 is not enabled on your phone by default. On a Series 60 device, tap the pen/ABC key and a menu appears: select Predictive Text On from this menu. (You can switch it off by selecting Predictive Text Off from the menu.) On a Series 40 device, press and hold the Options soft key to toggle predictive input. You will know when predictive text is enabled by looking at the pencil icon at the top of your screen. A pencil with lines under it indicates predictive text, and no lines indicates multitap, as shown in Figure 10-2.

Most handsets also allow you to add words to your dictionary. When confronted with a word the dictionary doesn't know, the phone asks you to spell it, and then it saves it to its local dictionary. In the episode of Seinfeld called "The Soup Nazi," Jerry and his girlfriend call each other "shmoopie" as a term of endearment. Figure 10-3 shows me trying to add this word to the T9 dictionary on my Nokia 3650. The question mark at the end (and the appearance of the Spell soft key) indicates that T9 wasn't able to find the word in the dictionary. The "sion" in the figure is T9's guess as to what word I meant to look up.

Since Tegic doesn't recognize the word, I need to type it in. First, I must press the */+ key to cycle through all the possible spellings. When I've gone through them all, the Spell soft key appears (it might temporarily take the place of the Options soft key). Next, I must press the Spell soft key to use multitap to input my word the old-fashioned way.

I correctly spell the word "shmoopie" and press OK to save it for later. Now I can use T9 to type "shmoopie" whenever I desire (see Figure 10-5). Believe it or not, I use that word at least twice a day on workdays, and once per weekend.

Let's look at how long it would have taken me to type this with multitap. Before having this word in my dictionary, typing it out took 19 keystrokes, not including pauses between the "m" and "o" keys (when you use multitap to type two consecutive letters that appear on the same number key, you have to pause between typing letters). Now it takes only as many button pushes as the word contains letters8, in fact, which takes a lot less time than 19, even if you're a really fast multitapper.

See http://www.t9.com/ for more information and interactive demos.

Smartphone Keypad Typing Tips

Composing your messages on a phone keypad doesn't have to be painful. Most handsets make it pretty easy, but the easy way is sometimes obscure.

Typing on the small keypad is always the challenge for mobile phone messaging. Some Nokia smartphones, such as the 6800/6820 in Series 40 and 9300/9500 in Series 80, are equipped with fold-out QWERTY keyboards. Those devices are ideal for messaging and enterprise applications.

For Nokia Series 60 smartphones, it is often possible to use an external keyboard. The Nokia Wireless Keyboard is a full-size, foldable keyboard that works over Bluetooth. Only Nokia 7610 and newer Series 60 smartphones are officially supported by this keyboard, but Nokia 6600 is also known to work. Besides Nokia's own offerings, the Think Outside Stowaway Bluetooth keyboard (http://www.thinkoutside.com/) is another choice. The Think Outside keyboard supports older Nokia Series 60 devices such as the Nokia 3600 and 3650.

While keyboards are nice, most mobile phone users still need to rely on the keypad to enter messages. In this hack, I will cover several important techniques to improve text input on regular smartphone keypads.

Monday, October 27, 2008

Set Up Email Automatic Polling


To automate the email polling and blog posting process in WordPress, you need to schedule a recurring task that loads the wp-mail.php script at fixed intervals (e.g., every five minutes). You need two tools for this: a lightweight URL loader called curl to load the PHP script, and the open source cron daemon to schedule the recurring URL loading tasks. Both cron and curl are installed by default on Linux, Unix, and Mac OS X computers. For Windows, you can install the Cygwin toolkit (http://www.cygwin.com/)to get a common set of Unix utilities including cron and curl.

You can use a fully featured web browser, such as Firefox, to load the wp-mail.php script every five minutes. But that is a huge waste of server resources.


Next, log into your server and type the following on the command line:

crontab e

This opens the cron control file, which contains all scheduled tasks, in the system's default text editor. You should append one line to the bottom of the file, save it, and exit the editor. cron automatically reloads the control file.

*/5 * * * * /usr/local/bin/curl http://yourdomain/wp-mail.php > /dev/null

The preceding line in the cron control file schedules the system to run the curl command in the last part of the line every five minutes in every year, month, week, and day. That's it! You now have a fully functional photo moblog server.

If you do not want to use the default editor, you can always export the cron control file to a text file, edit it externally, and then import the edited file back to crontab. See the crontab manual page for more information.

Email Posting with WordPress


WordPress supports email posting, albeit with two main drawbacks. First, it does not support email attachments. And second, it does not filter the sender's email address. Anyone can send email to the email address and have their messages appear on your blog. Without sender-address filtering, your moblog can be easily flooded with spam messages.

A patch by "lansmash" fixed both drawbacks. Applying the patch is straightforward. First, download the file wp-mail-0.2.zip from the web address http://blade.lansmash.com/index.php?cat=5. Unzip the archive to the WordPress root directory. This adds the files PEAR.php and mimedecode.php to the directory and replaces the original wp-mail.php file. Now, create two directories, wp-photos and wp-filez, under the WordPress root directory to store images and other attachments, respectively. You can choose other directory names as long as you remember to modify the corresponding settings in the new wp-mail.php file.

If you want automatic picture resizing (an important feature for megapixel camera phones), you need to install an additional hack provided by "Hugo." Simply replace the default wp-mail.php file in your WordPress installation with a new file downloaded from http://www.vienna360.net/files/wp-mail.phps.

Now, you can test your setup by sending an email message with a picture attachment to the email address specified in the Options Writing section of the WordPress configuration page. Make sure you enter the correct server and login information. Nothing appears on your blog just yet. That is because the wp-mail.php script needs to be manually loaded to poll the email server for the new message. Do this by pointing your browser to http://your-domain-name/MyMoblog/wp-mail.php.

Of course, if you need to open a browser and load the wp-mail.php script manually every time you post a moblog entry, it defeats the whole point of moblogging. So, let's discuss how to automate the email polling process in WordPress.

Set Up WordPress


WordPress (http://www.wordpress.org/) is an open source blog server based on PHP and MySQL. It is available free of charge from the WordPress web site. You can run it on your own server or on any Internet Service Provider (ISP) server account that supports PHP and MySQL .

As a PHP and MySQL application, WordPress runs on almost any modern operating system, including Linux, Unix, BSD, Windows, and Mac OS X.

By following the installation instructions (see http://wordpress.org/docs/installation/5-minute/) you can install WordPress in five minutes. After creating a user account, you can start to post and publish blogs on your very own blog server now! Out of the box, you can use Flickr to post photos to your freshly installed WordPress server. In the rest of this hack, I will discuss how to set up WordPress so that you can moblog with it without

Set up and run your own servers for moblogging!

Many power bloggers run their own blogging server so that they can have complete control over the content and presentation of their blog. While Flickr can interoperate with many popular blog systems, it is still a "hosted" service that is beyond the blogger's control. For instance, there is no guarantee that the free Flickr service won't be replaced by a for-pay service in the future. If you want complete end-to-end control over your moblog, you can customize existing blog server software to make it support email posting with photo attachments from a mobile phone. In this hack, you will learn how to set up the popular WordPress blog server to support photo moblog postings.

Running your own server also gives you complete access to web site visitor statistics, the ability to back up the web site, and many other features.

Smart client for Flickr.


The default email application on some Nokia phones restricts the size of an attachment to a maximum of 100 KB. To get around this limitation and to provide a more integrated user experience, you can use a phone application that takes pictures and then automatically posts them to Flickr without having to switch applications and enter email addresses.

"Manoj TK" wrote a little open source J2ME program that does just that. You can download it from https://sourceforge.net/projects/moblogger2/.To learn how the program works, please refer to http://manojtk.blogspot.com/2005/01/smtp-email-attachments-from-nokia-6600.html.

Photo Moblogging to Any Blog Service

The aforementioned photo moblogging solutions tie you into specific bloghosting services. But in many cases, you do not want this tie-in:

You could be running your own blog server and do not use any of the blog hosting services.

Your favorite blog host might not provide photo moblogging features.

You might not want to pay the extra money to add photo moblogging support.

Is there a service that is free and independent of your blog server? As it turns out there is, and it's called Flickr.

Flickr (http://www.flickr.com) started out as a photo storage provider. The one feature that makes Flickr really interesting from a moblog point of view is that it allows you to upload photos (to Flickr) by email and create a blog entry at your designated blog site. The blog site can be any of the blog hosts mentioned in the previous section, or even your own web site running popular blog server software.

The post includes the email content as its main body and an inline thumbnail, which is linked to the picture stored on Flickr. The thumbnail posting feature in Flickr is really cool and sets it apart from other services, especially if you have a camera phone that produces megapixel pictures. Without resizing to thumbnails, megapixel pictures would clutter up your blog and mess up the web page layout (e.g., sidebars, etc.).

The free account at Flickr allows you to upload up to 20 MB of photos per month. A subscription fee of $24.95 per year will push the quota to 2 GB per month. Considering most (mobile phone) moblog attachments are smaller than 100 KB, the free Flickr account is more than sufficient for even the most aggressive mobloggers. Combining the Flickr email posting service with a free blog-hosting service (or your own blog server), you can set up a powerful and free moblog with photo posting in no time!

Saturday, October 4, 2008

Email Moblogging


If your mobile phone supports sending email or MMS, email moblogging doesn't have any of the drawbacks of SMS moblogging:

There is no practical length limitation, as long as your thumbs don't complain.
You can post photos from a camera phone, adding richness to your post.
There is no extra charge besides what you pay for the wireless data and regular blog hosting service.

Email moblogging works in much the same way as its SMS counterpart, except that you send email from the phone to a (hopefully) secret email address. The email Inbox is polled by the moblog service at regular intervals (e.g., every five minutes). When a new message is detected, the moblog service retrieves the message and parses the content. If the moblog service supports picture attachments (most do), you can even have a mobile photo blog!

It is important that you keep the email address private. Any message sent to that email address will be automatically posted on your blog.

The easiest way to set up an email-based moblog is to use a blog-hosting service that supports email posting. It typically takes only a few minutes. After you open a regular blog account at the hosting service, there is usually a field under the user preferences screen where you can set the private email address. All emails sent to this address will be posted to the blog you just opened.

Most popular blog-hosting providers now support email posting from mobile phones, either free of charge (e.g., Blogger) or with a premium paid account (e.g., LiveJournal).
Besides the major blog providers, some new providers specialize in moblog hosting. Among them are Textamerica (http://www.textamerica.com) and Fotolog (http://www.fotolog.net). Both of them offer free accounts for users to blog directly from their mobile phones.
The free accounts often come with the condition that the service provider can display advertisements on your blog pages.

SMS Moblogging

SMS moblogging works on any handset that can send SMS, which is virtually every mobile phone nowadays. You write the blog entry on the mobile phone and send it via SMS to a service phone number provided by a moblog service. The moblog service interprets the received SMS message and posts it to your blog. You can be identified by the caller ID or an ID code embedded in the SMS message. A good example of such an SMS moblog service is Txtsolutions (http://blog.txtsolutions.com). Txtsolutions can host your blog on its own site, or post your blog entries to your account in a list of supported third-party blog hosts.
If the SMS moblog service posts the blog entries to a third-party blog host on your behalf, it needs to know your login information on that third-party site.

Despite the meager prerequisite of the handset, SMS moblogging has some major drawbacks. First is the nagging 160-character limitation for SMS. Second, even if you are laconic enough to squeeze each of your posts into fewer than 160 characters (not words), SMS moblogging is text-only. Third, you need to pay extra to the SMS moblog service provider. For example, Txtsolutions charges £0.10 for each message. This charge is in addition to your regular SMS fee (from your wireless operator) and cost for the blog hosting service if it applies.

Post to Your Blog from your Smartphone

Use a mobile blogging service to post blog entries with pictures from your mobile phone.

Not long ago, bloggers could only update their blogs using a computer. Inspiration, however, does not always coincide with the presence of a bulky computer. At the turn of the century, some adventurous and creative bloggers started blogging from their mobile devices. The word moblog was thus coined, referring to blogging from a mobile device (mobile phones, PDAs, etc.).

If blogging without a computer is convenient, moblogging with a camera phone is exciting. In just a few clicks you can snap a quick shot and add a few punch lines, and minutes later the neatly formatted post on your personal blog can be shared with the entire world! Figure 9-31 shows a snapshot of O'Reilly editor Brian Jepson's moblog. You can see Brian's world through pictures taken from his phone camera and comments that captured his instantaneous thoughts. (That dry spell between November and March? That's when Brian used a phone without a camera for a few months before switching back to his Nokia 3650.)

There are two major approaches to moblogging, regardless of the myriad phone models and their different capabilities: SMS moblogging and email moblogging. This hack introduces and compares these two methods, with an emphasis on the latter.

Instead of email, you can also use MMS to post blog entries from your camera phone. The MMS message is sent to an email address, and hence, MMS moblogging is essentially the same as email moblogging.



Wednesday, September 17, 2008

Web Proxy for RSS Reading

The web portal and standalone Java client approaches have their benefits. It is easy to manage feeds on the web portal, and it is more economical, in terms of mobile phone bandwidth, to have the server polling the blogs for updates. The standalone Java client, on the other hand, provides a better user interface (UI) on the phone, which is crucial for successful mobile applications.

Litefeeds (http://www.litefeeds.com/) is a new service that combines the benefits of the web portal and the Java client approaches. Litefeeds provides a web site where you can create an account and edit your RSS feeds. The web site polls the RSS sources and keeps its content up-to-date at all times. On the mobile phone, Litefeeds distributes a Java client program that retrieves information from the web site as needed, using a compressed data protocol. The Java client presents the information in an effective mobile UI.

J2ME-Based RSS Reader

You can also download and install third-party programs to aggregate and render RSS content on your phone. The mReader program, written by Mark Allanson, is a J2ME-based RSS reader that works on Nokia Series 40 and Series 60 devices. It is available for free download from http://markallanson.net/html/technical/j2me/mReader.htm. mReader parses RSS content as well as basic HTML-formatting tags embedded in the RSS stream.


Typing URLs for RSS feeds on a mobile phone keypad can be tedious work. mReader supports importing a list of RSS feeds from an Outline Processor Markup Language (OMPL) file. You can create an OPML file by exporting RSS feeds from most RSS aggregator/reader programs. You can also download fully categorized RSS feed listings in the OPML format from directory web sites such as http://www.w3os.nl/logos/opml/.

Saturday, September 6, 2008

Read Blogs and RSS Feeds in Your Smartphone



Really Simple Syndication (RSS) is an XML-based content publishing format for syndicating news content from multiple web sites and information sources. Most news sites (e.g., cnn.com and sourceforge.net) and blog sites produce RSS feeds so that other sites and portals can aggregate their headlines.

Of course, RSS is not limited to aggregating web content across several web sites. Many blogging suites put the full text of blog posts, rather than just headlines and links, in the RSS feeds. In this case, you can read blog entries via RSS alone, without actually loading the HTML web site. In fact, many blog readers do just that. While many web browsers do not support RSS, some specialized tools, such as NetNewsWire for Mac OS X and Sharp-Reader for Windows, allow you to keep track of many RSS feeds and read them from a computer.

But how do you read RSS from a Nokia mobile phone? The Nokia default browser (i.e., the Services application) and other third-party browsers cannot parse and render RSS. In this hack, I'll discuss ways to read RSS on your phone.

How to add a phone book entry?

On your web site's Contact Us page, you probably want to provide an easy way for visitors to add your contact number into their Contacts list without quitting the browser. The Add Phone Book Entry WTAI URL allows you to do just that. The following link prompts a user to add the phone number +18001234567 as ABC Corp in their phone Contacts list :

        <6a7href="wtai://wp/ap;+18001234567;ABC Corp">
Add our contact number
77>

Adding a Contacts list entry from a web site

The complete syntax of the WTAI URL allows you to use a WML variable to capture the return status value of the operation. Table lists the possible return values.

wtai://wp/ap;[phone number];[contact name]![variable name]

Table The status codes after the Add Phone Book Entry operation

Status code

Description

0

Success

-1

Unspecified error

-100

The contact name parameter is too long or unacceptable

-101

The phone number is invalid

-102

The phone number is too long

-103

The phone entry cannot be written

-104

The phone book is full


The corresponding function in WMLScript is addPBEntry:

var flag = WTAPublic.addPBEntry ("+18001234567", "ABC Corp");

So far, I have covered the WTAI public library URLs and functions, which all Nokia devices support. Some phones might support extended WTAI libraries, which provide functions for call management, SMS texting, and more Contacts list operations. You need to check your phone manual and the Forum Nokia web site (http://forum.nokia.com) to find out exactly what WTAI calls are supported on your device.

How to send DMTF tone?

During an active voice call, if you click the following link, the phone will send touch tones (a.k.a. DTMF tones) for the keys 1#23*456 over the voice line:
          Send tone

This can be very useful for interacting with automated answering services, which ask you to press keys to navigate menus. You can also capture the return status of the operation in a WML variable. The following is the complete syntax of the "send DTMF" URL link.

         wtai://wp/sd;[tone sequence]![variable name]

Table. The status codes after the "send DTMF" operation

Status code

Description

0

Success

-1

Unspecified error

-108

There is no active voice connection


The corresponding WMLScript function for sending DTMF tones is as follows:

     var flag = WTAPublic.sendDTMF ("1#23*456");

Friday, August 22, 2008

How to Make Calls from WMLScript?


The WTAI not only defines URL schemes for making phone calls, but it also defines public functions you can invoke in WMLScripts. WMLScript requires the WAP gateway (or precompilation), so it is not as easy to use as plain URL links. On the other hand, WMLScript allows you specific logical conditions for making calls, and it makes it easier to handle the call status return value. For more information on WMLScript programming, check out W3Schools' WMLScript tutorial at http://www.w3schools.com/wmlscript/default.asp. The following WMLScript statement makes a phone call to number 5551234 and stores the return value in the flag variable:

var flag = WTAPublic.makeCall ("5551234");

If the call is successful, the return value in flag is an empty string. If the phone number is not formatted correctly, the flag value is invalid. If the call fails, the return value is one of the error codes.

The makeCall function call blocks, and it will not return until the call is finished. Hence, your browser might freeze when you are making a call via WMLScript.

How to Decide Whom to Call?


In the previous example, the phone number is hardcoded into the URL. This is not very convenient in many scenarios. For instance, you might want a drop-down list of local numbers to choose from, or you might want to be able to enter your own target numbers. With a little help from WML variables, you can easily make the call link dynamic. The following example shows a WML text entry box. You can enter any phone number in the box and then click the link below it to make the call

Download here

In the example, the phoneno WML variable captures your input in the text box. Then its value, $(phoneno), is embedded in the phone call URL as the phone number. If you enter an incorrectly formatted phone number (e.g., alphabetic letters with numbers), the browser will throw an error when you try to make the call.

How to Make Phone Calls from Web Pages?


You might have seen how you can click a link to dial your phone from your wireless operator's 411 service portal page. But how does this work? Well, the process is really easy, with a special WAP interface known as WTAI.

One of the coolest features in WML is its support for telephony functions known as the Wireless Telephony Applications Interface (WTAI). A Nokia WML browser allows users to make phone calls, send touch tones, and update the phone's Contacts list directly from a web page! Since the mobile phone is still primarily a voice communications tool, the ability to integrate the telephone experience with the web-browsing experience proves to be very useful. You can do that with either specially formatted URLs or WML-Script function calls.

You can "link" to any telephone number via a specially formatted URL from your web page. Once you click that URL, the phone prompts you to make a call to the specified phone number. The URL can be embedded in a or a element in your WML, XHTML MP, or plain HTML pages. The following example shows an XHTML MP page with a phone call link:

Download here

The number +15555551234 after the wtai://wp/mc; string in the URL specifies the phone number. You can use any phone number format that your phone and wireless operator can understand.

When you click the link and confirm the message, a call to the specified number is initiated. Once the call is connected, the phone goes back to the browser and you can continue browsing while staying on the phone. The small phone icon at the top-right corner of the last screen indicates that a voice call is in progress. Although the screen-shots are taken from a Series 60 device, the process is similar on Series 40 devices. On a Series 40 device, you are given an additional choice to quit the browser before the call is initiated.

If you are browsing over a GPRS connection, the connection is suspended while the phone call is active.

Saturday, August 9, 2008

Assassins Creed Java Game



Download here

Kung fu Panda Java Game



Download here

Dark Knight



Download here

Thursday, July 31, 2008

Configure the Server for MIME Types

After you write the web pages, it is time to publish them online. You can publish through either a web-hosting service or your own server. But before anyone can view your web pages, you must configure the server with the right Multipurpose Internet Mail Extensions (MIME) types.

When the web browser accesses any resource (e.g., a file) on the server, the server first returns the content's MIME type. Then, based on the MIME type, the browser determines how to render the content. For example, the server returns a text/html MIME type for an HTML page so that the browser knows it needs to parse the tags and render the HTML presentation elements. If the server returns the text/plain MIME type for the HTML page, the browser thinks it's plain text, and displays all the characters including the HTML tags. The server returns the image/jpeg MIME type of a JPEG image and the browser renders the binary data stream into an image. For the mobile browser to properly render the contents of your web site, the server must be configured to send the right MIME types. The server typically associates a MIME type for each filename suffix.

Scripts will generally set the correct MIME type using Content-Type header that's sent out in the HTTP response header. So, the filename suffix of a script does not necessarily determine its MIME type. See "Dynamic content," later in this section.



Web-Based File Transfer


One of the primary reasons to set up a personal mobile web site is to share mobile content (e.g., wallpapers and ring tones) with friends, or across several devices you own. It is easy to set up a page where your phone can download files via its WML or HTML browsers. The native Services browser allows you to download common media format files to the Gallery. Most Nokia phones also support web-based file uploading. The following XHTML MP page shows a file upload form on the device browser. You can select a file from the Gallery and submit the form to the server

The following listing is the HTML code for the file upload page:
Download here

On the server, the following PHP script (i.e., the processor.php file on the web server) saves the file to the specified directory:
Download here

XHTML MP

In WML 2.0, WML became a subset of the standard XHTML known as the XHTML Mobile Profile (XHTML MP). Since XHTML is a strict XML definition of HTML, it is a lot easier to process on resource-limited mobile devices (since it doesn't have to deal with all the exceptions allowed in the more permissive HTML used by many web sites). The following code snippet shows a simple XHTML MP document. Notice that it is also a well-formed XML document (it includes the closing tags that are not necessary in non-XHTML HTML documents).

Download sample

XHTML is not yet the dominant markup language for Internet and mobile web sites. But it is widely supported in the new generation of authoring tools and dynamic web site frameworks. As those tools are being adopted and web site developers are more consistent about developing for multiple browsers, you can expect XHTML to be the convergence point of the desktop Internet and the mobile Web.

Saturday, July 19, 2008

WML for mobile webpages


Phone manufacturers and wireless operators developed their own lightweight content markup languages to replace HTML. Examples of such markup languages include cHTML, which is used by i-mode services, and HDML, which is promoted by Phone.com. However, having to deal with multiple markup languages was a big burden for mobile content developers and it hindered the adoption of the mobile Internet in those early days. To solve this problem, a standard mobile content markup language supported by all mobile device manufacturers and operators was needed. The Wireless Markup Language (WML), defined by the WAP Forum, emerged as such a standard.

The WAP Forum is an industry-standard body that develops the data communications protocols for mobile networks. WML is officially part of the Application Environment specification of the WAP standard. Put simply, all WAP-compatible devices should support WML.

Unlike page-based HTML, a WML document is conceptualized into "a deck of cards." Each card represents one screen of content, and the internal links among the cards enable navigation from screen to screen. The ability to download multiple cards at once helps to reduce the slow and unreliable network round trips in WAP applications. The following code snippet demonstrates a simple WML document. The first card asks for your name and the second one echoes it back to you. The device needs to download the WML document only once to get both cards.

Download the WML sample here.

You've probably already given in to the temptation to put this document on a web site with the extension .wml and try it out with your phone. However, if your web server sends it with a Content-Type of text/plain, it might not load properly. To be sure your web server is sending it correctly, see "Configure the Server for MIME Types," later in this hack.

WML has made enormous progress in standardizing mobile browsers. However, as the mobile phone's capability improves, the need to keep the content markup language as light as possible has diminished. Instead, the challenge is to add more features to the WML standard and, at the same time, improve interoperability with the vast number of web sites in the wired Internet world.

HTML for mobile web pages

Most Internet web pages for PC browsers are authored in HTML. However, in the early days of the mobile Internet (in the late 1990s), HTML was considered too heavyweight for most mobile phone browsers, for these reasons:

  • The rich set of presentation elements supported in HTML is overkill for many mobile devices, especially low-end devices, since the phone screen simply cannot distinguish many font styles and media objects, and it provides limited room for layouts (e.g., frames and tables).
  • Most HTML pages are not well-formed XML documents. For example, you can use the tag to open a paragraph without the companion to close the paragraph in HTML, but the software that draws your web pages on the screen has to check the rest of the HTML document to make sure there isn't a stray it should pay attention to. This extra processing is nothing for the powerful CPUs in today's computers, but it can strain the limited CPU in your mobile phone. So, it is considerably more difficult to process irregular HTML than it is to process a well-formed XML document. Desktop web browsers have to perform all sorts of contortions to deal with permutations of HTML tags that have evolved since the early Web.
  • After years of browser wars on the PC side, the HTML specification is fragmented with multiple proprietary extensions.
HTML is now fully used by latest mobile phones and almost eclipsed the use of WAP format.

Create a Mobile Web Site

Personal mobile web sites are a very effective means of sharing information and mobile media content. There are a few things you should know when authoring and deploying mobile web sites.

Many Internet hackers run their own web sites to communicate with peers. For advanced mobile hackers, setting up your own web site is a powerful way to enhance your mobile web experience. Via the web site, you can build a personal gateway to the Internet, share private content with family and friends, or even provide services to peers and the general public. In this hack, I'll first introduce the various mobile content markup languages with some simple examples, including an example of how to download and upload files from and to a web site for sharing. Then, I'll cover the server-side MIME-type configuration, which is necessary to make web pages accessible to most mobile phones, as well how to password-protect your data. Near the end, I'll provide a brief overview of mobile web development tools from Nokia.


To understand the various standards and specifications in the mobile Web landscape, you should learn a little about how mobile browsers and their content markup languages have evolved in the last several years. As I mentioned in "Browse the Web" , HTML, WML, and XHTML MP browsers are the ones you're most likely to find on Nokia devices.

Friday, July 11, 2008

Bookmarks for your portal


The portal cannot possibly aggregate all content from all web sites. If you visit certain sites often, you can put their URLs in the Bookmarks section of the portal. That saves you from entering the URLs on the phone keypad from time to time. It is a lot easier to manage the long URLs on a desktop computer via the portal's web interface than it is to deal with them on the phone.

Aggregated web content


The T-Mobile portal aggregates and displays the following web content on your phone browser:
  • Movie listings and show times from your local theaters
  • Your local weather forecast
  • Quotes for stock and major fund prices
  • Categorized news from various Internet sites
  • Sports scores from your favorite teams
  • Your daily horoscope
  • Winning lottery numbers
The operator makes deals with the content providers so that you can view the information in the portal for free.

The Wireless Operator's Portal


Your wireless operator already has a portal for you! If you got your phone from the operator (or an authorized reseller), the portal's URL is probably already defined in the Bookmarks section of your Services browser. In this section, I'll use T-Mobile USA's T-Zones service as an example. Other operators' mobile portals are similar.

For most operators, you need to register an account on the operator's web site to personalize the portal content. The T-Mobile USA web site is http://www.t-mobile.com/. Your account is associated with your phone number. You can check your bills, minutes, and service subscriptions from the web site. Of course, you also can customize your portal via the web site. To get this customization page, click the T-Zones Settings link toward the top of the page after you log in.

From the web-management interface, you can even preview the portal configured for the mobile device.

Then, to access the T-Mobile portal from the phone's Services browser, enter the web address http://wap.myvoicestream.com/. On the phone browser, the portal page is divided into sections, and you can navigate through them via a series of menu-like links. Notice that the theaters listed on the mobile portal page are the same ones configured in the management interface.

A key benefit of using the wireless operator's portal is that your device is automatically logged into the account, without requiring you to type a user-name and password on the keypad. How does that work? Well, recall that your portal account is associated with your phone number. Since the wireless operator knows where a General Packet Radio Service (GPRS) request originated (i.e., your phone number) at the WAP gateway, it can automatically log you into the portal.

Now, let's dig deeper into the content and services the T-Mobile portal offers. Other wireless operators have similar options.

Friday, July 4, 2008

The Mobile Web in Bite-Size Chunks

Mobile portals give you a launching-off point for your mobile web experience. But to make an intelligent choice of portals, you need to understand the core features and differences between portal services.

Accessing web sites directly via their URLs is OK if you have only a handful of web sites to visit. You can simply manage them in your browser's bookmarks and load each of them by hand. However, if you need to keep track of many web sites, managing and loading them individually is cumbersome. Here is where web portals come in handy.

Portals and search engines are among the most frequently visited web sites on the Internet. A portal provides a single point of entry to access a wide variety of information on the Web. In the desktop PC world, the portal is primarily a content aggregator to help users track the ever-changing Internet. In the world of the mobile Web, however, portals play a much more important role than they do on the desktop:

A mobile portal can aggregate content from regular, nonmobile Internet sources and present them in a format that is friendly to mobile browsers. For example, it can take a long story from the New York Times' HTML web site or a blogger's Really Simple Syndication (RSS) feed, break it into multiple smaller pages, and then feed it to the mobile browser as WML content.

A mobile portal saves you from having to remember and type multiple URLs and usernames/passwords on a small phone keypad.

With for-pay mobile content, a portal saves you the hassle of dealing with multiple content providers and billing services.

Most mobile web portals mobile portal solutions today are based on the concept of a "personalized portal." That is, first you register a personal account with the portal. Using a desktop PC, you can log into the portal's management interface and customize its contents. You specify what content your personal portal account will aggregate and display. Then, on the mobile phone, you see a personalized portal site that displays its contents according to your account settings. The separation between the management and view interfaces is a very smart design. You complete most of the interactions that require user input on the PC via the management interface. On your mobile device, you can stay in the comfortable "navigate and read" mode most of the time.

As you can imagine, the mobile portal is a great place to reach out to billions of mobile data users. So, many companies are in this space, competing for your business. In this hack, I'll introduce you to some of the most popular portals available via your Nokia phone.

WebViewer: A Java-Powered Browser


The Opera browser is great, but it does not run on Nokia Series 40 devices. Even with accelerator proxy support, it still makes heavy use of the Series 60 device's network and CPU resources, since it still needs to parse and render the HTML code. If you want to browse HTML pages from a Nokia Series 40 device or use a browser that runs faster on a Nokia Series 60 device, you can choose Reqwireless's Java-based web client, called WebViewer.

The idea behind WebViewer is to push the browser proxy to the limit. The WebViewer client is only 48 KB, and you can install it on even first-generation Series 40 devices, such as the Nokia 7210. Without the proxy, the browser cannot render any web pages. In fact, the browser is configured to connect to the proxy only. The proxy not only fetches and resizes web content on behalf of the browser, but also parses the HTML and decides how to render the page. These rendering instructions, together with any embedded images and other media objects, are returned to the WebViewer browser in a highly compressed, proprietary binary format. This way, the device browser does not need to parse the HTML and manage the layout. It simply follows the well-formed instructions from the proxy to place text and images at specified places on the screen. The proxy renders the page to fit the device's screen size so that you will never need to scroll horizontally (similar to the SSR mode in the Opera browser).

The Opera Browser with Proxy


The standalone Opera browser is powerful and feature rich. But it does not solve the fundamental issue with wireless networks that hinders the adoption of the mobile Web: the mobile data network is slow and often expensive. For graphics-intensive web pages, the Opera browser needs to first open multiple HTTP connections to download all the images, and then resize them to fit the device screen if SSR is used. That is a slow and bandwidth-intensive process. The multiple round trips needed to fetch images occur very slowly in high-latency wireless networks. This process also quickly drains the battery, due to heavy CPU usage.

If you do not care much about images, you can turn them off from Opera's Settings menu, which will speed things up considerably. Alternatively, Opera displays the page before it downloads all the images. So, you can press the Stop command to stop loading images if the text page is good enough.

The Opera Mobile Accelerator is a subscription-based service that can drastically improve Opera browser performance. The idea is to delegate much of the bandwidth-and CPU-intensive work from the mobile device to a proxy server. When you request a URL from the Opera browser, the request is forwarded to the proxy server, a server running on the Opera network that downloads web pages and images on your behalf. The proxy server fetches the web page and all the images in it, resizes the images, compresses all of them into a more compact format, and then returns the compressed package to the mobile browser. The mobile browser receives the optimized and compressed page and displays it.

It is easy to configure the accelerator proxy for your device. Just load the URL http://www.opera.com/proxy in Opera and the browser automatically configures itself. Behind the scenes, the browser is configured to talk to an HTTP proxy hosted by Opera. Once the Opera browser is configured for the proxy, you get a 14-day trial period to try the service for free. Beyond that, you have to pay a monthly subscription to continue using the proxy service. The proxy server identifies your browser via the phone's International Mobile Equipment Identity (IMEI) number and verifies its subscription status. If you decide not to use the service at any time, just go to the Settings Advanced menu and disable the proxy.

Tuesday, June 24, 2008

The Opera Browser for Symbian


The Opera browser is the leading HTML browser for Nokia Series 60 devices. Besides basic HTML markup content, Opera also supports Java-Script embedded in the pages. In many markets, Nokia 6600 phones are sold with Opera preinstalled. If your handset does not include Opera, you can purchase a copy from http://www.opera.com/ and install it yourself. The Opera browser requires a relatively large amount of free memory to run. On an older device, such as the Nokia 3650, you must exit most background programs before you can start Opera. You can press and hold the menu key to see a list of background programs and use the c key to exit them one by one.

If the Opera web browser's memory footprint is too large for your phone, you can try Dorisanother HTML browser for Nokia Series 60 phones. Doris is much lighter than Opera, and it runs on the early Nokia 7650 phones. However, compared with Opera, Doris has a limited set of features. You can download and purchase Doris from http://www.anygraaf.fi/browser/indexe.htm.

Opera develops its web browser for many operating systems, including Windows, Mac OS X, Linux, Solaris, FreeBSD, OS/2, QNX, Symbian, and Windows Mobile. Since the Opera browser for Nokia Series 60 devices is based on the same core code as the award-winning Opera browser for PC and Mac computers, it can parse and render a great majority of HTML pages on the Internet, including sloppily formatted ones. Opera supports common browser features such as HTTP cookies, a cache for pages and images, Java-Script, HTTP proxy, HTTPS, and HTTP Basic authentication. It also supports full-screen browsing to make better use of the extremely limited screen real estate on a mobile phone. In full-screen mode, the soft-key labels at the bottom of the page are also hidden. But the left soft key is still mapped to the Options menu and the right soft key is mapped to Back or Stop, depending on whether the browser is currently loading a page.

Opera defines a set of hotkeys to allow quick access to features without going through the menu. For example, pressing 1 pops up a box for entering a new URL to load; 2 opens the bookmark page; 8 brings up the browser settings page; 9 pops up a box for entering a search phrase for a Google search; and * toggles full-screen mode on and off.

A key innovation in mobile versions of the Opera browser is its content layout management. When you turn on Small Screen Rendering (SSR) mode in the Options Display menu (or use the # hotkey to toggle it on and off), Opera will try to resize images and rearrange elements in the HTML page to make it fit into the width of the screen. You can still use the vertical scroll key to scroll the page. The pages in SSR mode will not necessarily follow the original visual design of the web site. But they are more useable and more effective on a small mobile phone screen. reens.

If you're a web developer, you might want to check how your page will look in Opera's SSR mode. Simply select the View Small screen menu option on a PC or Mac version of the Opera browser.

If you want to browse the page as its designers intended, you can turn off the small screen mode. In that case, the page is probably much wider than the screen. So, you need to scroll both horizontally and vertically to see the entire page.