Hi,
In this section we'll see what's purpose of WURFL (Wireless Universal Resource FiLe) and the WALL
(Wireless Abstraction Library) tag library and how far it's efficient as a cloud service (SAAS device detection).
WURFL:
WURFL (Wireless Universal Resource FiLe) is a community effort focused on mobile device detection. WURFL is a set of proprietary application programming interfaces (APIs) and an XML configuration file which contains information about device capabilities and features for a variety of mobile devices. Until version 2.2, WURFL was released under an "open source / public domain" license.
Prior to version 2.2, device information was contributed by developers
around the world and the WURFL was updated frequently, reflecting new
wireless devices coming on the market. WURFL is a repository of wireless device capabilities. The goal of
the WURFL project is to describe the capabilities of common wireless
devices around the planet and provide a simple API to programmatically
query the capability repository.
WALL:
WALL (Wireless Abstraction Library ) is a JSP tag library that lets a developer author mobile pages similar to plain HTML, while delivering WML, C-HTML and XHTML Mobile Profile to the device from which the HTTP request originates, depending on the actual capabilities of the device itself. Device capabilities are queried dynamically using the WURFL API. A WALL port to PHP (called WALL4PHP) is also available.
Problem of device fragmentation
The desktop web-channel, which is primarily divided up between a handful of browsers, relies on HTML
as its markup, and content written as HTML can be expected to be
visible to most users of a web-based channel via one of the standard
browsers (Internet Explorer, Mozilla Firefox, Safari, Opera, and so on). Software updates for desktop browsers are frequently made and widely distributed.
Unlike the desktop web-channel, there is a tremendous amount of fragmentation in the mobile device-channel. Markup can be WML, HTML, HDML, XHTML Mobile Profile,
etc. In addition, unlike a standard desktop web-channel, a
wireless-device channel will vary on screen size, ability to support
client side scripting, ability to support various image formats, and
even color. Because the markup is generally sent directly to the phone,
there is no opportunity for a central server to "fix" or adapt to
browser limitations or defects. Software updates for mobile browsers are
rare.
Solution approaches
There have been several approaches to this problem, including
developing very primitive content and hoping it works on a variety of
devices, limiting support to a small subset of devices or bypassing the
browser solution altogether and developing a Java ME or BREW client application.
WURFL solves this by allowing development of content pages using
abstractions of page elements (buttons, links and textboxes for
example). At run time, these are converted to the appropriate, specific
markup types for each device. In addition, the developer can specify
other content decisions be made at runtime based on device specific
capabilities and features (which are all in the WURFL). The WURFL contains over 500 capabilities for each device, that are
broken up into 30 groups. A complete listing of available capabilities
is available from the WURFL documentation page. There is an online WURFL test site called Tera-WURFL Explorer
that allows one to look up the capabilities of devices based on their
user agents and browse through the devices in the current WURFL file.
WURFL Cloud
In March 2012, ScientiaMobile has announced the launch of the WURFL Cloud .
While the WURFL Cloud is a paid service, a free offer is made available
to hobbyists and micro-companies for use on mobile sites with limited
traffic. With the popularity of mobile devices, content providers need to identify those devices and their capabilities.
Developers can retrieve a list of device capabilities by accessing a Device Description Repository (DDR). WURFL, a popular
open-source DDR, has addressed the problem for over 10 years. ScientiaMobile, founded by the WURFL team, offers a DDR
solution which addresses the most disparate needs, from large enterprise installation with strict performance and
reliability requirements, to regular companies who need a simple inexpensive solution, to non-profit organizations who do
not have a budget for a commercial DDR.
The ScientiaMobile WURFL Cloud offering presents a variety of plans
for customers, ranging from small hobbyist sites to large enterprise
installations. Customers can query the WURFL device detection repository
in real time to get the latest device data.
Device detection can be set up in minutes by any averagely skilled programmer in one of the supported platforms.
Standalone solutions offer companies blazingly fast device detection solutions installed and accessed locally
on your own environment.
- Install locally on your host
- Periodic updates
- Use without AGPL restrictions
- APIs
- Full source code
WURFL cloud service provides a continually updated DDR without the
hassle of installation at a fraction of the cost.
The WURFL Cloud Service is a highly-available installation of the WURFL
Device Database which allows companies to query updated WURFL mobile
device information in real time.
Regular APIs require that developers or system administrators
periodically download and deploy a newer wurfl.xml file, to enrich the
DDR with the device profiles of recently-released devices.
- Continually updated
- High availability
- Managed Service
- Ease of use
- Monthly rates
Who can use the WURFL Cloud?
WURFL Cloud is open to companies of all sizes, though no OEM clients
or software as a service companies (SaaS) can use the WURFL Cloud client
to serve their customers.
Right now PHP 5.1+, Java 1.5+ and ASP.NET 4.0 are officially supported.
ScientiaMobile has developed, but not yet officially released, a Ruby,
Python and ASP.NET 2.0 version of the Cloud Clients. In addition to
this, at least one premium customer has been allowed to 'speak JSON' to
the Cloud directly.
Developers can contact ScientiaMobile and request access to pre-release
versions of those clients.
How users sign up for the WURFL Cloud?