Device

    Device


    Article summary


    title: Device

    version: 0.15.0
    layout: default
    sdk: core

    # Device Module

    Version Device 0.15.0

    Table of Contents

    Usage

    To use the Device module, you can import it into your project from the Firebolt SDK:

    import { Device } from '@firebolt-js/sdk'
    

    Overview

    A module for querying about the device and it's capabilities.

    Methods

    audio

    Get the supported audio profiles

    To get the value of audio call the method like this:

    function audio(): Promise<AudioProfiles>
    

    Promise resolution:

    AudioProfiles

    Capabilities:

    RoleCapability
    usesxrn:firebolt:capability:device:info

    Examples

    Getting the supported audio profiles

    JavaScript:

    import { Device } from '@firebolt-js/sdk'
    
    Device.audio()
        .then(supportedAudioProfiles => {
            console.log(supportedAudioProfiles)
        })
    

    Value of supportedAudioProfiles:

    {
    	"stereo": true,
    	"dolbyDigital5.1": true,
    	"dolbyDigital5.1+": true,
    	"dolbyAtmos": true
    }
    
    JSON-RPC:Request:
    {
    	"jsonrpc": "2.0",
    	"id": 1,
    	"method": "Device.audio",
    	"params": {}
    }
    

    Response:

    {
    	"jsonrpc": "2.0",
    	"id": 1,
    	"result": {
    		"stereo": true,
    		"dolbyDigital5.1": true,
    		"dolbyDigital5.1+": true,
    		"dolbyAtmos": true
    	}
    }
    

    To subscribe to notifications when the value changes, call the method like this:

    function audio(callback: (value) => AudioProfiles): Promise<number>
    

    Promise resolution:

    number
    

    Examples

    Getting the supported audio profiles

    JavaScript:

    import { Device } from '@firebolt-js/sdk'
    
    audio(value => {
      console.log(value)
    }).then(listenerId => {
      console.log(listenerId)
    })
    

    Value of supportedAudioProfiles:

    {
    	"stereo": true,
    	"dolbyDigital5.1": true,
    	"dolbyDigital5.1+": true,
    	"dolbyAtmos": true
    }
    
    JSON-RPC:Request:
    {
    	"jsonrpc": "2.0",
    	"id": 1,
    	"method": "Device.onAudioChanged",
    	"params": {
    		"listen": true
    	}
    }
    

    Response:

    {
    	"jsonrpc": "2.0",
    	"id": 1,
    	"result": {
    		"stereo": true,
    		"dolbyDigital5.1": true,
    		"dolbyDigital5.1+": true,
    		"dolbyAtmos": true
    	}
    }
    

    distributor

    Get the distributor ID for this device

    To get the value of distributor call the method like this:

    function distributor(): Promise<string>
    

    Promise resolution:

    string
    

    Capabilities:

    RoleCapability
    usesxrn:firebolt:capability:device:distributor

    Examples

    Getting the distributor ID

    JavaScript:

    import { Device } from '@firebolt-js/sdk'
    
    Device.distributor()
        .then(distributorId => {
            console.log(distributorId)
        })
    

    Value of distributorId:

    "Company"
    
    JSON-RPC:Request:
    {
    	"jsonrpc": "2.0",
    	"id": 1,
    	"method": "Device.distributor",
    	"params": {}
    }
    

    Response:

    {
    	"jsonrpc": "2.0",
    	"id": 1,
    	"result": "Company"
    }
    

    hdcp

    Get the supported HDCP profiles

    To get the value of hdcp call the method like this:

    function hdcp(): Promise<BooleanMap>
    

    Promise resolution:

    BooleanMap

    Capabilities:

    RoleCapability
    usesxrn:firebolt:capability:device:info

    Examples

    Getting the supported HDCP profiles

    JavaScript:

    import { Device } from '@firebolt-js/sdk'
    
    Device.hdcp()
        .then(supportedHdcpProfiles => {
            console.log(supportedHdcpProfiles)
        })
    

    Value of supportedHdcpProfiles:

    {
    	"hdcp1.4": true,
    	"hdcp2.2": true
    }
    
    JSON-RPC:Request:
    {
    	"jsonrpc": "2.0",
    	"id": 1,
    	"method": "Device.hdcp",
    	"params": {}
    }
    

    Response:

    {
    	"jsonrpc": "2.0",
    	"id": 1,
    	"result": {
    		"hdcp1.4": true,
    		"hdcp2.2": true
    	}
    }
    

    To subscribe to notifications when the value changes, call the method like this:

    function hdcp(callback: (value) => BooleanMap): Promise<number>
    

    Promise resolution:

    number
    

    Examples

    Getting the supported HDCP profiles

    JavaScript:

    import { Device } from '@firebolt-js/sdk'
    
    hdcp(value => {
      console.log(value)
    }).then(listenerId => {
      console.log(listenerId)
    })
    

    Value of supportedHdcpProfiles:

    {
    	"hdcp1.4": true,
    	"hdcp2.2": true
    }
    
    JSON-RPC:Request:
    {
    	"jsonrpc": "2.0",
    	"id": 1,
    	"method": "Device.onHdcpChanged",
    	"params": {
    		"listen": true
    	}
    }
    

    Response:

    {
    	"jsonrpc": "2.0",
    	"id": 1,
    	"result": {
    		"hdcp1.4": true,
    		"hdcp2.2": true
    	}
    }
    

    hdr

    Get the supported HDR profiles

    To get the value of hdr call the method like this:

    function hdr(): Promise<BooleanMap>
    

    Promise resolution:

    BooleanMap

    Capabilities:

    RoleCapability
    usesxrn:firebolt:capability:device:info

    Examples

    Getting the supported HDR profiles

    JavaScript:

    import { Device } from '@firebolt-js/sdk'
    
    Device.hdr()
        .then(supportedHdrProfiles => {
            console.log(supportedHdrProfiles)
        })
    

    Value of supportedHdrProfiles:

    {
    	"hdr10": true,
    	"hdr10Plus": true,
    	"dolbyVision": true,
    	"hlg": true
    }
    
    JSON-RPC:Request:
    {
    	"jsonrpc": "2.0",
    	"id": 1,
    	"method": "Device.hdr",
    	"params": {}
    }
    

    Response:

    {
    	"jsonrpc": "2.0",
    	"id": 1,
    	"result": {
    		"hdr10": true,
    		"hdr10Plus": true,
    		"dolbyVision": true,
    		"hlg": true
    	}
    }
    

    To subscribe to notifications when the value changes, call the method like this:

    function hdr(callback: (value) => BooleanMap): Promise<number>
    

    Promise resolution:

    number
    

    Examples

    Getting the supported HDR profiles

    JavaScript:

    import { Device } from '@firebolt-js/sdk'
    
    hdr(value => {
      console.log(value)
    }).then(listenerId => {
      console.log(listenerId)
    })
    

    Value of supportedHdrProfiles:

    {
    	"hdr10": true,
    	"hdr10Plus": true,
    	"dolbyVision": true,
    	"hlg": true
    }
    
    JSON-RPC:Request:
    {
    	"jsonrpc": "2.0",
    	"id": 1,
    	"method": "Device.onHdrChanged",
    	"params": {
    		"listen": true
    	}
    }
    

    Response:

    {
    	"jsonrpc": "2.0",
    	"id": 1,
    	"result": {
    		"hdr10": true,
    		"hdr10Plus": true,
    		"dolbyVision": true,
    		"hlg": true
    	}
    }
    

    id

    Get the platform back-office device identifier

    To get the value of id call the method like this:

    function id(): Promise<string>
    

    Promise resolution:

    string
    

    Capabilities:

    RoleCapability
    usesxrn:firebolt:capability:device:id

    Examples

    Default Example

    JavaScript:

    import { Device } from '@firebolt-js/sdk'
    
    Device.id()
        .then(id => {
            console.log(id)
        })
    

    Value of id:

    "123"
    
    JSON-RPC:Request:
    {
    	"jsonrpc": "2.0",
    	"id": 1,
    	"method": "Device.id",
    	"params": {}
    }
    

    Response:

    {
    	"jsonrpc": "2.0",
    	"id": 1,
    	"result": "123"
    }
    

    listen

    To listen to a specific event pass the event name as the first parameter:

    listen(event: string, callback: (data: any) => void): Promise<number>
    

    Parameters:

    ParamTypeRequiredSummary
    eventstringYesThe event to listen for, see Events.
    callbackfunctionYesA function that will be invoked when the event occurs.

    Promise resolution:

    TypeDescription
    numberListener ID to clear the callback method and stop receiving the event, e.g. Device.clear(id)

    Callback parameters:

    ParamTypeRequiredSummary
    dataanyYesThe event data, which depends on which event is firing, see Events.

    To listen to all events from this module pass only a callback, without specifying an event name:

    listen(callback: (event: string, data: any) => void): Promise<number>
    

    Parameters:

    ParamTypeRequiredSummary
    callbackfunctionYesA function that will be invoked when the event occurs. The event data depends on which event is firing, see Events.

    Callback parameters:

    ParamTypeRequiredSummary
    eventstringYesThe event that has occured listen for, see Events.
    dataanyYesThe event data, which depends on which event is firing, see Events.

    Promise resolution:

    TypeDescription
    numberListener ID to clear the callback method and stop receiving the event, e.g. Device.clear(id)

    See Listening for events for more information and examples.

    make

    Get the device make

    To get the value of make call the method like this:

    function make(): Promise<string>
    

    Promise resolution:

    string
    

    Capabilities:

    RoleCapability
    usesxrn:firebolt:capability:device:make

    Examples

    Getting the device make

    JavaScript:

    import { Device } from '@firebolt-js/sdk'
    
    Device.make()
        .then(make => {
            console.log(make)
        })
    

    Value of make:

    "Arris"
    
    JSON-RPC:Request:
    {
    	"jsonrpc": "2.0",
    	"id": 1,
    	"method": "Device.make",
    	"params": {}
    }
    

    Response:

    {
    	"jsonrpc": "2.0",
    	"id": 1,
    	"result": "Arris"
    }
    

    model

    Get the device model

    To get the value of model call the method like this:

    function model(): Promise<string>
    

    Promise resolution:

    string
    

    Capabilities:

    RoleCapability
    usesxrn:firebolt:capability:device:model

    Examples

    Getting the device model

    JavaScript:

    import { Device } from '@firebolt-js/sdk'
    
    Device.model()
        .then(model => {
            console.log(model)
        })
    

    Value of model:

    "xi6"
    
    JSON-RPC:Request:
    {
    	"jsonrpc": "2.0",
    	"id": 1,
    	"method": "Device.model",
    	"params": {}
    }
    

    Response:

    {
    	"jsonrpc": "2.0",
    	"id": 1,
    	"result": "xi6"
    }
    

    name

    The human readable name of the device

    To get the value of name call the method like this:

    function name(): Promise<string>
    

    Promise resolution:

    string
    

    Capabilities:

    RoleCapability
    usesxrn:firebolt:capability:device:name

    Examples

    Default example #1

    JavaScript:

    import { Device } from '@firebolt-js/sdk'
    
    Device.name()
        .then(value => {
            console.log(value)
        })
    

    Value of value:

    "Living Room"
    
    JSON-RPC:Request:
    {
    	"jsonrpc": "2.0",
    	"id": 1,
    	"method": "Device.name",
    	"params": {}
    }
    

    Response:

    {
    	"jsonrpc": "2.0",
    	"id": 1,
    	"result": "Living Room"
    }
    

    Default example #2

    JavaScript:

    import { Device } from '@firebolt-js/sdk'
    
    Device.name()
        .then(value => {
            console.log(value)
        })
    

    Value of value:

    "Living Room"
    
    JSON-RPC:Request:
    {
    	"jsonrpc": "2.0",
    	"id": 1,
    	"method": "Device.name",
    	"params": {}
    }
    

    Response:

    {
    	"jsonrpc": "2.0",
    	"id": 1,
    	"result": "Kitchen"
    }
    

    To subscribe to notifications when the value changes, call the method like this:

    function name(callback: (value) => string): Promise<number>
    

    Promise resolution:

    number
    

    Examples

    Default example #1

    JavaScript:

    import { Device } from '@firebolt-js/sdk'
    
    name(value => {
      console.log(value)
    }).then(listenerId => {
      console.log(listenerId)
    })
    

    Value of value:

    "Living Room"
    
    JSON-RPC:Request:
    {
    	"jsonrpc": "2.0",
    	"id": 1,
    	"method": "Device.onNameChanged",
    	"params": {
    		"listen": true
    	}
    }
    

    Response:

    {
    	"jsonrpc": "2.0",
    	"id": 1,
    	"result": "Living Room"
    }
    

    Default example #2

    JavaScript:

    import { Device } from '@firebolt-js/sdk'
    
    name(value => {
      console.log(value)
    }).then(listenerId => {
      console.log(listenerId)
    })
    

    Value of value:

    "Living Room"
    
    JSON-RPC:Request:
    {
    	"jsonrpc": "2.0",
    	"id": 1,
    	"method": "Device.onNameChanged",
    	"params": {
    		"listen": true
    	}
    }
    

    Response:

    {
    	"jsonrpc": "2.0",
    	"id": 1,
    	"result": "Kitchen"
    }
    

    network

    Get the current network status and type

    To get the value of network call the method like this:

    function network(): Promise<object>
    

    Promise resolution:

    PropertyTypeDescription
    stateNetworkState
    typeNetworkType

    Capabilities:

    RoleCapability
    usesxrn:firebolt:capability:network:status

    Examples

    Getting the network info

    JavaScript:

    import { Device } from '@firebolt-js/sdk'
    
    Device.network()
        .then(networkInfo => {
            console.log(networkInfo)
        })
    

    Value of networkInfo:

    {
    	"state": "connected",
    	"type": "wifi"
    }
    
    JSON-RPC:Request:
    {
    	"jsonrpc": "2.0",
    	"id": 1,
    	"method": "Device.network",
    	"params": {}
    }
    

    Response:

    {
    	"jsonrpc": "2.0",
    	"id": 1,
    	"result": {
    		"state": "connected",
    		"type": "wifi"
    	}
    }
    

    To subscribe to notifications when the value changes, call the method like this:

    function network(callback: (value) => object): Promise<number>
    

    Promise resolution:

    number
    

    Examples

    Getting the network info

    JavaScript:

    import { Device } from '@firebolt-js/sdk'
    
    network(value => {
      console.log(value)
    }).then(listenerId => {
      console.log(listenerId)
    })
    

    Value of networkInfo:

    {
    	"state": "connected",
    	"type": "wifi"
    }
    
    JSON-RPC:Request:
    {
    	"jsonrpc": "2.0",
    	"id": 1,
    	"method": "Device.onNetworkChanged",
    	"params": {
    		"listen": true
    	}
    }
    

    Response:

    {
    	"jsonrpc": "2.0",
    	"id": 1,
    	"result": {
    		"state": "connected",
    		"type": "wifi"
    	}
    }
    

    once

    To listen to a single instance of a specific event pass the event name as the first parameter:

    once(event: string, callback: (data: any) => void): Promise<number>
    

    The once method will only pass the next instance of this event, and then dicard the listener you provided.

    Parameters:

    ParamTypeRequiredSummary
    eventstringYesThe event to listen for, see Events.
    callbackfunctionYesA function that will be invoked when the event occurs.

    Promise resolution:

    TypeDescription
    numberListener ID to clear the callback method and stop receiving the event, e.g. Device.clear(id)

    Callback parameters:

    ParamTypeRequiredSummary
    dataanyYesThe event data, which depends on which event is firing, see Events.

    To listen to the next instance only of any events from this module pass only a callback, without specifying an event name:

    once(callback: (event: string, data: any) => void): Promise<number>
    

    Parameters:

    ParamTypeRequiredSummary
    callbackfunctionYesA function that will be invoked when the event occurs. The event data depends on which event is firing, see Events.

    Callback parameters:

    ParamTypeRequiredSummary
    eventstringYesThe event that has occured listen for, see Events.
    dataanyYesThe event data, which depends on which event is firing, see Events.

    Promise resolution:

    TypeDescription
    numberListener ID to clear the callback method and stop receiving the event, e.g. Device.clear(id)

    See Listening for events for more information and examples.

    platform

    Get the platform ID for this device

    To get the value of platform call the method like this:

    function platform(): Promise<string>
    

    Promise resolution:

    string
    

    Capabilities:

    RoleCapability
    usesxrn:firebolt:capability:device:info

    Examples

    Getting the platform ID

    JavaScript:

    import { Device } from '@firebolt-js/sdk'
    
    Device.platform()
        .then(platformId => {
            console.log(platformId)
        })
    

    Value of platformId:

    "WPE"
    
    JSON-RPC:Request:
    {
    	"jsonrpc": "2.0",
    	"id": 1,
    	"method": "Device.platform",
    	"params": {}
    }
    

    Response:

    {
    	"jsonrpc": "2.0",
    	"id": 1,
    	"result": "WPE"
    }
    

    screenResolution

    Get the current screen resolution

    To get the value of screenResolution call the method like this:

    function screenResolution(): Promise<[number, number]>
    

    Promise resolution:

    type Resolution = [number, number]
    

    Capabilities:

    RoleCapability
    usesxrn:firebolt:capability:device:info

    Examples

    Getting the screen resolution

    JavaScript:

    import { Device } from '@firebolt-js/sdk'
    
    Device.screenResolution()
        .then(screenResolution => {
            console.log(screenResolution)
        })
    

    Value of screenResolution:

    [
    	1920,
    	1080
    ]
    
    JSON-RPC:Request:
    {
    	"jsonrpc": "2.0",
    	"id": 1,
    	"method": "Device.screenResolution",
    	"params": {}
    }
    

    Response:

    {
    	"jsonrpc": "2.0",
    	"id": 1,
    	"result": [
    		1920,
    		1080
    	]
    }
    

    To subscribe to notifications when the value changes, call the method like this:

    function screenResolution(callback: (value) => [number, number]): Promise<number>
    

    Promise resolution:

    number
    

    Examples

    Getting the screen resolution

    JavaScript:

    import { Device } from '@firebolt-js/sdk'
    
    screenResolution(value => {
      console.log(value)
    }).then(listenerId => {
      console.log(listenerId)
    })
    

    Value of screenResolution:

    [
    	1920,
    	1080
    ]
    
    JSON-RPC:Request:
    {
    	"jsonrpc": "2.0",
    	"id": 1,
    	"method": "Device.onScreenResolutionChanged",
    	"params": {
    		"listen": true
    	}
    }
    

    Response:

    {
    	"jsonrpc": "2.0",
    	"id": 1,
    	"result": [
    		1920,
    		1080
    	]
    }
    

    sku

    Get the device sku

    To get the value of sku call the method like this:

    function sku(): Promise<string>
    

    Promise resolution:

    string
    

    Capabilities:

    RoleCapability
    usesxrn:firebolt:capability:device:sku

    Examples

    Getting the device sku

    JavaScript:

    import { Device } from '@firebolt-js/sdk'
    
    Device.sku()
        .then(sku => {
            console.log(sku)
        })
    

    Value of sku:

    "AX061AEI"
    
    JSON-RPC:Request:
    {
    	"jsonrpc": "2.0",
    	"id": 1,
    	"method": "Device.sku",
    	"params": {}
    }
    

    Response:

    {
    	"jsonrpc": "2.0",
    	"id": 1,
    	"result": "AX061AEI"
    }
    

    type

    Get the device type

    To get the value of type call the method like this:

    function type(): Promise<string>
    

    Promise resolution:

    string
    

    Capabilities:

    RoleCapability
    usesxrn:firebolt:capability:device:info

    Examples

    Getting the device type

    JavaScript:

    import { Device } from '@firebolt-js/sdk'
    
    Device.type()
        .then(deviceType => {
            console.log(deviceType)
        })
    

    Value of deviceType:

    "STB"
    
    JSON-RPC:Request:
    {
    	"jsonrpc": "2.0",
    	"id": 1,
    	"method": "Device.type",
    	"params": {}
    }
    

    Response:

    {
    	"jsonrpc": "2.0",
    	"id": 1,
    	"result": "STB"
    }
    

    uid

    Gets a unique id for the current app & device

    To get the value of uid call the method like this:

    function uid(): Promise<string>
    

    Promise resolution:

    string
    

    Capabilities:

    RoleCapability
    usesxrn:firebolt:capability:device:uid

    Examples

    Getting the unique ID

    JavaScript:

    import { Device } from '@firebolt-js/sdk'
    
    Device.uid()
        .then(uniqueId => {
            console.log(uniqueId)
        })
    

    Value of uniqueId:

    "ee6723b8-7ab3-462c-8d93-dbf61227998e"
    
    JSON-RPC:Request:
    {
    	"jsonrpc": "2.0",
    	"id": 1,
    	"method": "Device.uid",
    	"params": {}
    }
    

    Response:

    {
    	"jsonrpc": "2.0",
    	"id": 1,
    	"result": "ee6723b8-7ab3-462c-8d93-dbf61227998e"
    }
    

    version

    Get the SDK, OS and other version info

    To get the value of version call the method like this:

    function version(): Promise<object>
    

    Promise resolution:

    PropertyTypeDescription
    sdkSemanticVersionThe Firebolt SDK version
    apiSemanticVersionThe lateset Firebolt API version supported by the curent device.
    firmwareSemanticVersionThe device firmware version.
    osSemanticVersionDeprecated Use firmware, instead.
    debugstringDetail version as a string, for debugging purposes

    Capabilities:

    RoleCapability
    usesxrn:firebolt:capability:device:info

    Examples

    Getting the os and sdk versions

    JavaScript:

    import { Device } from '@firebolt-js/sdk'
    
    Device.version()
        .then(versions => {
            console.log(versions)
        })
    

    Value of versions:

    {
    	"sdk": {
    		"major": 0,
    		"minor": 8,
    		"patch": 0,
    		"readable": "Firebolt JS SDK v0.8.0"
    	},
    	"api": {
    		"major": 0,
    		"minor": 8,
    		"patch": 0,
    		"readable": "Firebolt API v0.8.0"
    	},
    	"firmware": {
    		"major": 1,
    		"minor": 2,
    		"patch": 3,
    		"readable": "Device Firmware v1.2.3"
    	},
    	"os": {
    		"major": 0,
    		"minor": 1,
    		"patch": 0,
    		"readable": "Firebolt OS v0.1.0"
    	},
    	"debug": "Non-parsable build info for error logging only."
    }
    
    JSON-RPC:Request:
    {
    	"jsonrpc": "2.0",
    	"id": 1,
    	"method": "Device.version",
    	"params": {}
    }
    

    Response:

    {
    	"jsonrpc": "2.0",
    	"id": 1,
    	"result": {
    		"sdk": {
    			"major": 0,
    			"minor": 8,
    			"patch": 0,
    			"readable": "Firebolt JS SDK v0.8.0"
    		},
    		"api": {
    			"major": 0,
    			"minor": 8,
    			"patch": 0,
    			"readable": "Firebolt API v0.8.0"
    		},
    		"firmware": {
    			"major": 1,
    			"minor": 2,
    			"patch": 3,
    			"readable": "Device Firmware v1.2.3"
    		},
    		"os": {
    			"major": 0,
    			"minor": 1,
    			"patch": 0,
    			"readable": "Firebolt OS v0.1.0"
    		},
    		"debug": "Non-parsable build info for error logging only."
    	}
    }
    

    videoResolution

    Get the current video resolution

    To get the value of videoResolution call the method like this:

    function videoResolution(): Promise<[number, number]>
    

    Promise resolution:

    type Resolution = [number, number]
    

    Capabilities:

    RoleCapability
    usesxrn:firebolt:capability:device:info

    Examples

    Getting the video resolution

    JavaScript:

    import { Device } from '@firebolt-js/sdk'
    
    Device.videoResolution()
        .then(videoResolution => {
            console.log(videoResolution)
        })
    

    Value of videoResolution:

    [
    	1920,
    	1080
    ]
    
    JSON-RPC:Request:
    {
    	"jsonrpc": "2.0",
    	"id": 1,
    	"method": "Device.videoResolution",
    	"params": {}
    }
    

    Response:

    {
    	"jsonrpc": "2.0",
    	"id": 1,
    	"result": [
    		1920,
    		1080
    	]
    }
    

    To subscribe to notifications when the value changes, call the method like this:

    function videoResolution(callback: (value) => [number, number]): Promise<number>
    

    Promise resolution:

    number
    

    Examples

    Getting the video resolution

    JavaScript:

    import { Device } from '@firebolt-js/sdk'
    
    videoResolution(value => {
      console.log(value)
    }).then(listenerId => {
      console.log(listenerId)
    })
    

    Value of videoResolution:

    [
    	1920,
    	1080
    ]
    
    JSON-RPC:Request:
    {
    	"jsonrpc": "2.0",
    	"id": 1,
    	"method": "Device.onVideoResolutionChanged",
    	"params": {
    		"listen": true
    	}
    }
    

    Response:

    {
    	"jsonrpc": "2.0",
    	"id": 1,
    	"result": [
    		1920,
    		1080
    	]
    }
    

    Events

    audioChanged

    See: audio

    deviceNameChanged

    function listen('deviceNameChanged', (string) => void): Promise<number>
    

    See also: listen(), once(), clear().

    Event value:

    string
    

    Capabilities:

    RoleCapability
    usesxrn:firebolt:capability:device:name

    Examples

    Getting the device name

    JavaScript:

    import { Device } from '@firebolt-js/sdk'
    
    Device.listen('deviceNameChanged', value => {
      console.log(value)
    })
    

    Value of value:

    "Living Room"
    
    JSON-RPC:Request:
    {
    	"jsonrpc": "2.0",
    	"id": 1,
    	"method": "Device.onDeviceNameChanged",
    	"params": {
    		"listen": true
    	}
    }
    

    Response:

    {
    	"jsonrpc": "2.0",
    	"id": 1,
    	"result": "Living Room"
    }
    

    hdcpChanged

    See: hdcp

    hdrChanged

    See: hdr

    nameChanged

    See: name

    networkChanged

    See: network

    screenResolutionChanged

    See: screenResolution

    videoResolutionChanged

    See: videoResolution

    Types

    AudioProfiles

    type AudioProfiles = {
      stereo: boolean
      "dolbyDigital5.1": boolean
      "dolbyDigital7.1": boolean
      "dolbyDigital5.1+": boolean
      "dolbyDigital7.1+": boolean
      dolbyAtmos: boolean
    }
    

    See also:

    BooleanMap
    'stereo' | 'dolbyDigital5.1' | 'dolbyDigital7.1' | 'dolbyDigital5.1+' | 'dolbyDigital7.1+' | 'dolbyAtmos'


    Resolution

    type Resolution = [number, number]
    

    NetworkState

    The type of network that is currently active

    enum NetworkState {
    	CONNECTED = 'connected',
    	DISCONNECTED = 'disconnected'
    }
    
    

    NetworkType

    The type of network that is currently active

    enum NetworkType {
    	WIFI = 'wifi',
    	ETHERNET = 'ethernet',
    	HYBRID = 'hybrid'
    }
    
    


    Was this article helpful?

    What's Next