Global variables and objects
Appearance
This page is related to JavaScript.
Introduction
The global variables and the global objects detailed below are particular to SpinetiX platform. They can be used within the JavaScript code (<script> elements, JS files) for different purposes, like:
- to display the device information on the screen;
- to change the content or behavior based on a global variable value – for instance when the device name is x, display image y;
- to access the web storage content.
For instance, the following widgets were build using the global variables:
Global variables
The following JavaScript global variables are available:
DEVICE_NAME- Contains the device name; it is set to "
[not defined]" in Elementi.
- Contains the device name; it is set to "
MULTI_SCREEN_ID- Contains the Multiscreen ID; it is set to "
fullscreen" in Elementi.
- Contains the Multiscreen ID; it is set to "
SERIAL_NUMBER- Contains the player serial number; it is set to "
[not defined]" in Elementi.
- Contains the player serial number; it is set to "
Here are some JavaScript examples, using the global variables:
document.getElementById("MySerialNumberTextBox").textContent = SERIAL_NUMBER;
var uri = document.getElementById( "rss_uri" ).textContent + DEVICE_NAME;
if ( MULTI_SCREEN_ID=='Tokio' ) {
// show one type of content
} else {
// Show another type of content
}
Global objects
The following JavaScript global objects are available:
deviceInfo- Object with extended information about the device. See
deviceInfoobject section below.
- Object with extended information about the device. See
document- An
SVGDocumentobject providing access to theSVGGlobalobject, to the root element from the DOM tree (document.documentElement) and to the document URI (document.documentURI).
- An
HID- Array of
HumanInterfaceDeviceobjects representing the interfaces exposed by all connected USB HID devices. See the USB I/O API page for more details.
- Array of
localStorage- Provides access to the
localStorageobject. See the Web Storage API page for more details.
- Provides access to the
navigator- Navigator object containing the following information:
userAgent: set to “SpinetiX”spxDocumentTime: the document rendering timespxWallClock: the date and time of the contentspxNetworkClock: the date and time of the device/PCspxCloudStage: the cloud stage (e.g., “prod”) corresponding to the player/ElementispxLicenseFeatures: object containing details about the software features activated by the current license/Feature SetspxAudioPlayer: object containing details about the embedded audio player
- Navigator object containing the following information:
sessionStorage- Provides access to the
sessionStorageobject. See the Web Storage API page for more details.
- Provides access to the
this- In the global execution context (outside any function),
thisrefers to the global object. See more aboutthiskeyword.
- In the global execution context (outside any function),
window- The
SVGGlobalobject containing all the global variables mentioned on this page. When the code is run in a browser, this object may have other properties as well - seeWindowobject for more details.
- The
deviceInfo object
Available since 3.0.0 release.
The deviceInfo is a global object with extended information about the player, or the computer running Elementi.
It contains the following properties:
deviceInfo.deviceName- Contains the device name; it is set to "
[not defined]" in Elementi. It is identical toDEVICE_NAMEglobal variable.
- Contains the device name; it is set to "
deviceInfo.deviceType- Contains the device hardware type, which could be one of the following:
- "
ikebana" for HMP300 and HMP350 - "
Sakura" for HMP200 - "
Bonsai" for HMP130 and HMP100 - "
windows" for Elementi.
- "
- Contains the device hardware type, which could be one of the following:
deviceInfo.firmwareVersion
deviceInfo.hostName- Contains the hostname of the player, respectively the PC name in Elementi.
deviceInfo.multiScreenId- Contains the Multiscreen ID; it is set to "
fullscreen" in Elementi. It is identical toMULTI_SCREEN_IDglobal variable.
- Contains the Multiscreen ID; it is set to "
deviceInfo.serialNumber- Contains the player serial number; it is set to "
[not defined]" in Elementi. It is identical toSERIAL_NUMBERglobal variable.
- Contains the player serial number; it is set to "
deviceInfo.getNetworkInterfaces()- Function that returns a map of all network interfaces and their addresses. The returned object has a property for each interface (e.g., "eth0", "eth1" etc.), which is an object with the following information:
running- Boolean set to true when the interface's link is running
type- Type of network interface, one of
ethernet,modem,wlanorwwan.
- Type of network interface, one of
physicalAddress- Physical address of the interface, typically a MAC address for the form xx:xx:xx:xx:xx:xx.
IPv4Addresses- Array of address objects listing all active IPv4 addresses on that interface. Each object has the following properties:
addressInterface addressnetmaskNetwork maskbroadcastBroadcast address (optional)destinationDestination address (only for modems)
- Array of address objects listing all active IPv4 addresses on that interface. Each object has the following properties:
IPv6Addresses- Array of address objects listing all active IPv6 addresses on that interface. Each object has the following properties:
addressInterface addressnetmaskNetwork mask
- Array of address objects listing all active IPv6 addresses on that interface. Each object has the following properties:
- Function that returns a map of all network interfaces and their addresses. The returned object has a property for each interface (e.g., "eth0", "eth1" etc.), which is an object with the following information: