Posted Under: UAProf
When you’re sending plain text SMS messages to a mobile device you don’t have to worry too much about whether the device can display it correctly. Plain text SMS messages are the lowest common denominator of mobile messaging.
When you want to send more complicated messages, like:
- EMS messages
- Pictures messages (or MMS messages)
You’ll need to know more about the device you’re sending to. There are many possible formats and even when you know which format to use you’ll need to worry about sizes, capacity, supported characters sets and more.
This problem can be addressed in different ways.
The standards describe a User Agent Profile (or UAProf) file. A UAProf file is an XML file that enumerates many of the capabilities of the device. A device that has an UAProf file will send a link to to it in one of the HTTP headers when it requests information from a (mobile) web (or WAP) site. This however doesn’t help you if you want to send a multimedia message to a device you haven’t interacted with before.
Another way to address this problem is by leveraging WURFL. WURFL is a community maintained open-source database of device capabilities. It is contains a superset of the information supplied in UAProf files:
- Not all devices send an UAProf link. For the devices that don’t, WURFL might still have an entry containing the information that would normally be passed in the UAProf file.
- WURLF also contains more specific descriptions for certain features, for instance the UAProf file might might tell you the device support WML 1.3, but WURFL will help you understand how the device renders certain WML tags (e.g can the device display an image and text on the same line).
Of course WURLF doesn’t solve the basic problem that you’ll need to know what device you’re sending to. If all you have is a mobile phone number, then the only thing that is safe to send would be a simple SMS text message.