VoiceGuidance Module


Version VoiceGuidance 1.5.0

Table of Contents

Usage

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

import { VoiceGuidance } from '@firebolt-js/manage-sdk'

Overview

A module for managing voice guidance settings.

Methods

enabled

Whether or not voice-guidance is enabled.

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

function enabled(): Promise<boolean>

Promise resolution:

Capabilities:

Role Capability
uses xrn:firebolt:capability:accessibility:voiceguidance

Examples

Voice guidance enabled

JavaScript:

import { VoiceGuidance } from '@firebolt-js/manage-sdk'

let enabled = await VoiceGuidance.enabled()
console.log(enabled)

Value of enabled:

true
JSON-RPC:

Request:

{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "VoiceGuidance.enabled",
  "params": {}
}

Response:

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

Voice guidance disabled

JavaScript:

import { VoiceGuidance } from '@firebolt-js/manage-sdk'

let enabled = await VoiceGuidance.enabled()
console.log(enabled)

Value of enabled:

true
JSON-RPC:

Request:

{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "VoiceGuidance.enabled",
  "params": {}
}

Response:

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

To set the value of enabled call the method like this:

function enabled(value: boolean): Promise<void>

Parameters:

Param Type Required Description
value boolean true  

Promise resolution:

Examples

Voice guidance enabled

JavaScript:

import { VoiceGuidance } from '@firebolt-js/manage-sdk'

let result = await VoiceGuidance.enabled(true)
console.log(result)

Value of result:

null
JSON-RPC:

Request:

{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "VoiceGuidance.setEnabled",
  "params": {
    "value": true
  }
}

Response:

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

Voice guidance disabled

JavaScript:

import { VoiceGuidance } from '@firebolt-js/manage-sdk'

let result = await VoiceGuidance.enabled(false)
console.log(result)

Value of result:

null
JSON-RPC:

Request:

{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "VoiceGuidance.setEnabled",
  "params": {
    "value": false
  }
}

Response:

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

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

function enabled(callback: (value) => boolean): Promise<number>

Promise resolution:

number

Examples

Voice guidance enabled

JavaScript:

import { VoiceGuidance } from '@firebolt-js/manage-sdk'

let listenerId = await enabled((value) => {
  console.log(value)
})
console.log(listenerId)

Value of enabled:

true
JSON-RPC:

Request:

{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "VoiceGuidance.onEnabledChanged",
  "params": {
    "listen": true
  }
}

Response:

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

Voice guidance disabled

JavaScript:

import { VoiceGuidance } from '@firebolt-js/manage-sdk'

let listenerId = await enabled((value) => {
  console.log(value)
})
console.log(listenerId)

Value of enabled:

true
JSON-RPC:

Request:

{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "VoiceGuidance.onEnabledChanged",
  "params": {
    "listen": true
  }
}

Response:

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

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:

Param Type Required Summary
event string Yes The event to listen for, see Events.
callback function Yes A function that will be invoked when the event occurs.

Promise resolution:

Type Description
number Listener ID to clear the callback method and stop receiving the event, e.g. VoiceGuidance.clear(id)

Callback parameters:

Param Type Required Summary
data any Yes The 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:

Param Type Required Summary
callback function Yes A function that will be invoked when the event occurs. The event data depends on which event is firing, see Events.

Callback parameters:

Param Type Required Summary
event string Yes The event that has occured listen for, see Events.
data any Yes The event data, which depends on which event is firing, see Events.

Promise resolution:

Type Description
number Listener ID to clear the callback method and stop receiving the event, e.g. VoiceGuidance.clear(id)

See Listening for events for more information and examples.

The user’s preference for whether additional navigation hints should be synthesized.

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

function navigationHints(): Promise<boolean>

Promise resolution:

Capabilities:

Role Capability
uses xrn:firebolt:capability:accessibility:voiceguidance

Examples

Navigation hints enabled

JavaScript:

import { VoiceGuidance } from '@firebolt-js/manage-sdk'

let navigationHints = await VoiceGuidance.navigationHints()
console.log(navigationHints)

Value of navigationHints:

true
JSON-RPC:

Request:

{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "VoiceGuidance.navigationHints",
  "params": {}
}

Response:

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

Navigation hints disabled

JavaScript:

import { VoiceGuidance } from '@firebolt-js/manage-sdk'

let navigationHints = await VoiceGuidance.navigationHints()
console.log(navigationHints)

Value of navigationHints:

true
JSON-RPC:

Request:

{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "VoiceGuidance.navigationHints",
  "params": {}
}

Response:

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

To set the value of navigationHints call the method like this:

function navigationHints(value: boolean): Promise<void>

Parameters:

Param Type Required Description
value boolean true  

Promise resolution:

Examples

Navigation hints enabled

JavaScript:

import { VoiceGuidance } from '@firebolt-js/manage-sdk'

let result = await VoiceGuidance.navigationHints(true)
console.log(result)

Value of result:

null
JSON-RPC:

Request:

{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "VoiceGuidance.setNavigationHints",
  "params": {
    "value": true
  }
}

Response:

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

Navigation hints disabled

JavaScript:

import { VoiceGuidance } from '@firebolt-js/manage-sdk'

let result = await VoiceGuidance.navigationHints(false)
console.log(result)

Value of result:

null
JSON-RPC:

Request:

{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "VoiceGuidance.setNavigationHints",
  "params": {
    "value": false
  }
}

Response:

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

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

function navigationHints(callback: (value) => boolean): Promise<number>

Promise resolution:

number

Examples

Navigation hints enabled

JavaScript:

import { VoiceGuidance } from '@firebolt-js/manage-sdk'

let listenerId = await navigationHints((value) => {
  console.log(value)
})
console.log(listenerId)

Value of navigationHints:

true
JSON-RPC:

Request:

{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "VoiceGuidance.onNavigationHintsChanged",
  "params": {
    "listen": true
  }
}

Response:

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

Navigation hints disabled

JavaScript:

import { VoiceGuidance } from '@firebolt-js/manage-sdk'

let listenerId = await navigationHints((value) => {
  console.log(value)
})
console.log(listenerId)

Value of navigationHints:

true
JSON-RPC:

Request:

{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "VoiceGuidance.onNavigationHintsChanged",
  "params": {
    "listen": true
  }
}

Response:

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

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:

Param Type Required Summary
event string Yes The event to listen for, see Events.
callback function Yes A function that will be invoked when the event occurs.

Promise resolution:

Type Description
number Listener ID to clear the callback method and stop receiving the event, e.g. VoiceGuidance.clear(id)

Callback parameters:

Param Type Required Summary
data any Yes The 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:

Param Type Required Summary
callback function Yes A function that will be invoked when the event occurs. The event data depends on which event is firing, see Events.

Callback parameters:

Param Type Required Summary
event string Yes The event that has occured listen for, see Events.
data any Yes The event data, which depends on which event is firing, see Events.

Promise resolution:

Type Description
number Listener ID to clear the callback method and stop receiving the event, e.g. VoiceGuidance.clear(id)

See Listening for events for more information and examples.

rate

The rate at which voice guidance speech will be read back to the user.

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

function rate(): Promise<SpeechRate>

Promise resolution:

SpeechRate

Capabilities:

Role Capability
uses xrn:firebolt:capability:accessibility:voiceguidance

Examples

Normal voice guidance speech rate

JavaScript:

import { VoiceGuidance } from '@firebolt-js/manage-sdk'

let rate = await VoiceGuidance.rate()
console.log(rate)

Value of rate:

1
JSON-RPC:

Request:

{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "VoiceGuidance.rate",
  "params": {}
}

Response:

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

Doubled voice guidance speech rate

JavaScript:

import { VoiceGuidance } from '@firebolt-js/manage-sdk'

let rate = await VoiceGuidance.rate()
console.log(rate)

Value of rate:

1
JSON-RPC:

Request:

{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "VoiceGuidance.rate",
  "params": {}
}

Response:

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

To set the value of rate call the method like this:

function rate(value: SpeechRate): Promise<void>

Parameters:

Param Type Required Description
value SpeechRate true
minumum: 0.1
maximum: 10      

Promise resolution:

Examples

Normal voice guidance speech rate

JavaScript:

import { VoiceGuidance } from '@firebolt-js/manage-sdk'

let result = await VoiceGuidance.rate(1)
console.log(result)

Value of result:

null
JSON-RPC:

Request:

{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "VoiceGuidance.setRate",
  "params": {
    "value": 1
  }
}

Response:

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

Doubled voice guidance speech rate

JavaScript:

import { VoiceGuidance } from '@firebolt-js/manage-sdk'

let result = await VoiceGuidance.rate(2)
console.log(result)

Value of result:

null
JSON-RPC:

Request:

{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "VoiceGuidance.setRate",
  "params": {
    "value": 2
  }
}

Response:

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

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

function rate(callback: (value) => SpeechRate): Promise<number>

Promise resolution:

number

Examples

Normal voice guidance speech rate

JavaScript:

import { VoiceGuidance } from '@firebolt-js/manage-sdk'

let listenerId = await rate((value) => {
  console.log(value)
})
console.log(listenerId)

Value of rate:

1
JSON-RPC:

Request:

{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "VoiceGuidance.onRateChanged",
  "params": {
    "listen": true
  }
}

Response:

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

Doubled voice guidance speech rate

JavaScript:

import { VoiceGuidance } from '@firebolt-js/manage-sdk'

let listenerId = await rate((value) => {
  console.log(value)
})
console.log(listenerId)

Value of rate:

1
JSON-RPC:

Request:

{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "VoiceGuidance.onRateChanged",
  "params": {
    "listen": true
  }
}

Response:

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

speed

The speed at which voice guidance speech will be read back to the user.

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

function speed(): Promise<SpeechRate>

Promise resolution:

SpeechRate

Capabilities:

Role Capability
uses xrn:firebolt:capability:accessibility:voiceguidance

Examples

Normal voice guidance speech rate

JavaScript:

import { VoiceGuidance } from '@firebolt-js/manage-sdk'

let speed = await VoiceGuidance.speed()
console.log(speed)

Value of speed:

1
JSON-RPC:

Request:

{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "VoiceGuidance.speed",
  "params": {}
}

Response:

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

Doubled voice guidance speech rate

JavaScript:

import { VoiceGuidance } from '@firebolt-js/manage-sdk'

let speed = await VoiceGuidance.speed()
console.log(speed)

Value of speed:

1
JSON-RPC:

Request:

{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "VoiceGuidance.speed",
  "params": {}
}

Response:

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

To set the value of speed call the method like this:

function speed(value: SpeechRate): Promise<void>

Parameters:

Param Type Required Description
value SpeechRate true
minumum: 0.1
maximum: 10      

Promise resolution:

Examples

Normal voice guidance speech rate

JavaScript:

import { VoiceGuidance } from '@firebolt-js/manage-sdk'

let result = await VoiceGuidance.speed(1)
console.log(result)

Value of result:

null
JSON-RPC:

Request:

{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "VoiceGuidance.setSpeed",
  "params": {
    "value": 1
  }
}

Response:

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

Doubled voice guidance speech rate

JavaScript:

import { VoiceGuidance } from '@firebolt-js/manage-sdk'

let result = await VoiceGuidance.speed(2)
console.log(result)

Value of result:

null
JSON-RPC:

Request:

{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "VoiceGuidance.setSpeed",
  "params": {
    "value": 2
  }
}

Response:

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

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

function speed(callback: (value) => SpeechRate): Promise<number>

Promise resolution:

number

Examples

Normal voice guidance speech rate

JavaScript:

import { VoiceGuidance } from '@firebolt-js/manage-sdk'

let listenerId = await speed((value) => {
  console.log(value)
})
console.log(listenerId)

Value of speed:

1
JSON-RPC:

Request:

{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "VoiceGuidance.onSpeedChanged",
  "params": {
    "listen": true
  }
}

Response:

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

Doubled voice guidance speech rate

JavaScript:

import { VoiceGuidance } from '@firebolt-js/manage-sdk'

let listenerId = await speed((value) => {
  console.log(value)
})
console.log(listenerId)

Value of speed:

1
JSON-RPC:

Request:

{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "VoiceGuidance.onSpeedChanged",
  "params": {
    "listen": true
  }
}

Response:

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

Events

enabledChanged

See: enabled

See: navigationHints

rateChanged

See: rate

speedChanged

See: speed

Private Events

View

enabledChanged

See: enabled

See: navigationHints

rateChanged

See: rate

speedChanged

See: speed

Types