A simple, free-to-use Device, OS and Browser detection library
The Whatami library
You are welcome to use our easy-to-use free client-side device detection library, maintained by SkyDancer, our Artificial intelligence solution, in your web projects. Use a simple JavaScript include to get device, OS and browser information available from within your JavaScript code. The information becomes available as an object in your code.
You can use this library to add specific handling for certain handsets or devices, alternatively report back information to your backend regarding your customers device usage.
We do not expect to charge money for usage of the library.
Please contact us at info@ethertech.com if you need assistance with integrating the library into your application.
Library Usage
<script src="http://whatami.ethertech.com/whatami.js"></script>
Detectable devices
Most Android, iOS, and Windows phone models, including but not limited to:
- Samsung devices
- Apple devices
- HTC devices
- Sony/Sony Ericsson devices
- Motorola devices
- LG devices
- Sony devices
- Huawei devices
- Lenovo devices
- Nokia devices
- Blackberry devices
- Console devices
All the latest devices + thousands of individual devices, operating systems, browsers, bots...
The following operating systems are detectable:
- Windows
- Windows Mobile
- Android
- iOS
- Linux
- Chromium
- + more
The following browsers are detectable:
- Chrome
- Firefox
- Internet Explorer
- Safari
- Opera
- UC Browser
- Silk
- + more browsers
The following type of devices/agents are detectable:
- Computers
- Smartphones
- Tablets
- Phablets
- Smart TVs
- Consoles
- Bots
To use the library, include the JavaScript library in your HTML. As you can see, it is really that easy! From your JavaScript code, you can get information about the device on which your webpage is displayed, by accessing the deviceinfo object.
Documentation
The returned information in JSON format pertaining to the device details are returned as described in the table below.
Member Name | Description | Possible values |
deviceType | Type of device | "Smartphone", "Tablet", "Phablet", "Smart TV", "Console" etc. |
deviceName | Brand name of device | Any brand name such as "Nexus 7", "Galaxy S4" etc. |
deviceManufacturer | Manufacturer(Company name) of the device | "Samsung", "Apple", "Huawei", "HTC" etc. |
osName | Name of Operating System | "Android", "iOS", "Windows NT", "Linux", "Macintosh" etc. |
osRealName | Brand name of Operating System | "Windows XP", "Windows 7", "El Capitan" etc. |
osVersion | Version of Operating System, most commonly used in conjunction with osName | "4.3", "8.0", "6.1" etc. |
osManufacturer | Manufacturer(Company name) of the Operating System | "Google", "Apple", "Microsoft" etc. |
browserName | Brand name of detected browser | "Chrome", "Firefox", "Internet Explorer", "Safari" etc. |
browserVersion | Version of detected browser | "29.0.1547.72", "46.0.2490.86" etc. |
browserEngine | Brand name of detected browser rendering engine | "Webkit", "Presto", "Gecko", "Trident" etc. |
browserEngineVersion | Version of detected browser rendering engine | "537.36", "537.17", "20100101" etc. |
browserManufacturer | Manufacturer(Company name) of the browser | "Google", "Apple", "Microsoft" etc. |
mozillaVersion | Browser supported Mozilla version | "Mozilla/4.0", "Mozilla/5.0" etc. |
dbVersion | Version of database used for lookup, usually indicating the date on which it was updated. | "20151101", "20151201" |
isBot | Indicates whether the user agent pertains to a bot (true) or not (false) | true, false |
A simple code example:
<!DOCTYPE html>
<html>
<head>
<script type="text/javascript" src="http://whatami.ethertech.com/whatami.js"></script>
<script type="text/javascript" >
console.log(deviceinfo);
</script>
</head>
<body>
</body>
</html>
Example Output on desktop:
var deviceinfo = {
"deviceType":"Computer",
"deviceName":"PC",
"osManufacturer":"Microsoft",
"browserManufacturer":"Google",
"deviceManufacturer":"Unknown",
"osname":"Windows NT",
"osrealname":"Windows 7",
"osversion":"6.1",
"browserName":"Chrome",
"browserVersion":"46.0.2490.71",
"browserEngine":"Blink",
"browserEngineVersion":"537.36",
"mozillaVersion":"Mozilla/5.0",
"dbVersion":"20170101",
"isBot":false
}
Example Output on Mobile:
var deviceinfo = {
"deviceType":"Smartphone",
"deviceName":"iPhone",
"osManufacturer":"Apple",
"browserManufacturer":"Apple",
"deviceManufacturer":"Apple",
"osname":"iOS",
"osrealname":"iOS",
"osversion":"OS 8_0",
"browserName":"Safari",
"browserVersion":"8.0",
"browserEngine":"Webkit",
"browserEngineVersion":"600.1.3",
"mozillaVersion":"Mozilla/5.0",
"dbVersion":"20170101",
"isBot":false
}
Please let us know what you think about the service. E-mail your thoughts or questions to info@ethertech.com.
|