Comprehensive browser detection

Ask... and you may receive!
patrick.m
Posts: 3
Joined: Tue Dec 20, 2011 3:11 pm

Comprehensive browser detection

Postby patrick.m » Tue Dec 20, 2011 3:34 pm

Hello,

I am investigating use of Tera-WURFL PHP api as a comprehensive browser detection solution. I am very impressed with the range of features and mobile devices that are stored and the data that can be parsed back. So impressed that I find it rather absurd that there isn't a single mote about desktop browser capabilities. I have used the latest web browser patch, verified that it is updating the database correctly. But this apparently only provides a 'conclusive match' for an otherwise undetected desktop browser UA string.

I would like to acquire a commercial license and use Tera-WURFL to detect browsers, versions, operating systems and such and store them to track what our customer base is using to view which products and link it to other usage statistics. We have the budget for the licenses, and my understanding of the xml schema so far leads me to believe we could maintain our own patch of the desktop browsers we are interested in. But having to devote ongoing developer resources to the maintenance of this file seems like a deal breaker. At the very least, I would expect the desktop browsers (Firefox, IE, Chrome, Opera, Safari and Konqueror at the least -- also, these are the browsers currently included with the generic match web_browsers_patch.xml) to have the following data parse about them:
  • Intelligible unique identifier
  • Actual user agent string (instead of DO_NOT_MATCH
  • A clear indication that they are not a mobile browser (e.g. 'product_info' => 'mobile_browser' => false)
  • Device OS (e.g. Windows, Linux etc.)
  • OS version number (e.g. NT 6.1: WOW64 (Win7 64bit))
  • Browser family (possibly stored in 'brand_name' or ' model_name'
  • Browser version number ('mobile_browser_version' seems like the best matched place in the current return schema, but a misnomer)
  • Release date would be nice to have
  • Information on the rest of the browser information would be nice to have as well (javascript, image formats, bugs etc.)
I would really like to use the WURFL project for this. But without at least basic detection of desktop browser version and OS, I won't be able to move forward. Is there someone maintaining a patch file with this information in it? Is there any other way to get WURFL to work for my requirements short of maintaining my own patch xml on top of the licensing fees and WURFL xml and api updates? Do the commercial repository licenses (FAQ reference) include some of this information?

Thank you.

kamermans
Posts: 393
Joined: Mon Jun 06, 2011 9:50 am

Re: Comprehensive browser detection

Postby kamermans » Tue Dec 20, 2011 6:58 pm

[Admin's update: API 1.5 introduced Virtual Capabilities. Please also check information available http://www.scientiamobile.com/page/virt ... fl-api-1-5]

Hi Patrick,

Thanks for the thorough explanation of your request! Historically, WURFL has been about accurately determining mobile device capabilities, without a focus on desktop web browsers. Since the creation of ScientiaMobile, however, we are pushing hard to detect anything that communicates via HTTP, to include desktop web browsers, smart TVs, game consoles and the like.

In the Database API (aka Tera-WURFL), there is a configuration option called SIMPLE_DESKTOP_ENGINE_ENABLE, which defaults to true. When enabled, once the API realizes the device is a desktop web browser, all attempts to match more accurately are abandoned and a generic web browser match is returned. This is intended to provide very high performance detection of desktop vs. mobile, since most customers do not care what desktop browser is in use; that said, in your environment, you should disable this option so desktop devices are matched properly.

We are also releasing a update to all of our APIs within the next few weeks that will increase the performance and accuracy of desktop browser detection.

With regards to desktop browser capabilities, we currently only maintain a few capabilities for desktop browsers. While we're not planning on adding any desktop-specific capabilities, it would not take much effort for us to maintain a few, like release_date and device_os. In order to determine if the device is a desktop web browser you can check if is_wireless_device, is_tablet and is_smarttv are false.
Thanks,

Steve Kamerman
ScientiaMobile

Make sure you check out our WURFL Cloud, WURFL InSight and WURFL InFuze products!

patrick.m
Posts: 3
Joined: Tue Dec 20, 2011 3:11 pm

Re: Comprehensive browser detection

Postby patrick.m » Wed Dec 21, 2011 12:58 pm

Slightly embarrassed I missed that config switch. I was fairly certain I had given those files a close reading. I would suggest an FAQ entry about desktop browsers, but if I'm actually the first to ask it, it's not exactly frequent, is it?

That does indeed get some useful information for my desktop browsers. It correctly matches the brand of chrome, firefox and internet explorer. But the version numbering is off. IE is correctly matched as 9.0, Firefox matched as 3.0 (but it should be 3.6.24, it's in the UA string) and chrome gives a blank version number, even though the latest patch xml has strings for 19 and 20. I would really like for the response to include an indication of the platform, but that might be able to be worked around.

Do you have a wiki page or timeline for the API update you mentioned? I'm very interested in where the API's are heading, especially the merging of the Database and PHP APIs you mentioned in the other reply.

Thanks very much for the response.

sm_support2
Posts: 294
Joined: Mon Jun 20, 2011 5:04 pm

Re: Comprehensive browser detection

Postby sm_support2 » Fri Nov 07, 2014 4:10 pm

UPDATE: this is an old post. Since WURFL users who look for information on how to better detect Desktop web browsers may be directed here by search engines, it is worth bringing to people attention that API 1.5 introduced a significant enhancements thanks to Virtual Capabilites. More info here:

http://www.scientiamobile.com/page/virt ... fl-api-1-5

The 4 virtual capabilities involved relevant to this thread are:

Code: Select all

advertised_device_os
[/b]

Returns the operating system name of the requesting device. This works for mobile and desktop devices. (ex: “Windows”, “Mac OS X”)

Code: Select all

advertised_device_os_version
[/b]

Returns the operating system version of the requesting device. This works for mobile and desktop devices. (ex: “XP”, “10.2.1″)

Code: Select all

advertised_browser
[/b]

Returns the browser name of the requesting device. This works for mobile and desktop devices. (ex: “Internet Explorer”, “Chrome”)


Code: Select all

advertised_browser_version
[/b]

Returns the browser version of the requesting device. This works for mobile and desktop devices.

waleeed
Posts: 1
Joined: Thu Feb 18, 2016 3:43 am

Re: Comprehensive browser detection

Postby waleeed » Thu Feb 18, 2016 3:45 am

I would really like to use the WURFL project for this. But without at least basic detection of desktop browser version and OS, I won't be able to move forward. Is there someone maintaining a patch file with this information in it? Is there any other way to get WURFL to work for my requirements short of maintaining my own patch xml on top of the licensing fees and WURFL xml and api updates? Do the commercial repository licenses (FAQ reference) include some of this information?

aaronp
Posts: 244
Joined: Wed Dec 09, 2015 12:39 pm

Re: Comprehensive browser detection

Postby aaronp » Thu Feb 18, 2016 11:58 am

Hi Waleed,

You will not need to maintain your own patch file as the virtual capabilities listed below will suit your requirements.

Code: Select all

advertised_browser 
This virtual capability will infer the name of the browser based on user-agent string analysis (and possibly the analysis of other HTTP headers and WURFL capabilities).

Code: Select all

advertised_browser_version
This virtual capability will infer the name of the browser based on user-agent string analysis (and possibly the analysis of other HTTP headers and WURFL capabilities).

Code: Select all

advertised_device_os 
This virtual capability will infer the name of the Device OS based on user-agent string analysis (and possibly the analysis of other HTTP headers and WURFL capabilities).
advertised_device_os_version

Code: Select all

advertised_device_os_version 
This virtual capability will infer the name of the Device OS Version based on user-agent string analysis (and possibly the analysis of other HTTP headers and WURFL capabilities).

For a full list of all the virtual/capabilities, please follow this link: http://scientiamobile.com/wurflCapability.

Let me know if you have any other questions or concerns.

Thanks,

Aaron


Who is online

Users browsing this forum: Google [Bot] and 11 guests