Configuration QML Type

Configuration APIs to get and set the Dolby Conference Phone configuration parameters. More...

Import Statement: import com.dolby.dcp.engine 1.0

Properties

Signals

Methods

Detailed Description

This JavaScript object provides APIs to access the Dolby Conference Phone configuration. Configuration parameters are exposed as properties. They can be int, string, boolean or ConfigurationParameter type. Eight custom parameters are available for customizing a conferencing app's configuration. All configuration parameters can be set on web interface by admin, and most of the parameters can be set on the provisioning server.

Note: Use properties to read or bind parameters; and use methods to set values.

Example:

property string peerDevice: configuration.customParameter3.value

// Set if changeable for writing
if ( configuration.customParameter2.changeable) {
    configuration.setCustomParameter2("https://mycallserver.com")
}

Property Documentation

[read-only] customParameter1 : ConfigurationParameter

First custom parameter. The custom parameters are defined by the application. All custom parameters can be provisioned or set via the Dolby Conference Phone's Web UI.


[read-only] customParameter2 : ConfigurationParameter

Second custom parameter. The custom parameters are defined by the application. All custom parameters can be provisioned or set via the Dolby Conference Phone's Web UI.


[read-only] customParameter3 : ConfigurationParameter

Third custom parameter. The custom parameters are defined by the application. All custom parameters can be provisioned or set via the Dolby Conference Phone's Web UI.


[read-only] customParameter4 : ConfigurationParameter

The 4th custom parameter. The custom parameters are defined by the application. All custom parameters can be provisioned or set via the Dolby Conference Phone's Web UI.


[read-only] customSecureParameter1 : ConfigurationParameter

First secure custom parameter. Secure parameter value is stored as an encrypted value on the Dolby Conference Phone. This property provides the decrypted value to the application. The secure custom parameters are defined by the application, all secure custom parameters can be provisioned or set on the Web UI of the Dolby Conference Phone.


[read-only] customSecureParameter2 : ConfigurationParameter

Second secure custom parameter. Secure parameter value is stored as an encrypted value on the Dolby Conference Phone. This property provides the decrypted value to the application. The secure custom parameters are defined by the application, all secure custom parameters can be provisioned or set on the Web UI of the Dolby Conference Phone.


[read-only] customSecureParameter3 : ConfigurationParameter

Third secure custom parameter. Secure parameter value is stored as an encrypted value on the Dolby Conference Phone. This property provides the decrypted value to the application. The secure custom parameters are defined by the application, all secure custom parameters can be provisioned or set on the Web UI of the Dolby Conference Phone.


[read-only] customSecureParameter4 : ConfigurationParameter

The 4th secure custom parameter. Secure parameter value is stored as an encrypted value on the Dolby Conference Phone. This property provides the decrypted value to the application. The secure custom parameters are defined by the application, all secure custom parameters can be provisioned or set on the Web UI of the Dolby Conference Phone.


[read-only] dateFormat : ConfigurationParameter

The Dolby Conference Phone's date format configuration.

The available date formats are:

  • dd/MM/yy
  • d MMMM, yyyy
  • MMMM d, yyyy
  • MM/dd/yy
  • d MMM, yy
  • MMM d, yy
  • d MMMM yyyy
  • dd.MM.yy
  • d. MMMM yyyy
  • Spanish/Portuguese long
  • Chinese long
  • yyyy/MM/dd
  • yy. M. d.
  • Korean long
  • dd/MM/yyyy

Please refer to the configuration parameter documentation for details, as the available date format may change from release to release.

See also setDateFormat.


deviceName : ConfigurationParameter

Get device name. The device name is also known as the display name. The device name is shown on the Dolby Conference Phone home screen. The app may choose to use this name to identify the Dolby Conference Phone in a conference roster list.

See also setDeviceName().


[read-only] doNotDisturb : ConfigurationParameter

Check whether Do Not Disturb is enabled.

Introduced in SDK version: 2

See also setDoNotDisturb().


[read-only] errorString : string

Contains a description of the last error that occurred.

Introduced in SDK version: 3

See also error().


[read-only] highfiveDiscoveredList : variant

Return a list of Highfive devices discovered.

See also startHighfiveDiscovery and highfiveDiscoveryCompleted.


[read-only] language : ConfigurationParameter

The Dolby Conference Phone's language configuration.

The available language preferences are:

  • en (English)
  • fr (French)
  • it (Italian)
  • de (Germany)
  • es (Spanish)
  • pt (Portuguese)
  • pt_BR (Portuguese, Brazil)
  • zh-Hant (Traditional Chinese)
  • zh-Hans (Simplified Chinese)
  • ja (Japanese)
  • ko (Korean)
  • ar (Arabic)
  • he (Hebrew)
  • ru (Russian)
  • cs (Czech)

Please refer to the configuration parameter documentation for details as the available languages may change from release to release.


[read-only] operationMode : ConfigurationParameter

Indicates Dolby Conference Phone's current operation mode.

The possible modes are:

  • DUALMODE - Dual mode
  • IPPBXONLYMODE - IPPBX only mode
  • CONFONLYMODE - Conference only mode



Introduced in SDK version: 3

See also setOperationMode.


[read-only] peerDeviceBleAddress : ConfigurationParameter

Indicates the paired peer device's BLE address. This is a generic API for the app to read its peer device's BLE address from the configuration.

Introduced in SDK version: 3

See also setPeerDeviceBleAddress.


[read-only] peerDeviceCustomData : string

Stores custom data retrieved from a Highfive video endpoint peer device. Normally this holds the Highfive video endpoint's IP address; it automatically updates as the Dolby Conference Phone periodically scans for the Highfive video endpoint's custom data to update this information.

Note: Highfive specific API

See also peerDeviceCustomDataChanged.


[read-only] peerDeviceIpAddress : ConfigurationParameter

Indicates the paired peer device's IP address. This is a generic API for the app to read its peer device's IP address. Once set, the Dolby Conference Phone will automatically answer the incoming call specified as part of the PeripheralModeAudio API.

Introduced in SDK version: 3

See also setPeerDeviceIpAddress.


[read-only] personalModeEnabled : bool

This property indicates whether Dolby Conference Phone is configured for personal mode or not.


[read-only] ringerVolume : ConfigurationParameter

Get ringer volume level

See also setRingerVolume().


[read-only] softwareUpdateStatus : string

This property indicates status of Dolby Conference Phone firmware update process. It reflects values from "Device.Status.SoftwareUpdateSuccessful" configuration parameter.

Possible values are

  • NOT_APPLICABLE- Software Update result is not available or not required
  • IN_PROGRESS - Software Update is in progress
  • SUCCESS - Software Update successful
  • FAIL - Software Update failed with unknown reason
  • FAIL_UNABLE_DOWNLOAD - Unable to download software image file
  • FAIL_INVALID_SIGNATURE - Invalid signature on software image file
  • FAIL_INVALID_IMAGE - Invalid software image file
  • FAIL_CANCELLED - Update was canceled

Refer to Configuration Parameters for latest possible values.

Example:

Connections {
    target: configuration
    onSoftwareUpdateStatusChanged: {
        Logger.syslog(LogLevel.DEBUG, "Update status - " + configuration.softwareUpdateStatus);
    }
}

spatialCaptureOrigin : ConfigurationParameter

Get current spatial capture origin for audio.

Introduced in SDK version: 2

See also setSpatialCaptureOrigin.


[read-only] speechVolume : ConfigurationParameter

Get speech volume level

See also setSpeechVolume().


[read-only] timeFormat : ConfigurationParameter

The Dolby Conference Phone's time format configuration.

The available time formats are:

  • h:mm ap (default)
  • h:mm

Please refer to the configuration parameter documentation for details as the available time format may change from release to release.


[read-only] timeZone : ConfigurationParameter

The Dolby Conference Phone's time zone configuration. Please refer to the configuration parameter documentation for details.

The available timeZone preferences are:

  • Pacific/Kwajalein
  • Pacific/Samoa
  • Pacific/Honolulu
  • America/Anchorage
  • America/Los_Angeles
  • America/Denver
  • America/Chicago
  • America/New_York
  • America/Caracas
  • America/St_Johns
  • America/Argentina/Buenos_Aires
  • Atlantic/South_Georgia
  • Atlantic/Azores
  • Europe/London
  • Europe/Paris
  • Africa/Johannesburg
  • Asia/Baghdad
  • Asia/Tehran
  • Asia/Muscat
  • Asia/Kabul
  • Asia/Karachi
  • Asia/Kolkata
  • Asia/Kathmandu
  • Asia/Dhaka
  • Asia/Bangkok
  • Asia/Singapore
  • Asia/Tokyo
  • Australia/Adelaide
  • Australia/Sydney
  • Asia/Magadan
  • Pacific/Auckland

Signal Documentation

error(string errorStr)

This signal is emitted when configuration set or get operation has an error. Check errorStr for error message. Most common reason for the error may be validation failure for the values set. The app should make sure to validate values up front.

Note: The app should only connect to the signal as needed because this signal may be emitted due to native UI operations as well. Native UI also displays full screen error message overlay for all configuration errors.

Introduced in SDK version: 3

See also errorString, getParameter(), and setParameters().


highfiveDataRequestCompleted(int index, QString url, QString customData)

This signal is emitted when the Highfive device data request has completed. index corresponds to the index that was passed in the startHighfiveDataRequest method. url is the provisioning URL. customData contains the IP address of the device.

See also startHighfiveDataRequest.


highfiveDiscoveryCompleted(bool highfiveDevicesFound)

This signal is emitted when the Highfive device discovery has completed. highfiveDevicesFound indicates if any Highfive devices were discovered.

See also startHighfiveDiscovery and highfiveDiscoveredList.


highfivePairingDeviceCompleted(bool status)

This signal is emitted when the Highfive device pairing has completed. The status return value is set to true if the pairing is successful.

See also selectHighfivePairingDevice.


peerDeviceCustomDataChanged(string data)

This signal is emitted when a Highfive video endpoint's peer device's custom data value changes. data holds the new value.

Note: Highfive specific API

See also peerDeviceCustomData.


Method Documentation

void factoryResetDevice()

Factory reset the Dolby Conference Phone. This will cause the Dolby Conference Phone to reboot and return to the Out of Box state.


string getDeviceCertificate()

Get local certificate of Dolby Conference Phone in the PEM format.


ConfigurationParameter getParameter(string name)

Get the ConfigurationParameter object for parameter name. A subset of the configuration parameters supported on the Dolby Conference Phone is exposed to the conferencing app and this method provides a generic way to access those configuration parameters. Certain configuration parameters are used as status indicators for system state. For example, Device.Status.ProvisionSuccessful indicates whether there's a provisioning error on the Dolby Conference Phone.

See Configuration Parameters for a list of parameters which can be accessed using this API.

See also ConfigurationParameter.


void provision()

Start provisioning the Dolby Conference Phone using current provisioning server configurations. If the provisioning server contains configuration changes that would cause the Dolby Conference Phone to reboot or upgrade, the Dolby Conference Phone will then reboot or go through the software upgrade process.


void rebootDevice()

Reboot the Dolby Conference Phone. The Dolby Conference Phone will go through a full reboot cycle which can take about 60 seconds.


bool resetParameters(variant paramList)

Reset configuration parameters. paramList is a JSON object with a list of parameters. Returns false if set request can not be made, check logs for error messages. Possible reasons for failures are:

  • Trying to set a parameter which is not part of Configuration Parameters list.
  • Parameter is not changeable because it might be provisioned. This can always be checked before trying to set value using getParameter(name).changeable.

Returns true when reset request is sent successfully. This is asynchronous method so parameter values will be updated asynchronously.

See Configuration Parameters for a list of parameters which can be reset using this API.

function resetLoggingLevels() {
      var loggingLevels = ["Logging.Level.Sip","Logging.Level.BLE"]

      Logger.syslog( LogLevel.DEBUG ,"Logging Levels : " + JSON.stringify(loggingLevels));
      if(configuration.resetParameters(loggingLevels)) {
          // listen for errors if any
          configErrorConnection.target = configuration
      }
      else {
          Logger.syslog(LogLevel.ERROR,"Unable to reset configuration parameters");
      }
  }

  Connections {
      id: configErrorConnection
      target: null
      onError: {
          Logger.syslog(LogLevel.ERROR,"Failed to reset logging levels: " + errorStr);
          // Do not listen to error
          configErrorConnection.target = null;
          // do something
      }
  }



Introduced in SDK version: 4

See also getParameter(), setParameters(), errorString, and error().


bool selectHighfivePairingDevice(int)

Select a Highfive video endpoint for pairing from the highfiveDiscoveredList. This will result in the Dolby Conference Phone connecting to the selected Highfive environment for provisioning, and also record the selected video endpoint's BLE address into Dvms.PeerDevice.BluetoothId, and its IP address into Dvms.PeerDevice.CustomData.

The method returns false if the supplied index is invalid.

Note: Highfive specific API


void setCustomParameter1(string value)

Sets value to custom parameter 1. The maximum length of the custom parameters (1-4) is 65535 bytes. Because these parameters are not encrypted, when the app stores the information in these custom parameters, an administrator will be able to read the values by accessing the Dolby Conference Phone Web UI.


void setCustomParameter2(string value)

Sets value to custom parameter 2.


void setCustomParameter3(string value)

Sets value to custom parameter 3.


void setCustomParameter4(string value)

Sets value to custom parameter 4.


void setCustomSecureParameter1(string value)

Sets value to custom secure parameter 1. The value is stored in an encrypted form. It's maximum length is 2048 bytes. These 4 secure parameters can be used by the app to store private or sensitive information on the Dolby Conference Phone. The administrator who has access to the Dolby Conference Phone Web UI will not be able to decrypt the value stored in these parameters.


void setCustomSecureParameter2(string value)

Sets value to custom secure parameter 2. The value is stored in an encrypted form.


void setCustomSecureParameter3(string value)

Sets value to custom secure parameter 3. The value is stored in an encrypted form.


void setCustomSecureParameter4(string value)

Sets value to custom secure parameter 4. The value is stored in an encrypted form.


void setDateFormat(string value)

Sets value to date format parameter.

Date format options are available based on current language selection. If a date format is not valid for a particular language, the Dolby Conference Phone will ignore it and automatically change it back to one of the correct ones.

Table of date formats for every language

LanguageDate formats
en (English)
  • dd/MM/yy
  • d MMMM, yyyy
  • MMMM d, yyyy
  • MM/dd/yy
  • d MMM, yy
  • MMM d, yy
fr (French)
  • dd/MM/yy
  • d MMMM yyyy
it (Italian)
  • dd/MM/yy
  • d MMMM yyyy
de (German)
  • dd.MM.yy
  • d. MMMM yyyy
es (Spanish)
  • dd/MM/yy
  • d 'de' MMMM 'de' yyyy
pt (Portuguese)
  • dd/MM/yy
  • d 'de' MMMM 'de' yyyy
pt_BR (Portuguese, Brazil)
  • dd/MM/yy
  • d 'de' MMMM 'de' yyyy
zh-Hant (Traditional Chinese)
  • yyyyå¹´m月dæ—¥
zh-Hans (Simplified Chinese)
  • yyyyå¹´m月dæ—¥
ja (Japanese)
  • yyyyå¹´m月dæ—¥
ko (Korean)
  • yy. M. d.
  • yyyyë…„ MMì›” dd일
ar (Arabic)
  • dd/mm/yyyy
he (Hebrew)
  • dd/mm/yyyy
  • dd/mm/yy

See also dateFormat.


void setDeviceName(string name)

Sets name to device name parameter. The device name is also known as the display name. The device name is shown on the Dolby Conference Phone home screen. The app may choose to use this name to identify the Dolby Conference Phone in a conference roster list.

See also deviceName.


void setDoNotDisturb(bool value)

Update Do Not Disturb setting. Enabled when set to true.

Introduced in SDK version: 2

See also doNotDisturb.


void setLanguage(string value)

Sets value to language parameter. Refer to language for available language choices for the value parameter.


void setOperationMode(string mode)

Sets operation mode specified in mode. Refer operationMode for possible values for mode.

if (configuration.operationMode.changeable) {
    configuration.setOperationMode("CONFONLYMODE");
}



Introduced in SDK version: 3

See also operationMode.


bool setParameters(variant paramList)

Set configuration parameters. paramList is a JSON object with list of parameters and its value. Returns false if set request can not be made, check logs for error messages. Possible reasons for failures are:

  • Trying to set a parameter which is not part of Configuration Parameters list.
  • Type of value being set is not correct. For example trying to set boolean value to the parameter which takes strings.
  • Parameter is not changeable because it might be provisioned. This can always be checked before trying to set value using getParameter(name).changeable.

Returns true when set request is sent successfully. This is asynchronous method so parameter values will be updated asynchronously.

See Configuration Parameters for a list of parameters which can be set using this API.

function configurePbx() {
      var pbxConfig = {}
      pbxConfig["Sip.Account.UserName"] = "kdala";
      pbxConfig["Sip.Account.DisplayNumber"] = "Kushal Dalal";
      pbxConfig["Sip.Pbx.Domain"] = "mysipprovider.com";
      pbxConfig["Sip.Pbx.OutboundProxy1"] = "sipserver1.mysipprovider.com";
      pbxConfig["Sip.Pbx.OutboundProxy2"] = "sipserver2.mysipprovider.com";
      pbxConfig["Sip.Credential.Name"] = "kdala";
      pbxConfig["Sip.Credential.Password"] = "mypwd123";
      Logger.syslog( LogLevel.DEBUG ,"IPPX configuration: " + JSON.stringify(pbxConfig));
      if(configuration.setParameters(pbxConfig)) {
          // listen for errors if any
          configErrorConnection.target = configuration
      }
      else {
          Logger.syslog(LogLevel.ERROR,"Unable to set configuration parameter");
      }
  }

  Connections {
      id: configErrorConnection
      target: null
      onError: {
          Logger.syslog(LogLevel.ERROR,"Failed to set PBX configurations: " + errorStr);
          // Do not listen to error
          configErrorConnection.target = null;
          // do something
      }
  }



Introduced in SDK version: 3

See also getParameter(), errorString, and error().


void setPeerDeviceBleAddress(string bleAddress)

Sets bleAddress of the paired peer (video) device in the configuration.

Introduced in SDK version: 3

See also peerDeviceBleAddress.


void setPeerDeviceIpAddress(string ipAddress)

Sets ipAddress of the paired peer (video) device in the configuration. SIP events from this peer device will be accepted on the Dolby Conference Phone. Refer to PeripheralModeAudio for further details. Normally the app stores the peer device IP address at the end of the pairing, or whenever it discovers new IP address of the paired peer device.

Introduced in SDK version: 3

See also peerDeviceIpAddress and PeripheralModeAudio.


void setRingerVolume(int level)

Sets level to ringer volume parameter. Possible level values are 1-20.

See also ringerVolume.


void setSpatialCaptureOrigin(string value)

Set spatial capture origin for audio so that audio and video can be aligned. Possible value

  • 0
  • 90
  • 180
  • 270

Default value is 0

Introduced in SDK version: 2

See also spatialCaptureOrigin.


void setSpeechVolume(int level)

Sets level to speech volume parameter. Possible level values are 1-20.

See also speechVolume.


bool setSystemDateTime(string datetime)

Sets system date and time based to datetime string. Returns true on success, false otherwise. Recognized formats for datetime:

  • YYYY-MM-DD hh:mm[:ss]
  • [YYYY.]MM.DD-hh:mm[:ss]
  • hh:mm[:ss]
  • [[[[[YY]YY]MM]DD]hh]mm[.ss]

Note: This method should be used if Dolby Conference Phone failed to synchronize clock via NTP. So if Device.Status.NetworkTime configuration parameter value is set to FAIL_NOT_SYNCHRONIZED than set system clock using setSystemDateTime() method. The clock setting by this method will be overwritten by firmware if the NTP time sync is successful.

// YYYY-MM-DD hh:mm[:ss]
configuration.setSystemDateTime("2017-12-05 10:50:33");
// [YYYY.]MM.DD-hh:mm[:ss]
configuration.setSystemDateTime("2017.12.05-10:50:33");
// hh:mm[:ss]
configuration.setSystemDateTime("10:50");



Introduced in SDK version: 5

See also getParameter().


void setTimeFormat(string value)

Sets value to time format parameter. Refer to timeFormat for available time format preferences for the value parameter.


void setTimeZone(string value)

Sets value to timeZone parameter. Refer to timeZone for available time zone preferences for the value parameter.


bool startHighfiveDataRequest(int)

Select a Highfive video endpoint for requesting additional data from the highfiveDiscoveredList. This will result in the Dolby Conference Phone providing the provisioning URL, customData as well as the index selected video endpoint. The app shall listen for highfiveDataRequestCompleted signal and then examine index, URL and customData parameters.

The method returns false if the supplied index is invalid.

Note: Highfive specific API


void startHighfiveDiscovery()

Start a Highfive device discovery on the Dolby Conference Phone. The Dolby Conference Phone can scan the environment using Bluetooth to look for Highfive video endpoints in its proximity. The app shall listen for the highfiveDiscoveryCompleted signal and then examine the highfiveDiscoveredList to get a list of Highfive video endpoints.

Note: Highfive specific API

See also highfiveDiscoveryCompleted.