Develop App with Touch Control Simulator

Starting with the Dolby Voice Room 3.0 and the Dolby Conference Phone 4.3 releases, using the touch control simulator (TCS) in the Dolby Conference Phone App SDK, developers can create touch controller apps without having to load them on the actual hardware. Developers can use the tool to create fully functional apps that work with Dolby Voice Room, or with the Dolby Conference Phone in standalone mode.

About the SDK

  • Dolby provides a Linux Virtual Machine IDE environment and an SDK that can be installed in the VM.
  • Starting with the Dolby Voice Room 3.0 and the Dolby Conference Phone 4.3 releases, the SDK includes the touch control simulator (TCS) that allows a fully functional app to be loaded and executed in this environment.
  • The SDK includes components, web socket libraries, and plugins for conferencing app development. The plugins provide API auto-completion and F1/Help documentation within QT Creator.
  • The IDE VM offers the quickest access to a Linux development environment since it includes the Qt Creator IDE for app development, the Dolby Conference Phone SDK, an NGINX web server for testing app deployment, and the syslog server for debugging the app.

Development environment setup

Refer to Getting started guide for setting up the VM and SDK.

Checklist

  • Dolby Voice Room running 3.0 or above software.
  • Dolby Conference Phone running 4.3 or above software for standalone Dolby Conference Phone app development.
  • Dolby Conference Phone App IDE (Integrated Development Environment) Virtual Machine.
  • Touch Controller App SDK with matching version to the Dolby Conference Phone software.
  • Devtools power user keys from Dolby.

App development environment

Dolby hardware is still required

The TCS significantly simplifies the touch controller app development process, however the developer still needs to have the actual hardware to test full system functionality. For example, validating audio connection, controlling the camera, muting the microphone, etc.

Setup touch control simulator

Prepare hardware

Obtain devtools power user keys

The Dolby hardware requires device specific power user keys to enable devtools feature for TCS to connect to. Find out the serial number of the Dolby Voice Hub and the Dolby Conference Phone, and send the request to DolbyVoiceSupport@dolby.com to get the power user keys.

The serial number of the Dolby Voice Hub can be found on a label on the bottom of the Dolby Voice Hub, or via the Dolby Conference Phone’s interface: Settings > Status > System. Similarly, for the Dolby Conference Phone, the serial number can be found on the Dolby Conference Phone interface under Settings > Status > Phone.

Install power user keys onto the devices

Log in to the Dolby Voice Hub shell to apply the key and enable the developer mode. Use PuTTY or a similar SSH or telnet program to log in to the shell. The login name is admin; the password is 1739.

These commands are used to control the developer mode settings:

CommandDescription
system poweruser keySet the power user key.
system poweruser devtools enableOnce the key is set, enable developer mode.
system poweruser devtools disableTurn off developer mode. This removes the command line switch settings (see below).
system poweruser devtools showCheck whether developer mode is enabled.

Once devtools is enabled on the Dolby Voice Hub, use the following procedure to enable devtools on the Dolby Conference Phone. You will need a separate power user key for the Dolby Conference Phone.

  • From Dolby Voice Hub shell, enter ssh-to-dcp, log in as 1739.
  • Enter system poweruser key KEYID where the keyID is the one matching the Dolby Conference Phone serial number.
  • Enter system poweruser devtools enable

Setup Dolby Voice Room in detached mode

In order to use TCS, the Dolby Voice Room system must be set up in detached mode; the Dolby Conference Phone must not be plugged into the Power-Over-Ethernet port on the Dolby Voice Hub.

Refer to Dolby Voice Room Administrative Guide for instructions on how to set the system up in detached mode.

Turn security features off on the Dolby Voice Hub

Security features must be turned off on the Dolby Voice Hub to bypass checks that prevents the Dolby Voice Hub app to connect to the TCS.

The following command line switch must be entered in order to disable web security.

DolbyCli>devtools set-cmdline-switch "--allow-running-insecure-content"

Connect TCS to the hardware

Configure the Dolby Voice Hub app to connect to TCS

The Dolby Voice Hub can only connect to one control app at any time due to limitations of AppLink. In order for TCS to connect to the Dolby Voice Hub app and exchange messages, the Dolby Voice Hub app must be configured to establish connection with the TCS, this can be done by adding tcsIP parameter to the Dolby Voice Hub app URL.

For example, if Dvms.HubApp.Url is configured as https://192.168.1.2 to load the Dolby Voice Hub app from a development machine at 192.168.1.2, configure the URL as https://192.168.1.2?tcsIP=192.168.1.3. This will allow TCS running on 192.168.1.3 to connect to the Dolby Voice Hub app using AppLink. In order to connect AppLink back to the Dolby Conference Phone simply enter same URL minus the tcsIP parameters https://192.168.1.2.

In order to switch back to the app running on the touch controller for testing, simply remove “?tcsIP=192.168.1.3” from the app URL.

Configure TCS to connect to Dolby hardware

In order to connect the TCS to the Dolby Conference Phone backend services, the IP address of the Dolby Conference Phone must be passed in when starting the TCS. The TCS process is started by running a python script (tcsimulator), so the exact command to be run from SDK Virtual Machine in order to start TCS and connect it to Dolby Conference Phone is as follows:

Starting TCS

[root@dcp-sdk /]# tcsimulator gui DOLBY_CONFERENCE_PHONE_IP_ADDRESS BUILD_NUMBER

An example:

[root@dcp-sdk /]# tcsimulator gui 192.168.1.76 4.3.0.3

The BUILD_NUMBER argument indicates which build of TCS to run; this will match the number specified in the rpm package. The Dolby Conference Phone IP address can be found using the Dolby Conference Phone display through Settings > … > About > Phone.

Keyboard shortcuts

  • The Home button reloads the app. This is useful during app development so that the developer can quickly perform test without having to restart TCS.
  • The Volume control buttons (+/-) are mapped to the up and down buttons.

Manage SDK versions

Starting with the Dolby Conference Phone 4.3 release, Dolby releases a SDK that matches the Dolby Conference Phone software version. After downloading the matching version of the tcs-sdk.rpm, the developer must copy over the rpm package to the VM and then install the rpm package. The developer has the option to either replace the existing SDK, or install the new version and keep the old version. The second approach is useful when the developer needs to work with various versions of the Dolby Voice Room or the Dolby Conference Phone software.

Install the new SDK while keeping the old version

[root@dcp-sdk Documents]# rpm --force -ivh tcs-sdk-4.3.0.3-1.x86_64.rpm

Replace the exiting SDK

[root@dcp-sdk Documents]# rpm --force -Uvh tcs-sdk-4.3.0.3-1.x86_64.rpm