In WURFL we have two capabilities that define the make and model of a device. They are brand_name and model_name in the product_info group. These capabilities are not very useful from a software development point of view, but are VERY useful when you want to make some statistics about your visitors for example.
Another capability that can be used in combination with the brand and model is actual_device_root=”true”, it’s not a capabilities actually, but an attribute of the device tag. If you cycle all the WURFL device definitions and pick only the ones with the actual_device_root attribute set to true (this attribute is not inherited by children devices) you will basically get a list of real devices. By real devices I mean devices that you can go and buy in a shop, not the subversions or virtual devices. Example: Motorola V3. This is a really useful function that you can use to build lists of devices. If you need your users to pick their device, they will hardly tell you the user agent and firmware subversion, but they can certainly look at it and pick the brand and model from a list (using thumbnails might help too).
Going back to what I was saying above, this can eventually be very useful. The device name must be correct, though!
A few days ago I was updating some Sprint devices. I have downloaded the really nice and complete Sprint_PCS_Vision_Device_Specifications.pdf and started searching for the devices I needed, my colleague provided a short list. One of the devices was, for example, the VI600.
I open the PDF and search for VI600, and I read: “3.4 Sprint PCS Vision Phone VI600” (Page 10). There’s a nice table with all the information about the device screen, images, J2ME, ringtones, etc. First row says:
Vendor: Audiovox
Model: CDM-8450
Another device, the VM4500. “3.46 Sprint PCS Vision Video Phone VM4500 by Sanyo®”, page 52.
Vendor: Sanyo
Model: SCP-5500
Now I wonder, how am I supposed to configure this device? Is it a Sanyo SCP-5500 or a VM4500? It makes a big difference! This happens with most devices on the Sprint network.
UAProfiles produced by Sprint says the device is the “SCP-5500”, for example. On the box you see “VM4500”, but then on the side it says “Sanyo SCP-5500”. Is this just confuse us?