Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: IDL no longer collapses, reformatted page
Panel
borderColor#3D3D3D
bgColor#F4F4F4
titleColor#3D3D3D
borderWidth0
titleBGColor#3D3D3D
borderStylesolid

ON THIS PAGE

Table of Contents
indent20px

The storageinfo object provides information about a storage device connected to the player. To retrieve information about the filesystem on the device, use the filesystem object.

Code Block
languagejs
titlestorageinfo IDL

...

[
    constructor(String path, String type)
] interface StorageInfo {
    Promise<Number> getDeviceSize();
    Promise<StorageDeviceInfo> getDeviceInfo();
    Promise<StorageDeviceHealth> getDeviceHealth();
};
 
interface StorageDeviceInfo {
    attribute String type;
    attribute Number size;
    [type == "SD"] attribute SDDeviceInfo sd;
    [type == "SATA"] attribute SATADeviceInfo sata;
};
 
interface SDDeviceInfo {
    attribute String productName;
    attribute String oemID;
    attribute String auSize;             //@Optional
    attribute String productRev;
    attribute String mfrDate;            //@Optional
    attribute String serial;             //@Optional
    attribute String signalVoltage;
    attribute String uhsMode;
    attribute Number specVersion;
    attribute String speedClass;         //@Optional
    attribute Number mfrID;
};
 
interface StorageDeviceHealth {
    attribute int percentageHealthUsed;
};
 
interface SATADeviceInfo {
    attribute String sataModel;
    attribute String sataVendor;
};



Panel
borderColor#3D3D3D
bgColor#F4F4F4
titleColor#3D3D3D
borderWidth0
titleBGColor#3D3D3D
borderStylesolid

ON THIS PAGE

Table of Contents
indent20px


Object Creation 
Anchor
object_creation
object_creation

To create an storageinfo object, first load the brightsign/storageinfo module using the require() method. Then create an instance of the storageinfo class with a string value specifying the storage path.

Code Block
languagejs
var StorageInfoClass = require("@brightsign/storageinfo");
var storageInfo = new StorageInfoClass("/storage/sd");

Use the following string values to specify different storage drives:

  • "/storage/usb1" – The drive for USB storage devices connected to the player
  • "/storage/sd" – The primary SD or microSD drive on the player.
  • "/storage/sd2" – The internal microSD drive on the player (4Kx42, XDx32 models only)
  • "/storage/ssd" – The internal SSD on the player (XTx44, XTx43, XDx34, and XDx33 models only)

StorageInfo

Use this interface to retrieve information about the storage device.

getDeviceSize()
Code Block
languagejs
Promise <Number> getDeviceSize

Returns the total size of the storage device (in bytes).

Note

The size returned by this method uses a different tool from the size parameter in the StorageDeviceInfo interface. The values returned using the two processes will be approximately, but not exactly, the same.

getDeviceInfo()
Code Block
languagejs
Promise <StorageDeviceInfo> getDeviceInfo()

Returns a StorageDeviceInfo  interface containing manufacturer information about the storage device.

getDeviceHealth()
Code Block
languagejs
Promise<StorageDeviceHealth> getDeviceHealth()

Returns a "card wear" indication in the form of a percentage. This value is approximate and is provided to assist in scheduling proactive replacements to avoid in-field failures. Once this value reaches 100, the card is life expired and further attempts to write to the card may fail. This feature is only supported on certain industrial-type cards such as the Micron and Sandisk cards supplied by BrightSign.

StorageDeviceInfo

This interface contains manufacturer information about the storage device. Any of the below parameters may be absent from the interface depending on the device type and the information returned by the device:

  • [String] type: Returns a string describing the type of filesystem used on the specified storage.
  • [Number] size: The total size of the storage device (in bytes)
  • [type == "SD"] SDDeviceInfo sd: Returns details about the SD card hardware.
  • [type == "SATA"] SATADeviceInfo sata: Returns details about the Serial ATA (SATA) interface.

SDDeviceInfo

  • [String] productName: The product name, as assigned by the device manufacturer (5 bytes for SD, 6 bytes for MMC)
  • [String] oemID: The two-character card OEM identifier as assigned by the SD Card Association
  • [number] [optional] auSize: The size of the SD AU in bytes
  • [String] productRev: The product revision assigned by the device manufacturer
  • [String] [optional] mfrDate: The manufacture date reported by the storage device
  • [String] [optional] serial: The serial number of the storage device
  • [String] signalVoltage: The signal voltage reported by the SD card
  • [String] uhsMode: The UHS mode (i.e. BUS speed) reported by the SD card
  • [Number] specVersion: The version of SD spec to which the card conforms
  • [String] [optional] speedClass: The speed class (if any) declared by the SD card
  • [Number] mfrID: The card manufacturer ID as assigned by the SD Card Association

StorageDeviceHealth

  • [int] percentageHealthUsed: Returns an integer that indicates the "wear percentage" of disk health used, on Micron and SanDisk storage cards that support this feature.

SATADeviceInfo

  • [String] sataModel: The SATA model reported by the device
  • [String] sataVendor: The SATA vendor reported by the device

Example

Code Block
languagejs
var storageClass = require("@brightsign/storageinfo");
var storage = new storageClass("/storage/usb1");


storage.getDeviceSize().then(
        function(data) {
            console.log(JSON.stringify(data));
        })
    .catch(
        function(data) {
            console.log(JSON.stringify(data));
        });

storage.getDeviceInfo().then(
        function(data) {
            console.log(JSON.stringify(data));
        })
    .catch(
        function(data) {
            console.log(JSON.stringify(data));
        });