Smart TV
API References
Web API References
Samsung Product API References
ProductInfo API
To use Samsung Product API,
<script type="text/javascript" src="$WEBAPIS/webapis/webapis.js"></script>
Should be loaded in index.html
This module defines the product information functionalities provided by the Tizen Samsung Product API.
Since : 2.3
Product : TV, AV, B2B
Privilege Level : Public
Privilege : http://developer.samsung.com/privilege/productinfo
Summary of Interfaces and Methods
1. Interfaces
1.1 ProductInfoManagerObject
Defines a WebApi object instance of the Tizen Samsung Product API.
The webapis.productinfo object enables access to ProductInfo API functionality.
[NoInterfaceObject] interface ProductInfoManagerObject {
readonly attribute ProductInfoManager productinfo;
};
WebApi implements ProductInfoManagerObject;
Attributes
1.2 ProductInfoManager
Provides methods for ProductInfo functionalities.
[NoInterfaceObject] interface ProductInfoManager {
attribute ProductInfoConfigKey ProductInfoConfigKey;
attribute ProductInfoNoGlass3dSupport ProductInfoNoGlass3dSupport;
attribute ProductInfoSiServerType ProductInfoSiServerType;
DOMString getVersion();
DOMString getFirmware();
DOMString getDuid();
DOMString getModelCode();
DOMString getModel();
ProductInfoSiServerType getSmartTVServerType();
DOMString getSmartTVServerVersion();
boolean isUdPanelSupported();
boolean is8KPanelSupported();
DOMString getRealModel();
boolean isWallModel();
DOMString getLocalSet();
Any getSystemConfig(ProductInfoConfigKey key);
void setSystemConfig(ProductInfoConfigKey key, DOMString value, optional SuccessCallback? onsuccess, optional ErrorCallback? onerror);
unsigned long addSystemConfigChangeListener(ProductInfoConfigKey key, ProductInfoConfigChangeCallback listener);
void removeSystemConfigChangeListener(unsigned long listenerId);
boolean isUHDAModel();
boolean isDisplayRotatorSupported();
DOMString getLicensedVendor();
boolean isOledPanelSupported();
};
Attributes
Methods
getVersion
Retrieves the plugin version number.
DOMString getVersion();
Product : TV, AV, B2B
Privilege Level : Public
Privilege : http://developer.samsung.com/privilege/productinfo
Return Value :
DOMString : Plugin version
Exceptions :
WebAPIException
with error type SecurityError, if the application does not have the privilege to call this method.
Since : 2.3
Code Example :
try {
var value = webapis.productinfo.getVersion();
console.log(" version value = " + value);
} catch (error) {
console.log(" error code = " + error.code);
}
getFirmware
Retrieves the firmware information.
DOMString getFirmware();
Product : TV, AV, B2B
Privilege Level : Public
Privilege : http://developer.samsung.com/privilege/productinfo
Return Value :
DOMString : Firmware version
Exceptions :
WebAPIException
with error type SecurityError, if the application does not have the privilege to call this method.
Since : 2.3
Code Example :
try {
var value = webapis.productinfo.getFirmware();
console.log(" Firmware value = " + value);
} catch (error) {
console.log(" error code = " + error.code);
}
getDuid
Retrieves the DUID from Support > About TV > Unique ID
DOMString getDuid();
Product : TV, AV, B2B
Privilege Level : Public
Privilege : http://developer.samsung.com/privilege/productinfo
Return Value :
Exceptions :
WebAPIException
with error type SecurityError, if the application does not have the privilege to call this method.
Since : 2.3
Code Example :
try {
var value = webapis.productinfo.getDuid();
console.log(" Duid value = " + value);
} catch (error) {
console.log(" error code = " + error.code);
}
getModelCode
Retrieves the model code, such as "15_HAWKP".
DOMString getModelCode();
Product : TV, AV, B2B
Privilege Level : Public
Privilege : http://developer.samsung.com/privilege/productinfo
Return Value :
Exceptions :
WebAPIException
with error type SecurityError, if the application does not have the privilege to call this method.
Since : 2.3
Code Example :
try {
var value = webapis.productinfo.getModelCode();
console.log(" ModelCode value = " + value);
} catch (error) {
console.log(" error code = " + error.code);
}
getModel
Retrieves the model name, such as "UJS9500".
DOMString getModel();
Product : TV, AV, B2B
Privilege Level : Public
Privilege : http://developer.samsung.com/privilege/productinfo
Return Value :
Exceptions :
WebAPIException
with error type SecurityError, if the application does not have the privilege to call this method.
Since : 2.3
Code Example :
try {
var value = webapis.productinfo.getModel();
console.log(" Model value = " + value);
} catch (error) {
console.log(" error code = " + error.code);
}
getSmartTVServerType
Retrieves the infolink server type.
ProductInfoSiServerType getSmartTVServerType();
Product : TV, AV, B2B
Privilege Level : Public
Privilege : http://developer.samsung.com/privilege/productinfo
Return Value :
Exceptions :
WebAPIException
with error type SecurityError, if the application does not have the privilege to call this method.
Since : 2.3
Code Example :
try {
var value = webapis.productinfo.getSmartTVServerType();
console.log(" smart tv server type = " + value);
} catch (error) {
console.log(" error code = " + error.code);
}
getSmartTVServerVersion
Retrieves the infolink server version, such as "T-INFOLINK2014-1002".
DOMString getSmartTVServerVersion();
Product : TV, AV, B2B
Privilege Level : Public
Privilege : http://developer.samsung.com/privilege/productinfo
Return Value :
DOMString : Infolink server version
Exceptions :
WebAPIException
with error type SecurityError, if the application does not have the privilege to call this method.
Since : 2.3
Code Example :
try {
var value = webapis.productinfo.getSmartTVServerVersion();
console.log(" smart tv server version = " + value);
} catch (error) {
console.log(" error code = " + error.code);
}
isUdPanelSupported
Checks whether UdPanel is supported.
boolean isUdPanelSupported();
Product : TV, AV, B2B
Privilege Level : Public
Privilege : http://developer.samsung.com/privilege/productinfo
Return Value :
boolean : Boolean value:
true: Supported
false: Not supported
Exceptions :
WebAPIException
with error type SecurityError, if the application does not have the privilege to call this method.
Since : 2.3
Code Example :
try {
var value = webapis.productinfo.isUdPanelSupported();
console.log(" support = " + value);
} catch (error) {
console.log(" error code = " + error.code);
}
is8KPanelSupported
Checks whether 8K panel is supported.
boolean is8KPanelSupported();
Product : TV, AV, B2B
Privilege Level : Public
Privilege : http://developer.samsung.com/privilege/productinfo
Return Value :
boolean : Boolean value:
true: Supported
false: Not supported
Exceptions :
WebAPIException
with error type SecurityError, if the application does not have the privilege to call this method.
Since : 4.0
Code Example :
try {
var value = webapis.productinfo.is8KPanelSupported();
console.log(" support = " + value);
} catch (error) {
console.log(" error code = " + error.code);
}
getRealModel
Retrieves the full model name, such as UN65JS9500.
DOMString getRealModel();
Product : TV, AV, B2B
Privilege Level : Public
Privilege : http://developer.samsung.com/privilege/productinfo
Return Value :
Exceptions :
WebAPIException
with error type SecurityError, if the application does not have the privilege to call this method.
Since : 2.3
Code Example :
try {
var value = webapis.productinfo.getRealModel();
console.log(" ModelName value = " + value);
} catch (error) {
console.log(" error code = " + error.code);
}
isWallModel
Checks whether the product model is WALL.
boolean isWallModel();
Product : TV, B2B
Privilege Level : Public
Privilege : http://developer.samsung.com/privilege/productinfo
Return Value :
boolean : Boolean value:
true: Wall Model
false: Not Wall Model
Exceptions :
WebAPIException
with error type SecurityError, if the application does not have the privilege to call this method.
Since : 5.0
Code Example :
try {
var value = webapis.productinfo.isWallModel();
console.log(value);
} catch (error) {
console.log(" error code = " + error.code);
}
getLocalSet
Retrieves the local set information that is set in the device.
DOMString getLocalSet();
Product : TV, AV, B2B
Privilege Level : Public
Privilege : http://developer.samsung.com/privilege/productinfo
Return Value :
DOMString : LocalSet value
Exceptions :
WebAPIException
with error type SecurityError, if the application does not have the privilege to call this method.
Since : 2.3
Code Example :
try {
var value = webapis.productinfo.getLocalSet();
console.log(" LocalSet value = " + value);
} catch (error) {
console.log(" error code = " + error.code);
}
getSystemConfig
Retrieves the value for the specified system configuration key, such as service country code.
Any getSystemConfig(ProductInfoConfigKey key);
Product : TV, AV, B2B
Privilege Level : Public
Privilege : http://developer.samsung.com/privilege/productinfo
Parameters :
key : Product info configuration key
Return Value :
Any : System configuration value. Only for CONFIG_KEY_AOT_SUPPORT key the return type is boolean, the return type for other case is DOMString.
Exceptions :
WebAPIException
with error type TypeMismatchError, if an input parameter is not compatible with its expected type.
with error type InvalidValuesError, if any of the input parameters contain an invalid value. (Since plugin version 3.0)
with error type SecurityError, if the application does not have the privilege to call this method.
Since : 2.3
Code Example :
try {
var value = webapis.productinfo.getSystemConfig(webapis.productinfo.ProductInfoConfigKey.CONFIG_KEY_DATA_SERVICE);
console.log("SystemConfig value = " + value);
} catch (error) {
console.log(" error code = " + error.code);
}
setSystemConfig
Sets the value for the specified system configuration key.
void setSystemConfig(ProductInfoConfigKey key, DOMString value, optional SuccessCallback? onsuccess, optional ErrorCallback? onerror);
Product : TV, AV, B2B
Privilege Level : Public
Privilege : http://developer.samsung.com/privilege/productinfo
Parameters :
key : Product info configuration key
value : Value to set
onsuccess [optional][nullable] : Callback method to invoke when the system configuration key value is successfully set
onerror [optional][nullable] : Callback method to invoke if an error has occurred
SecurityError, if the application does not have the privilege to call this method.
Exceptions :
WebAPIException
with error type TypeMismatchError, if an input parameter is not compatible with its expected type.
with error type InvalidValuesError, if any of the input parameters contain an invalid value.
If only setSystemConfig can set CONFIG_KEY_DATA_SERVICE or CONFIG_KEY_ACTIVE_CATEGORY (Since plugin version 3.0)
with error type NotSupportedError, if 'CONFIG_KEY_SERVICE_COUNTRY' is readonly (Deprecated since plugin version 3.0)
with error type NotSupportedError, if 'CONFIG_KEY_SHOPLOGO' is readonly (Deprecated since plugin version 3.0)
Since : 2.3
Code Example :
function onsuccess(data) {
console.log("SystemConfig data = " + data);
}
function onerror(error) {
console.log("error code : " + error.code);
}
try {
webapis.productinfo.setSystemConfig(webapis.productinfo.ProductInfoConfigKey.CONFIG_KEY_DATA_SERVICE, value, onsuccess, onerror);
} catch (error) {
console.log(" error code = " + error.code);
}
addSystemConfigChangeListener
Registers a system configuration change listener.
unsigned long addSystemConfigChangeListener(ProductInfoConfigKey key, ProductInfoConfigChangeCallback listener);
Product : TV, AV, B2B
Privilege Level : Public
Privilege : http://developer.samsung.com/privilege/productinfo
Parameters :
key : Productinfo configuration key
listener : ProductInfoConfigChangeCallback listener
Return Value :
unsigned long : Listener ID
Exceptions :
WebAPIException
with error type TypeMismatchError, if an input parameter is not compatible with its expected type.
with error type InvalidValuesError, if any of the input parameters contain an invalid or unchangeable value. (Since plugin version 3.0)
with error type SecurityError, if the application does not have the privilege to call this method.
Since : 2.3
Code Example :
try {
var value = webapis.productinfo.addSystemConfigChangeListener(webapis.productinfo.ProductInfoConfigKey.CONFIG_KEY_DATA_SERVICE, listener);
console.log(" add Listener value = " + value);
} catch (error) {
console.log(" error code = " + error.code);
}
removeSystemConfigChangeListener
Unregisters a system configuration change listener.
void removeSystemConfigChangeListener(unsigned long listenerId);
Product : TV, AV, B2B
Privilege Level : Public
Privilege : http://developer.samsung.com/privilege/productinfo
Parameters :
listenerId : ProductInfoConfigChangeCallback ID
Exceptions :
WebAPIException
with error type TypeMismatchError, if an input parameter is not compatible with its expected type.
with error type InvalidValuesError, if any of the input parameters contain an invalid value. (Since plugin version 3.0)
with error type SecurityError, if the application does not have the privilege to call this method.
Since : 2.3
Code Example :
try {
webapis.productinfo.removeSystemConfigChangeListener(listenerId);
console.log(" removedListener value ");
} catch (error) {
console.log(" error code = " + error.code);
}
isUHDAModel
Checks whether the device supports Ultra HD Premium features.
boolean isUHDAModel();
Product : TV, AV, B2B
Privilege Level : Public
Privilege : http://developer.samsung.com/privilege/productinfo
Return Value :
boolean : Boolean value:
true: Supported
false: Not supported
Exceptions :
WebAPIException
with error type SecurityError, if the application does not have the privilege to call this method.
Since : 3.0
Code Example :
try {
var value = webapis.productinfo.isUHDAModel();
console.log(" support = " + value);
} catch (error) {
console.log(" error code = " + error.code);
}
isDisplayRotatorSupported
This method check whether display rotator is supported or not.
boolean isDisplayRotatorSupported();
Product : TV
Privilege : N
Return Value :
boolean : true if display rotator is supported, else false
Since : 5.5
Code Example :
var value = webapis.productinfo.isDisplayRotatorSupported();
console.log("display rotator is supported = " + value);
getLicensedVendor
This method get an actual manufacturer's information
DOMString getLicensedVendor();
Product : TV, B2B
Privilege Level : Public
Privilege : http://developer.samsung.com/privilege/productinfo
Return Value :
DOMString : Actual manufacturer information
Exceptions :
WebAPIException
with error type SecurityError, if the application does not have the privilege to call this method.
Since : 6.0
Code Example :
try {
var value = webapis.productinfo.getLicensedVendor();
console.log(" getLicensedVendor value = " + value);
} catch (error) {
console.log(" error code = " + error.code);
}
isOledPanelSupported
Checks whether OledPanel is supported.
boolean isOledPanelSupported();
Product : TV, B2B
Privilege Level : Public
Privilege : http://developer.samsung.com/privilege/productinfo
Return Value :
boolean : Boolean value:
true: Supported
false: Not supported
Exceptions :
WebAPIException
with error type SecurityError, if the application does not have the privilege to call this method.
Since : 8.0
Code Example :
try {
var value = webapis.productinfo.isOledPanelSupported();
console.log(" support = " + value);
} catch (error) {
console.log(" error code = " + error.code);
}
1.3 ProductInfoConfigChangeCallback
Defines the product info configuration change callback.
[Callback = FunctionOnly, NoInterfaceObject] interface ProductInfoConfigChangeCallback {
void onchange(ProductInfoConfigKey key);
};
Methods
onchange
Callback method for product info configuration changes.
void onchange(ProductInfoConfigKey key);
Product : TV, AV, B2B
Privilege Level : Public
Privilege : http://developer.samsung.com/privilege/productinfo
Parameters :
key : Key of each ProductInfo config
Since : 2.3
Code Example :
var onchange = function (key){
console.log(" changed key is = " + key);
}
1.4 ProductInfoConfigKey
Defines constants for product info configuration keys.
[NoInterfaceObject] interface ProductInfoConfigKey {
const unsigned long CONFIG_KEY_DATA_SERVICE = 0;
const unsigned long CONFIG_KEY_SERVICE_COUNTRY = 1;
};
Since : 2.3
Constants
CONFIG_KEY_DATA_SERVICE
Data service configuration, it can be setted as string ype with numbers
Since : 2.3
CONFIG_KEY_SERVICE_COUNTRY
Service country, readonly
Since : 2.3
1.5 ProductInfoNoGlass3dSupport
Defines constants for glasses-free 3D support.
[NoInterfaceObject] interface ProductInfoNoGlass3dSupport {
const unsigned long NO_GLASS_3D_NOT_SUPPORTED = 0;
const unsigned long NO_GLASS_3D_SUPPORTED = 1;
};
Since : 2.3
Constants
NO_GLASS_3D_NOT_SUPPORTED
Glasses-free 3D is not supported
Since : 2.3
NO_GLASS_3D_SUPPORTED
Glasses-free 3D is supported
Since : 2.3
1.6 ProductInfoSiServerType
Defines constants for infolink server types.
[NoInterfaceObject] interface ProductInfoSiServerType {
const unsigned long SI_TYPE_OPERATIING_SERVER = 0;
const unsigned long SI_TYPE_DEVELOPMENT_SERVER = 1;
const unsigned long SI_TYPE_DEVELOPING_SERVER = 2;
};
Since : 2.3
Constants
SI_TYPE_OPERATIING_SERVER
Operating
Since : 2.3
SI_TYPE_DEVELOPMENT_SERVER
Development
Since : 2.3
SI_TYPE_DEVELOPING_SERVER
Developing
Since : 2.3
2. Full WebIDL
module ProductInfo {
[NoInterfaceObject] interface ProductInfoManagerObject {
readonly attribute ProductInfoManager productinfo;
};
WebApi implements ProductInfoManagerObject;
[NoInterfaceObject] interface ProductInfoManager {
attribute ProductInfoConfigKey ProductInfoConfigKey;
attribute ProductInfoNoGlass3dSupport ProductInfoNoGlass3dSupport;
attribute ProductInfoSiServerType ProductInfoSiServerType;
DOMString getVersion();
DOMString getFirmware();
DOMString getDuid();
DOMString getModelCode();
DOMString getModel();
ProductInfoSiServerType getSmartTVServerType();
DOMString getSmartTVServerVersion();
boolean isUdPanelSupported();
boolean is8KPanelSupported();
DOMString getRealModel();
boolean isWallModel();
DOMString getLocalSet();
Any getSystemConfig(ProductInfoConfigKey key);
void setSystemConfig(ProductInfoConfigKey key, DOMString value, optional SuccessCallback? onsuccess, optional ErrorCallback? onerror);
unsigned long addSystemConfigChangeListener(ProductInfoConfigKey key, ProductInfoConfigChangeCallback listener);
void removeSystemConfigChangeListener(unsigned long listenerId);
boolean isUHDAModel();
boolean isDisplayRotatorSupported();
DOMString getLicensedVendor();
boolean isOledPanelSupported();
};
[Callback = FunctionOnly, NoInterfaceObject] interface ProductInfoConfigChangeCallback {
void onchange(ProductInfoConfigKey key);
};
[NoInterfaceObject] interface ProductInfoConfigKey {
const unsigned long CONFIG_KEY_DATA_SERVICE = 0;
const unsigned long CONFIG_KEY_SERVICE_COUNTRY = 1;
};
[NoInterfaceObject] interface ProductInfoNoGlass3dSupport {
const unsigned long NO_GLASS_3D_NOT_SUPPORTED = 0;
const unsigned long NO_GLASS_3D_SUPPORTED = 1;
};
[NoInterfaceObject] interface ProductInfoSiServerType {
const unsigned long SI_TYPE_OPERATIING_SERVER = 0;
const unsigned long SI_TYPE_DEVELOPMENT_SERVER = 1;
const unsigned long SI_TYPE_DEVELOPING_SERVER = 2;
};
};