Cisco MX300G2, MX800, MX700, MX200G2, SX10 User Manual

...
Cisco TelePresence
Table of contents
Introduction
Create a user interface
API for in-room control
Widgets
Command reference
Troubleshooting
Tips and tricks
Examp les
Table of contents
Introduction
Create a user interface
API for in-room control
Widgets
Command reference
Troubleshooting
Tips and tricks
Examp les
MX200 G2, MX300 G2, MX700, MX800, SX10, SX20, SX80
In-Room Control on Touch10
D15358.01 APRIL 2016
D15358.01 APRIL 2016
Collaboration Endpoint software
Collaboration Endpoint software
version 8.1
version 8.1
© 2016 Cisco Systems, Inc.
© 2016 Cisco Systems, Inc.
All rights reserved.
All rights reserved.
CE8.1
APRIL 2016
1
Table of contents
Table of contents
Introduction
Create a user interface
API for in-room control
Widgets
Command reference
Troubleshooting
Tips and tricks
Examples
Table of contents
Introduction .....................................................................................................4
Definition of terms .........................................................................................4
In-room controls ...........................................................................................5
Create a user interface for the Touch 10 .........................................................7
Launch the in-room control editor .................................................................8
Create the in-room control panel ..................................................................9
API for programming in-room controls ..........................................................14
Connect to the video system ......................................................................14
Communicate over the API .........................................................................15
Widgets .........................................................................................................20
The widget identifier ...................................................................................20
Toggle but ton .............................................................................................. 21
Slider ..........................................................................................................22
How to use this guide
The left menu bar and the entries in the table of contents are all hyperlinks. You can click on them to go to the topic.
Product documentation
User guides and compliance and safety information for Cisco TelePresence systems are available at
http://www.cisco.com/go/telepresence/docs
We recommend that you visit the Cisco web site regularly for updated versions of this guide.
Spinner .......................................................................................................23
Button with custom text ..............................................................................24
Button with symbol .....................................................................................25
Group button ...............................................................................................26
Text box ......................................................................................................27
Command reference .....................................................................................29
Events ........................................................................................................ 30
Commands .................................................................................................32
Statuses ..................................................................................................... 33
Troubleshooting ............................................................................................ 35
Development tools on the web interface .................................................... 35
Tips and tricks .............................................................................................. 38
D15358.01 APRIL 2016
Collaboration Endpoint software
version 8.1
© 2016 Cisco Systems, Inc.
All rights reserved.
Examples .......................................................................................................41
2
D15358.01 APRIL 2016
Table of contents
Introduction
Create a user interface
API for in-room control
Widgets
Command reference
Troubleshooting
Tips and tricks
Examples
IntroductionIntroduction
Collaboration Endpoint software
version 8.1
© 2016 Cisco Systems, Inc.
All rights reserved.
Introduction
3

Introduction

Table of contents
Introduction
Create a user interface
API for in-room control
Widgets
Command reference
Troubleshooting
Tips and tricks
Examples
Introduction
With In-Room Control you can add custom elements to our Touch10 user interface. Such user interface extensions may be controls for lights or blinds, or other peripherals controlled by external control systems.
Since both the Cisco video system and the other peripherals are controlled from the Touch 10 user interface, you get a consistent user experience throughout the meeting room.
The in-room control feature is available for the SX Series and MX Series video systems running Collaboration Endpoint Software, version CE8.1 or later.

Definition of terms

Video system - Video system or codec in the Cisco TelePresence MXSeries
or SXSeries that runs Collaboration Endpoint Software, version CE8.1 or later. Sometimes referred to as video device.
Control system - Third-party control system with hardware drivers for peripherals, for example Crestron, AMX, Apple HomeKit, or Android.
Touch10 - Out touch-based control device for the MXSeries and SXSeries video systems. Full product name: Cisco TelePresence Touch10. Also known as Touch10 controller, or Touch10 user interface.
In-room control panel - Panel with controls for third-party peripherals in the room. The panel opens when you tap the in-room control icon in the status bar on Touch10. Refer to the Create a user interface chapter.
In-room control editor - Our easy to use drag-and-drop editor for making in­room control panels.
xAPI - The bi-directional API of the video system. The xAPI allows third-party applications to interface with and interact with the video system, and vice versa.
Widget - User interface element, for example buttons, sliders, and text fields, that you can use to build an in-room control panel for Touch 10.
D15358.01 APRIL 2016
Collaboration Endpoint software
version 8.1
© 2016 Cisco Systems, Inc.
All rights reserved.
4

In-room controls

Table of contents
Introduction
Create a user interface
API for in-room control
Widgets
Command reference
Troubleshooting
Tips and tricks
Examples
Introduction
In-room control icon
(entry icon)
In-room control panel
You need a Cisco video system with a Touch10 user interface, and a third- party control system, for example Crestron, AMX, Apple HomeKit, or Android.
The video system's API, referred to as the xAPI, is the link between the video system and the control system. Use the events and commands exposed by the xAPI when you program the control system.
The simple drag-and-drop in-room control editor offers a library of user interface elements, referred to as widgets. You can use these widgets to create your own in-room control panel for the Touch10 user interface.
Together, all of this allows for the powerful combination of the control system's functionality and the user-friendly Touch10 user interface.
Example of an in-room control panel on Touch 10
You can customize our Touch10 user interface to allow control of peripherals in a meeting room, for example lights and blinds.
Touch10
Video system
Blinds
xAPI
Climate
Control system
D15358.01 APRIL 2016
Collaboration Endpoint software
version 8.1
© 2016 Cisco Systems, Inc.
All rights reserved.
Lights
In-room
control
editor
Other...
In-room control schematics
5
D15358.01 APRIL 2016
Table of contents
Introduction
Create a user interface
API for in-room control
Widgets
Command reference
Troubleshooting
Tips and tricks
Examples
Create a user interfaceCreate a user interface
Collaboration Endpoint software
version 8.1
© 2016 Cisco Systems, Inc.
All rights reserved.
Create a user interface
Use the in-room control editor to create the user interface
and to apply it to the video system
6

Create a user interface for the Touch 10

Table of contents
Introduction
Create a user interface
API for in-room control
Widgets
Command reference
Troubleshooting
Tips and tricks
Examples
Create a user interface
Use our in-room control editor to create customized panels for peripheral controls on the video system’s Touch10 user interface.
Connected to video system
If you have access to the video system, you can launch the editor from the video system's web interface. Then you have immediate access to the video system and its Touch10 user interface.
If there is already an in-room control panel on the Touch10, it will automatically load into the editor, and you can use it as a starting point for your design.
When you push a new panel to the video system, you will immediately see the result on the Touch10.
Touch10
Offline
There are two places from which you can download the offline editor:
• Download from http://www.cisco.com/go/in-room-control-docs
• Or, sign in to a video system's web interface with administrator credentials, navigate to Integration > In-Room Control, and click Download Editor.
Extract the files from the downloaded zip-file. Keep the folder structure as is.
With the offline editor you have to work with files, rather than communicating directly with the video system and Touch10. Apart from this, the offline editor has full functionality.
Video system
Import existing in-room control
panel from video system
Import an
in-room control
panel from file
Export new
in-room control
panel to file
In-room
control
editor
Push new in-room control panel to video system
The editor that you launch from the video system's web interface and the offline editor share the same file format, so files created in one version can be opened and modified in the other.
Import an
in-room control
panel from file
Export new
in-room control
panel to file
Offline in-room control editor
Offline
in-room
control
editor
D15358.01 APRIL 2016
Collaboration Endpoint software
version 8.1
© 2016 Cisco Systems, Inc.
All rights reserved.
In-room control editor launched from the video system's web interface
7

Launch the in-room control editor

Table of contents
Introduction
Create a user interface
API for in-room control
Widgets
Command reference
Troubleshooting
Tips and tricks
Examples
Create a user interface
Sign in to the video system's web interface with administrator credentials, navigate to Integration > In-Room Control, and click Launch Editor.
If there is an in-room control panel on the video system already, it will automatically load into the editor.
Create a new panel
Offline version
If you are using the offline version of the editor, open the index.html file that you find in the rceditor folder.
Import the current panel from the
video system (codec), or import a
panel that has been exported to a
file on an earlier occasion
Export your panel to the video
system (codec), or export it to a
file that can be imported back into
the editor at a later stage
Choose an in-room control icon;
delete the panel from the video
system (codec)
Tutorial on how to use the editor
D15358.01 APRIL 2016
Collaboration Endpoint software
version 8.1
© 2016 Cisco Systems, Inc.
All rights reserved.
Link to online guides
Widget library
The in-room control editor
8

Create the in-room control panel

Table of contents
Introduction
Create a user interface
API for in-room control
Widgets
Command reference
Troubleshooting
Tips and tricks
Examples
Create a user interface
Start the design of the in-room control panel
If an in-room control panel was not automatically loaded when you launced the editor, choose one of these alternatives:
New creates a blank in-room control panel in the editor.
Import> From file loads an in-room control panel, which has been exported to a local file on an earlier occasion, into the editor.
Import> From codec loads the current in-room control panel from the video system into the editor. Not available in the offline editor.
All alternatives erase any unsaved data in the editor, but the existing in-room control panel on the video system is neither overwritten nor deleted until a new panel is exported to the video system.
Start or continue the design of an in-room control panel
D15358.01 APRIL 2016
Collaboration Endpoint software
version 8.1
© 2016 Cisco Systems, Inc.
All rights reserved.
9
Design the in-room control panel
Table of contents
Introduction
Create a user interface
API for in-room control
Widgets
Command reference
Troubleshooting
Tips and tricks
Examples
Create a user interface
What you see in the editor's design panel is similar to how the in-room control panel will appear on the Touch10.
An in-room control panel is arranged in pages, which will appear as separate tabs in the in-room control panel on Touch 10. Each page consists of one or more rows, which you can populate with text and user interface elements known as widgets.
Widgets are arranged in a four-column grid. The widgets are placed into the grid according to the following rules:
• A widget fills between one and four columns depending on its size.
• A row is populated from right to left.
• If you add more widgets than fits in one line, widgets wrap to a new line within the same row.
How you use the user interface elements for your meeting room is up to you. You can, for example, create panels with preset buttons for lights and blinds, or support for more complex scenarios such as controls for many microphones in a large meeting room. You can find some examples for inspiration in the
Examples chapter.
Refer to the next page on how to create the panel.
Four-column grid
Buttons with familiar symbols like home, power, arrows, camera and loudspeaker controls, media player controls
Buttons with custom text, group buttons, toggle button, sliders, spinners, and other elements
D15358.01 APRIL 2016
Collaboration Endpoint software
version 8.1
© 2016 Cisco Systems, Inc.
All rights reserved.
Design panel
Widget library
The in-room control editor. Widgets from the widget library are placed in a four-column grid.
10
1
Table of contents
Introduction
Create a user interface
API for in-room control
Widgets
Command reference
Troubleshooting
Tips and tricks
Examples
Create a user interface
Give the page a name
Click the page text, and enter a name.
5
Define unique identifiers
Click the widget, and type unique identifiers in
7
Add more pages
+
Click
to add a new page.
2
Give the row a name
Click the row text, and enter a name.
3
Add widgets from the library
Drag and drop as many widgets as you need from the widget library onto a row.
4
Enter custom text on widgets
Click the dummy-text on a button, group button, or text field, and enter the appropriate text.
the input fields that pops up below the design panel. You can either use the pre-assigned identifiers or define your own.
All widgets have a unique WidgetID. Only Group buttons have GroupIDs.
Read more about the identifiers in the Widgets chapter.
6
Add more rows
+
Click
Repeat steps 2-5 for each row.
to add a new row.
Repeat steps 1-6 for each page.
8
Choose an in-room control icon
Click Settings in the menu, and choose an in­room control icon (entry icon).
The in-room control icon appears in the status bar on Touch10. When you tap the icon, the in-room control panel opens.
Re-arrange elements
Drag a page, row, or widget, and drop it in its new position. Drop it outside the design panel to delete it.
8
2
1
3
74
D15358.01 APRIL 2016
Collaboration Endpoint software
version 8.1
© 2016 Cisco Systems, Inc.
All rights reserved.
6
5
11
Apply the in-room control panel to the video system
Table of contents
Introduction
Create a user interface
API for in-room control
Widgets
Command reference
Troubleshooting
Tips and tricks
Examples
Create a user interface
(Not available when using the offline editor. Instead, you should export the in-
Export the in-room control panel to file
room control panel to a file in order to save your work for later.)
Apply the in-room control panel to the video system. You will see the results immediately on the Touch10.
• Choose Export > To codec
Check the result on Touch10
(Not available when using the offline editor.)
Tap the in-room control icon (light bulb or generic utility icon) in the Touch10 status bar to open the in-room control panel.
Export the in-room control panel to a file, which can be imported back into the editor at a later stage.
• Choose Export > To file
If you are using the offline editor, this is the only way you can save your work for later.
Exporting to file may also be useful as a way of creating a design template if you are going to push the same in-room control panel to multiple video systems.
Files exported while connected to a video system are in the same format as files exported from an offline editor. This means that any of these files can be imported into an editor launched from a video system's web interface, and then pushed to the video system's Touch10.
In-room control icon
Which in-room control icon to display is defined under Settings in the editor. If you change to the other icon, you have to export the in-room control panel to the video system again.
D15358.01 APRIL 2016
Collaboration Endpoint software
version 8.1
© 2016 Cisco Systems, Inc.
All rights reserved.
12
D15358.01 APRIL 2016
Table of contents
Introduction
Create a user interface
API for in-room control
Widgets
Command reference
Troubleshooting
Tips and tricks
Examples
API for in-room controlAPI for in-room control
Collaboration Endpoint software
version 8.1
© 2016 Cisco Systems, Inc.
All rights reserved.
API for in-room control
13

API for programming in-room controls

Table of contents
Introduction
Create a user interface
API for in-room control
Widgets
Command reference
Troubleshooting
Tips and tricks
Examples
API for in-room control

Connect to the video system

The video system's API (also known as the xAPI) allows bi-directional communication with third-party control systems, such as those from AMX or Crestron. There are multiple ways to access the xAPI:
• Telnet
• SSH
• HTTP/HTTPS
• Ethernet port
• RS-232 / serial connection
Regardless of the method you choose, the structure of the xAPI is the same. Choose the access method that suits your application and video system the best.
Consult the API guide for your video system for a full description of available access methods and how to use the xAPI. Go to
http://www.cisco.com/go/sx-docs for SX Series, or
http://www.cisco.com/go/mx-docs for MX Series
Then, click Reference Guides > Command References to find the API guides.
D15358.01 APRIL 2016
Collaboration Endpoint software
version 8.1
© 2016 Cisco Systems, Inc.
All rights reserved.
14

Communicate over the API

Table of contents
Introduction
Create a user interface
API for in-room control
Widgets
Command reference
Troubleshooting
Tips and tricks
Examples
API for in-room control
The video system and the control system exchange messages through the xAPI to make sure that the Touch10 in-room control panel truly reflects the status of the room.
The video system sends one or more events when someone uses one of the controls on the Touch10 in-room control panel, and the control system should send a command to the video system when there is a change in the room.
xAPI
Touch10
Commands
Video system
Events
The video system and the control system exchange messages through the xAPI.
Control system
Examples:
• When someone taps a Lights On button on Touch10, the video system sends the associated events. The control system should respond to these events by switching on the lights in the room and send the corresponding command back to the video system.
• When someone switch on the lights in the room, the control system should
D15358.01 APRIL 2016
Collaboration Endpoint software
version 8.1
send a command to the video system, so that the video system can update the Touch10 in-room control panel to reflect that the light is on.
Consult the Command reference chapter for an overview of all relevant events, commands and statuses for in-room control.
© 2016 Cisco Systems, Inc.
All rights reserved.
15
Events for widget actions
Table of contents
Introduction
Create a user interface
API for in-room control
Widgets
Command reference
Troubleshooting
Tips and tricks
Examples
API for in-room control
The video system sends one or more of the following events when someone uses the controls on the Touch10 in-room control panel:
Pressed - sent when a widget is first pressed
Changed - sent when changing a widget's value (applies only to toggle buttons and sliders)
Released - sent when a widget is released (also when moving out of the widget before releasing)
Clicked - sent when a widget is clicked (pressed and released without moving out of the widget)
These events are sent in two versions.
• UserInterface Extensions Event - suited for terminal output mode
• UserInterface Extensions Widget - suited for XML output mode
Refer to the table below to find out which version is best suited for your control system to register to.
When, and by which widgets (user interface elements), these events are triggered, are described in the Widgets chapter.
UserInterface Extensions Event (suited for terminal output mode) UserInterface Extensions Widget (suited for XML output mode)
One single string contains information about the type of action, which widget triggered the event (identified by the WidgetID), and the widget value.
How to register:
xfeedback register event/UserInterface/Extensions/Event
Example:
*e UserInterface Extensions Event Pressed Signal: "WidgetId:Value" ** end
*e UserInterface Extensions Event Changed Signal: "
WidgetId:Value"
** end *e UserInterface Extensions Event Released Signal: "
WidgetId:Value"
The type of action, which widget triggered the event (identified by the WidgetID), and the widget value are included as separate elements in the XML tree.
How to register:
xfeedback register event/UserInterface/Extensions/Widget
Example:
<Event> <UserInterface item="1"> <Extensions item="1"> <Widget item="1"> <Action item="1">
D15358.01 APRIL 2016
Collaboration Endpoint software
version 8.1
© 2016 Cisco Systems, Inc.
All rights reserved.
** end *e UserInterface Extensions Event Clicked Signal: "
** end
Type of action
Two event versions that a control system can register to: one suited for terminal output mode, the other for XML output mode
WidgetId:Value"
16
<WidgetId item="1"> <Value item="1"> <Type item="1">
Value</Value>
Type</Type>
</Action> </Widget> </Extensions> </UserInterface> </Event>
WidgetId</WidgetId>
Type of action
Event for panel update
Table of contents
Introduction
Create a user interface
API for in-room control
Widgets
Command reference
Troubleshooting
Tips and tricks
Examples
API for in-room control
The video system sends the following event when a new in-room control panel is applied:
LayoutUpdated - sent when a new in-room control panel for Touch10 is exported to the video system
As a response to this event, the control system should send commands to initialize all widgets so that they reflect the true status of the room.
How to register:
xfeedback register event/UserInterface/Extensions/Widget/
LayoutUpdated
Example:
Terminal output mode:
*e UserInterface Extensions Widget LayoutUpdated ** end
XML output mode:
<Event> <UserInterface item="1"> <Extensions item="1"> <Widget item="1"> <LayoutUpdated item="1"/> </Widget> </Extensions> </UserInterface> </Event>
D15358.01 APRIL 2016
Collaboration Endpoint software
version 8.1
© 2016 Cisco Systems, Inc.
All rights reserved.
17
Commands and statuses
Table of contents
Introduction
Create a user interface
API for in-room control
Widgets
Command reference
Troubleshooting
Tips and tricks
Examples
API for in-room control
The
SetValue
working with in-room controls:
xCommand UserInterface Extensions Widget SetValue Value: Value
command, which sets the value of a widget, is essential when
Examples
User
Video system
with Touch 10
Control system Lights
WidgetId:
When the video system receives a
WidgetId
SetValue
command, the video system's
status and the Touch10 in-room control panel are updated accordingly.
It is important that the control system sends
SetValue
commands in the following situations, so that the Touch10 in-room control panel truly reflects the status of the room:
• When the control system initially connects to the video system.
• When the video system restarts.
• When the control system restarts.
• When a new in-room control panel is exported to the video system from the in-room control editor (as response to the LayoutUpdated event).
Tap Lights On
The appearance of
the light widget has
changed to match what the user can
see in the room
Pressed and
Released events for
Lights On widget
Turn lights on
Set the value of the Lights On widget to
active
• When someone physically changes something in the room, for example turns on the lights using a wall control.
• As a response to an event, for example when someone has tapped the Lights On button on the Touch10 in-room control panel.
The control system must also do all that is necessary in the room to reflect the action on the Touch10 in-room control panel, for example switch on the light.
Consult the Widgets chapter for more details about which commands apply to the different widgets (user interface elements).
Message flow - turn on the lights using the controls on Touch 10
User
The appearance
of the light
widget has
changed to match what the user can see in
the room
Video system
with Touch 10
Set the value of
the Lights On
widget to active
Control
system Lights
Signal that lights
are on
User
Turn lights on
with wall control
D15358.01 APRIL 2016
Collaboration Endpoint software
version 8.1
© 2016 Cisco Systems, Inc.
All rights reserved.
Message flow - turn on the lights using the wall control
18
D15358.01 APRIL 2016
Table of contents
Introduction
Create a user interface
API for in-room control
Widgets
Command reference
Troubleshooting
Tips and tricks
Examples
WidgetsWidgets
Collaboration Endpoint software
version 8.1
© 2016 Cisco Systems, Inc.
All rights reserved.
Widgets
Description of the user interface elements and
their associated events and commands
19

Widgets

Table of contents
Introduction
Create a user interface
API for in-room control
Widgets
Command reference
Troubleshooting
Tips and tricks
Examples
Widgets
The Touch10 in-room control panel is composed of user interface elements called widgets. You can find the complete widget library in the right pane of the in-room control editor.
General tab: Buttons with custom text, group buttons, toggle button, sliders, text fields and more.
Icons tab: Buttons with familiar symbols for Home, Power, Arrow up/down/ left/right, Camera controls, Loudspeaker controls, Microphone control, Media player controls, and more.
The content of the next few pages describes each widget type, with emphasis on:
• Commands that change the value of the widget
• Events that are sent (pressed, changed, released, clicked) and which actions trigger these events

The widget identifier

All widgets on a Touch10 in-room control panel need a unique identifier, a WidgetID. The WidgetID may either be defined by you, or assigned automatically. The WidgetID can be any name or number; we recommend using a descriptive name without special characters. The maximum number of characters is 40.
The WidgetID is the programming link between Touch10, the video system, and the control system. The WidgetID will be included in all events that are associated with a widget, and you must use the same identifier when you send commands to that widget via the code that you write for your control system.
• Examples of commands and events, both in terminal output mode and XML output mode
Syntax and semantics for all events, commands and statuses that are related to in-room controls (user interface extensions) are included in the
Commandreference chapter.
Group identifiers
One of the widgets, the Group button, has two types of identifiers: The WidgetID refers to the complete group of buttons, while GroupIDs are unique identifiers for the individual buttons within the group.
Widget_ID_groupbutton
Option 1 Option 2 Option 3
Group_ID_one Group_ID_two Group_ID_three
A GroupID is assigned automatically, but can be defined by you instead. A GroupID can be any name or number; we recommend using a descriptive
D15358.01 APRIL 2016
Collaboration Endpoint software
version 8.1
© 2016 Cisco Systems, Inc.
All rights reserved.
name without special characters. The maximum number of characters is 255.
20

Toggle button

Table of contents
Introduction
Create a user interface
API for in-room control
Widgets
Command reference
Troubleshooting
Tips and tricks
Examples
Widgets
Example of use: Anything that can be turned on or off, for example lights, fan,
on
A two-state switch which indicates either on or off.
off
Events
Changed Triggered when the button is released.
Value: <on/off>
and projector. You can use a toggle button together with a slider for lights that can be dimmed.
Example: Press "on" on the toggle button with WidgetId = "togglebutton".
Terminal mode
*e UserInterface Extensions Event Changed Signal: "togglebutton:on" ** end
XML mode
<Event> <UserInterface item="1"> <Extensions item="1"> <Widget item="1"> <Action item="1"> <WidgetId item="1">togglebutton</WidgetId> <Value item="1">on</Value> <Type item="1">changed</Type> </Action> </Widget> </Extensions> </UserInterface> </Event>
D15358.01 APRIL 2016
Collaboration Endpoint software
version 8.1
© 2016 Cisco Systems, Inc.
All rights reserved.
Commands
The visual appearence of the button changes immediately when you tap it. However, the control system must always send a video system when the button toggles between on and off. This ensures that the status is updated accordingly.
SetValue
command to the
Example: Set the button with WidgetId = "togglebutton" to "on".
xCommand UserInterface Extensions Widget SetValue
WidgetId: "togglebutton" Value: "on"
21

Slider

Table of contents
Introduction
Create a user interface
API for in-room control
Widgets
Command reference
Troubleshooting
Tips and tricks
Examples
Widgets
Example of use: Dimmable lights, volume control.
A slider selects values within a set range. The minimum value is represented by 0, and the maximum value is represented by 255. When the slider is being pressed and moved, events are sent maximum 5 times a second.
When you tap the bar, the slider is immediately moved to that new position.
Events
Pressed Triggered when the slider is pressed
Value: N/A
Changed Triggered when the slider is moved while holding down, and when
the slider is released Value: 0-255
Released Triggered when the slider is released
Value: 0-255
Example: Press the slider with WidgetId = "slider", and move it into a new
position ("68"), and release.
Terminal mode
*e UserInterface Extensions Event Pressed Signal: "slider" ** end *e UserInterface Extensions Event Changed Signal: "slider:32" ** end *e UserInterface Extensions Event Changed Signal: "slider:68" ** end *e UserInterface Extensions Event Released Signal: "slider:68" ** end
XML mode
. . .
<Event> <UserInterface item="1"> <Extensions item="1"> <Widget item="1"> <Action item="1"> <WidgetId item="1">slider</WidgetId> <Value item="1">68</Value> <Type item="1">released</Type> </Action> </Widget> </Extensions> </UserInterface> </Event>
D15358.01 APRIL 2016
Collaboration Endpoint software
version 8.1
© 2016 Cisco Systems, Inc.
All rights reserved.
Commands
The visual appearence of the slider changes immediately when you tap or slide it. However, the control system must always send a video system to tell the new position of the slider. This ensures that the status is updated accordingly.
SetValue
command to the
Example: Set the slider with WidgetId = "slider" to position "98".
xCommand UserInterface Extensions Widget SetValue WidgetId: "slider"
Value: "98"
22

Spinner

Table of contents
Introduction
Create a user interface
API for in-room control
Widgets
Command reference
Troubleshooting
Tips and tricks
Examples
Widgets
Example of use: Set the desired temperature in the room.
Aa...
Events
Pressed Triggered when one of the spinner buttons is pressed
Value: <increment/decrement>
Released Triggered when one of the spinner buttons is released
Value: <increment/decrement>
A spinner is used to step through a list of values. You may use the two buttons to increment or decrement a number, or to step through a list of options.
Use the
Example: Press and release the decrement button of the spinner with
WidgetId = "spinner".
SetValue
command to add text between the buttons.
Terminal mode
*e UserInterface Extensions Event Pressed Signal: "spinner:decrement" ** end *e User Interf ace Extensions Event Released Si gnal: "spinner:decrement" ** end
Clicked Triggered when one of the spinner buttons is released
Value: <increment/decrement>
*e UserInterface Extensions Event Clicked Signal: "spinner:decrement" ** end
XML mode
. . .
<Event> <UserInterface item="1"> <Extensions item="1"> <Widget item="1"> <Action item="1"> <WidgetId item="1">spinner</WidgetId> <Value item="1">decrement</Value> <Type item="1">clicked</Type> </Action>
D15358.01 APRIL 2016
Collaboration Endpoint software
version 8.1
© 2016 Cisco Systems, Inc.
All rights reserved.
Commands
Use the buttons.
SetValue
</Widget> </Extensions> </UserInterface> </Event>
Example: For the spinner with WidgetId = "spinner", add the text "22" between
the spinner's increment and decrement buttons.
command to add or update the text between the two
xCommand UserInterface Extensions Widget SetValue WidgetId: "spinner"
Value: "22"
23

Button with custom text

Table of contents
Introduction
Create a user interface
API for in-room control
Widgets
Command reference
Troubleshooting
Tips and tricks
Examples
Widgets
Text
inactive
Example of use: Room presets for lighting, for example three buttons that show Dark, Cool, Bright.
If you want to have the buttons linked so that only one can be selected at a time (radio buttons), consider to use Group buttons.
Text
active
Events
Pressed Triggered when the button is pressed
Value: N/A
Buttons with custom text come in different sizes. The size determines the maximum number of characters you can add. Text does not wrap to a new line. You cannot use the
A button has two states: active and inactive. You do not have to set the button in active state when someone taps it; the button can be used to just send a signal without changing the button's visual state.
Example: Press and release the button with WidgetId = "button".
SetValue
command to change the text dynamically.
Terminal mode
*e UserInterface Extensions Event Pressed Signal: "button"
Released Triggered when the button is released
Value: N/A
Clicked Triggered when the button is released
Value: N/A
** end *e UserInterface Extensions Event Released Signal: "button" ** end *e UserInterface Extensions Event Clicked Signal: "button" ** end
XML mode
. . .
<Event> <UserInterface item="1"> <Extensions item="1"> <Widget item="1"> <Action item="1"> <WidgetId item="1">button</WidgetId>
D15358.01 APRIL 2016
Collaboration Endpoint software
version 8.1
© 2016 Cisco Systems, Inc.
All rights reserved.
Commands
Use the A value of release it.
SetValue
"active"
command to highlight or not the button in the user interface.
will highlight the button, and a value of
"inactive"
will
<Value item="1"></Value> <Type item="1">clicked</Type> </Action> </Widget> </Extensions> </UserInterface> </Event>
Example: Highlight the button with WidgetId = "button" (set it in active state).
xCommand UserInterface Extensions Widget SetValue WidgetId: "button"
Value: "active"
24

Button with symbol

Table of contents
Introduction
Create a user interface
API for in-room control
Widgets
Command reference
Troubleshooting
Tips and tricks
Examples
Widgets
inactive
Example of use: Controls for a media player, or other devices that can start, stop, pause.
   
active
   
Events
Pressed Triggered when the button is pressed
Value: N/A
Released Triggered when the button is released
Value: N/A
There are buttons with different symbols under the Icons tab in the library. Such a button has similar behavior as a button with custom text.
A button has two states: active and inactive. You do not have to set the button in active state when someone taps it; the button can be used to just send a signal without changing its visual state.
Example: Press and release the button with WidgetId = "symbol".
Terminal mode
*e UserInterface Extensions Event Pressed Signal: "symbol" ** end *e UserInterface Extensions Event Released Signal: "symbol" ** end
Clicked Triggered when the button is released
Value: N/A
*e UserInterface Extensions Event Clicked Signal: "symbol" ** end
XML mode
. . .
<Event> <UserInterface item="1"> <Extensions item="1"> <Widget item="1"> <Action item="1"> <WidgetId item="1">symbol</WidgetId> <Value item="1"></Value> <Type item="1">clicked</Type> </Action>
D15358.01 APRIL 2016
Collaboration Endpoint software
version 8.1
© 2016 Cisco Systems, Inc.
All rights reserved.
Commands
Use the A value of release it.
SetValue
"active"
command to highlight or not the button in the user interface.
will highlight the button, and a value of
"inactive"
will
</Widget> </Extensions> </UserInterface> </Event>
Example: Highlight the button with WidgetId = "symbol" (set it in active state)
xCommand UserInterface Extensions Widget SetValue WidgetId: "symbol"
Value: "active"
25

Group button

Table of contents
Introduction
Create a user interface
API for in-room control
Widgets
Command reference
Troubleshooting
Tips and tricks
Examples
Widgets
Text Text Text
No button selected
Example of use: Room presets that are mutually exclusive, like room presets where you can choose between Dark, Cool, and Bright. Remember to unselect (release) the preset, if the preset is no longer valid (for instance when changing the lights with a wall control, or a slider on the Touch10).
Text Text Text
One button selected
Events
Pressed Triggered when one of the buttons is pressed
Value: The GroupID of the button (within the group) that was pressed
We provide groups of either two, three or four buttons with custom text. The buttons within a group are linked so that only one can be selected at a time (also known as radio buttons).
The size of the button determines the maximum number of characters you can add. Text does not wrap to a new line. You cannot use the to change the text dynamically.
Example: There are four buttons in the group with WidgetId = "groupbutton".
Press the button with GroupID = "two".
Terminal mode
SetValue
command
*e UserInterface Extensions Event Pressed Signal: "groupbutton:two"
Released Triggered when one of the buttons is released
Value: The GroupID of the button (within the group) that was released
** end *e UserInterface Extensions Event Released Signal: "groupbutton:two" ** end
XML mode
. . .
<Event> <UserInterface item="1"> <Extensions item="1"> <Widget item="1"> <Action item="1"> <WidgetId item="1">groupbutton</WidgetId> <Value item="1">two</Value> <Type item="1">released</Type>
D15358.01 APRIL 2016
Collaboration Endpoint software
version 8.1
© 2016 Cisco Systems, Inc.
All rights reserved.
Commands
The visual appearence of the button changes immediately when you tap it. However, the control system must always send a video system when one of the buttons are tapped. This ensures that the status is updated accordingly.
Use the button is highlighted.
UnSetValue
command to release all buttons in the group so that no
SetValue
command to the
</Action> </Widget> </Extensions> </UserInterface> </Event>
Example: Select (highlight) the button with GroupID = "one" in the group with
WidgetId = "groupbutton". Then, release all buttons (no buttons are highlighted).
xCommand UserInterface Extensions Widget SetValue
WidgetId: "groupbutton" Value: "one"
xCommand UserInterface Extensions Widget UnsetValue
WidgetId: "groupbutton"
26

Text box

Table of contents
Introduction
Create a user interface
API for in-room control
Widgets
Command reference
Troubleshooting
Tips and tricks
Examples
Widgets
Aa
Aa
21°C
Example of use: Help text, instructions, explanation of what different presets mean, or informative text from the control system, such as “The projector is warming up”.
The text box with larger font size is primarily meant for status values, such as the current temperature in the room.
Text boxes come in different sizes. They have up to two lines of text and the text automatically wraps to the new line.
A small text box with larger font size and no line wrap is also available.
You can define the initial text for the text box in the editor, and later on use the
SetValue
command to enter text dynamically.
Events
None
Commands
Use the
SetValue
Example: Set the following text in the text box with WidgetId = "textbox": "The
projector is warming up.".
command to set the text in the text box.
xCommand UserInterface Extensions Widget SetValue
WidgetId: "textbox" Value: "The projector is warming up."
D15358.01 APRIL 2016
Collaboration Endpoint software
version 8.1
© 2016 Cisco Systems, Inc.
All rights reserved.
27
D15358.01 APRIL 2016
Table of contents
Introduction
Create a user interface
API for in-room control
Widgets
Command reference
Troubleshooting
Tips and tricks
Examples
Command referenceCommand reference
Collaboration Endpoint software
version 8.1
© 2016 Cisco Systems, Inc.
All rights reserved.
Command reference
Syntax and semantics for events, commands, and statuses,
that are used with the user interface extensions
28

Command reference

Table of contents
Introduction
Create a user interface
API for in-room control
Widgets
Command reference
Troubleshooting
Tips and tricks
Examples
Command reference
This chapter includes syntax and semantics for events, commands, and statuses, that are used with the user interface extensions.
Refer to the API guide to find descriptions of all configurations, commands, and statuses. Go to
http://www.cisco.com/go/sx-docs for SX Series,
http://www.cisco.com/go/mx-docs for MX Series
Then, click Reference Guides > Command References to find the API guides.
Overview of events, commands and status
Events .......................................................................................................... 30
UserInterface Extensions Event Pressed .................................................... 30
UserInterface Extensions Event Changed ................................................... 30
UserInterface Extensions Event Released .................................................. 30
UserInterface Extensions Event Clicked ..................................................... 30
UserInterface Extensions Widget Action .....................................................31
UserInterface Extensions Widget LayoutUpdated ........................................31
Commands ....................................................................................................32
UserInterface Extensions Widget SetValue .................................................32
UserInterface Extensions Widget UnsetValue ..............................................32
UserInterface Extensions Clear ...................................................................32
UserInterface Extensions List ......................................................................32
Statuses ........................................................................................................33
UserInterface Extensions Widget [n] WidgetId ............................................ 33
UserInterface Extensions Widget [n] Value ................................................. 33
D15358.01 APRIL 2016
Collaboration Endpoint software
version 8.1
© 2016 Cisco Systems, Inc.
All rights reserved.
29

Events

Table of contents
Introduction
Create a user interface
API for in-room control
Widgets
Command reference
Troubleshooting
Tips and tricks
Examples
Command reference

UserInterface Extensions Event Pressed

Sent by the video system when a widget is first pressed.
Equivalent to the UserInterface Extensions Widget Action event with Type "P r e s s e d ".
*e UserInterface Extensions Event Pressed Signal: Signal
where
Signal
: String (0, 255)
The format of the string is “<WidgetId>:<Value>”, where <WidgetId> is the unique identifier of the widget that triggers the event, and <Value> is the value of the widget. The range of allowed values depends on the widget type.

UserInterface Extensions Event Released

Sent by the video system when a widget is released (even if moving the finger out of the widget before releasing it).
Equivalent to the UserInterface Extensions Widget Action event with Type "Released".
*e UserInterface Extensions Event Released Signal: Signal
where
Signal
: String (0, 255)
The format of the string is “<WidgetId>:<Value>”, where <WidgetId> is the unique identifier of the widget that triggers the event, and <Value> is the value of the widget. The range of allowed values depends on the widget type.

UserInterface Extensions Event Changed

Sent by the video system when changing a widget's value (applies only to toggle buttons and sliders).
Equivalent to the UserInterface Extensions Widget Action event with Type "Changed".
*e UserInterface Extensions Event Changed Signal: Signal
where
Signal
: String (0, 255)
The format of the string is "<WidgetId>:<Value>", where <WidgetId> is the unique identifier of the widget that triggers the event, and <Value> is the value of the widget. The range of allowed values depends on the widget type.

UserInterface Extensions Event Clicked

Sent by the video system when a widget is clicked (pressed and released without moving the finger out of the widget).
Equivalent to the UserInterface Extensions Widget Action event with Type "Clicked".
*e UserInterface Extensions Event Clicked Signal: Signal
where
Signal
: String (0, 255)
The format of the string is “<WidgetId>:<Value>”, where <WidgetId> is the unique identifier of the widget that triggers the event, and <Value> is the value of the widget. The range of allowed values depends on the
D15358.01 APRIL 2016
Collaboration Endpoint software
version 8.1
© 2016 Cisco Systems, Inc.
All rights reserved.
widget type.
30

UserInterface Extensions Widget Action

Table of contents
Introduction
Create a user interface
API for in-room control
Widgets
Command reference
Troubleshooting
Tips and tricks
Examples
Command reference

UserInterface Extensions Widget LayoutUpdated

Sent by the video system when someone uses one of the controls on the user interface (in-room control panel).
Equivalent to the UserInterface Extensions Event
Depending on the action type, this event it equivalent to the UserInterface Extensions Event Pressed, UserInterface Extensions Event Changed, UserInterface Extensions Event Released, or UserInterface Extensions Event Clicked events.
Type
event.
<Event> <UserInterface item="1"> <Extensions item="1"> <Widget item="1"> <Action item="1">
<WidgetId item="1">
WidgetId</WidgetId>
Sent by the video system when the configuration file for the user interface extensions has been updated, i.e. when exporting a new configuration from the in-room control editor to the video system.
*e UserInterface Extensions Widget LayoutUpdated
or
<Event> <UserInterface item="1"> <Extensions item="1"> <Widget item="1"> <LayoutUpdated item="1"/> </Widget> </Extensions> </UserInterface>
<Value item="1"> <Type item="1">
Type</Type>
</Action> </Widget> </Extensions> </UserInterface> </Event>
where
WidgetId
The unique identifier for the widget that triggered the event.
Value
The value of the widget. The range of allowed values depends on the widget type.
: String (0, 40)
: String (0, 255)
Value</Value>
</Event>
D15358.01 APRIL 2016
Collaboration Endpoint software
version 8.1
© 2016 Cisco Systems, Inc.
All rights reserved.
Type
: <Pressed/Changed/Released/Clicked> Pressed: Sent when a widget is first pressed. Changed: Sent when changing a widget's value (only for toggle buttons
and sliders). Released: Sent when a widget is released (even if moving the finger
out of the widget before releasing it). Clicked: Sent when a widget is clicked (pressed and released without
moving the finger out of the widget).
31

Commands

Table of contents
Introduction
Create a user interface
API for in-room control
Widgets
Command reference
Troubleshooting
Tips and tricks
Examples
Command reference

UserInterface Extensions Widget SetValue

This command sets the value of the given widget, and the UserInterface Extensions statuses are updated accordingly. If the value is out of range, the command returns an error.
USAGE:
xCommand UserInterface Extensions Widget SetValue Value: Value
where
Value
WidgetId
WidgetId:
: String (0, 255)
The value of the widget. The range of values depends on the widget type.
: String (0, 40)
WidgetId

UserInterface Extensions Clear

This command deletes all user interface extensions (widgets) from the video system.
USAGE:
xCommand UserInterface Extensions Clear

UserInterface Extensions List

Use this command to list all user interface extensions (widgets) that exist on the video system.
USAGE:
The unique identifier for the widget.

UserInterface Extensions Widget UnsetValue

This command empties the value of the given widget, and the UserInterface Extensions statuses are updated accordingly. The user interface is notified that the widget is no longer selected.
USAGE:
xCommand UserInterface Extensions Widget UnsetValue WidgetId:
WidgetId
where
xCommand UserInterface Extensions List
D15358.01 APRIL 2016
Collaboration Endpoint software
version 8.1
© 2016 Cisco Systems, Inc.
All rights reserved.
WidgetId
The unique identifier for the widget.
: String (0, 40)
32

Statuses

Table of contents
Introduction
Create a user interface
API for in-room control
Widgets
Command reference
Troubleshooting
Tips and tricks
Examples
Command reference
UserInterface Extensions Widget [n] WidgetId UserInterface Extensions Widget [n] Value
This status returns the identifier (WidgetId) and the current value of the widgets.
The value is an empty string until a value is set by using the UserInterface Extensions Widget SetValue command.
USAGE:
xStatus UserInterface Extensions
Value space of the result returned:
Value: The value of the widget. Depends on widget type. String (0, 255)
WidgetId: The unique widget identifier. String (0, 40).
Example:
xstatus UserInterface Extensions *s UserInterface Extensions Widget 1 Value: "on" *s UserInterface Extensions Widget 1 WidgetId: "togglebutton" *s UserInterface Extensions Widget 2 Value: "255" *s UserInterface Extensions Widget 2 WidgetId: "slider" *s UserInterface Extensions Widget 3 Value: "Blinds" *s UserInterface Extensions Widget 3 WidgetId: "spinner" *s UserInterface Extensions Widget 4 Value: "inactive" *s UserInterface Extensions Widget 4 WidgetId: "button" *s UserInterface Extensions Widget 5 Value: "2" *s UserInterface Extensions Widget 5 WidgetId: "groupbutton"
D15358.01 APRIL 2016
Collaboration Endpoint software
version 8.1
© 2016 Cisco Systems, Inc.
All rights reserved.
*s UserInterface Extensions Widget 6 Value: "Projector is ready" *s UserInterface Extensions Widget 6 WidgetId: "textfield" ** end
33
D15358.01 APRIL 2016
Table of contents
Introduction
Create a user interface
API for in-room control
Widgets
Command reference
Troubleshooting
Tips and tricks
Examples
TroubleshootingTroubleshooting
Collaboration Endpoint software
version 8.1
© 2016 Cisco Systems, Inc.
All rights reserved.
Troubleshooting
Help to identify the source of an error
34

Troubleshooting

Table of contents
Introduction
Create a user interface
API for in-room control
Widgets
Command reference
Troubleshooting
Tips and tricks
Examples
Troubleshooting

Development tools on the web interface

Sign in to the video system's web interface with administrator credentials, navigate to Integration > In-Room Control. Click the arrow to show the Development Tools.
Overview of all widgets and their status
The Widget State Overview window lists all widgets, and their status. The status is shown in the Current Value column.
If the Current Value column is empty, the widget has not been initialized and has no value. We recommend that the control system initializes all widgets when it initially connects to the video system.
Send value updates to the video system
A control system sends update a widget. For test puposes, you can use the Update Value column in the Widget State Overview window to simulate a control system.
Enter a value in one of the input fields to immediately send the corresponding
SetValue
be updated, and the Touch10 in-room control panel changes accordingly.
Click Unset to clear the value of the widget (send an
If a control system is connected to the video system, the Current Value and Update Value columns may come out-of-sync. The Current Value column always shows the current status, regardless of whether the
command to the video system. The CurrentValue column (status) will
SetValue
commands to the video system, telling it to
UnsetValue
SetValue
command).
command
D15358.01 APRIL 2016
Collaboration Endpoint software
version 8.1
© 2016 Cisco Systems, Inc.
All rights reserved.
Widget status
is sent from a real control system, or from the Update Value column.
Send command
to update widget
35
Check for events and status updates
Table of contents
Introduction
Create a user interface
API for in-room control
Widgets
Command reference
Troubleshooting
Tips and tricks
Examples
Troubleshooting
All events and status updates related to widgets appear immediately in the Log window. Events are prefixed with *e, and statuses are prefixed with *s.
Events appear when you use the controls on the Touch10 user interface, and the status is updated when a command, which changes the video system's status, is sent to the video system.
Events
Status
Widget ID
D15358.01 APRIL 2016
Collaboration Endpoint software
version 8.1
© 2016 Cisco Systems, Inc.
All rights reserved.
36
D15358.01 APRIL 2016
Table of contents
Introduction
Create a user interface
API for in-room control
Widgets
Command reference
Troubleshooting
Tips and tricks
Examples
Tips and tricksTips and tricks
Collaboration Endpoint software
version 8.1
© 2016 Cisco Systems, Inc.
All rights reserved.
Tips and tricks
37

Tips and tricks

Table of contents
Introduction
Create a user interface
API for in-room control
Widgets
Command reference
Troubleshooting
Tips and tricks
Examples
Tips and tricks
Re-register to feedback from the video system when either the video system or the control system restarts
When either the video system or the control system restarts, the control system must re-register to the events that the video system sends when someone uses the Touch10 in-room controls or pushes a new in-room control panel to the Touch10.
For terminal output mode:
xfeedback register event/UserInterface/Extensions/Widget
For XML output mode:
xfeedback register event/UserInterface/Extensions/Event
Initialize all widgets
It is important that the control system initializes all the widgets on the Touch10 in-room control panel in the following situations:
• When the control system connects to the video system for the first time.
• When the video system restarts.
• When the control system restarts.
• When a new in-room control panel is exported to the video system (as response to a LayoutUpdated event).
If this is not done, then the Touch10 may show incorrect values and not truly reflect the status of the room.
xfeedback register event/UserInterface/Extensions/Widget/
LayoutUpdated
Consult the API for in-room control chapter for more details.
Use the
SetValue
command to set the initial values.
Always send values back to the video system when something changes
To avoid unexpected behavior and ambiguities, the control system must always send applies also when the change is triggered by someone using the controls on the Touch10.
For example, it makes no difference if you use a slider on the Touch10 in­control panel to dim the light, or a physical dimmer in the room, or another
SetValue
commands to the video system when something changes. This
D15358.01 APRIL 2016
Collaboration Endpoint software
version 8.1
© 2016 Cisco Systems, Inc.
All rights reserved.
38
touch panel. The control system must always send the dimmer value back to the video system using the
SetValue
command.
Update the in-room control panel
Table of contents
Introduction
Create a user interface
API for in-room control
Widgets
Command reference
Troubleshooting
Tips and tricks
Examples
Tips and tricks
Choose an in-room control icon
When you export a new in-room control panel to the video system, the old panel is overwritten and replaced by the new one.
a. Launch the in-room control editor from the video system's web interface. b. Create the in-room control panel you want, or import a previously saved
panel from file (Import > From file).
c. Click Export > To codec.
Remove the in-room control panel and icon
If there is an in-room control panel on the video system then there is also an in-room control icon in the Touch10 status bar. Even if the panel is empty and contains no widgets, both the icon and the panel will be visible.
The icon to tap to open the in-room control panel appears in the status bar on Touch10. This icon is also known as the entry icon.
In-room control icon
You can choose between two icons: a light bulb (default), or a generic utility icon. We recommend that you use the light bulb for environmental controls like lights and blinds, and the generic utility icon for other things.
a. Launch the in-room control editor from the video system's web interface.
Perform the following steps to remove the in-room control panel and icon from Touch10:
a. Launch the in-room control editor from the video system's web interface. b. Click Settings. c. Click the Delete icon in the Remove configuration section.
b. Click Settings. c. Click the entry icon that suits your needs. d. Click Export > To codec to apply the change.
D15358.01 APRIL 2016
Collaboration Endpoint software
version 8.1
© 2016 Cisco Systems, Inc.
All rights reserved.
39
D15358.01 APRIL 2016
Table of contents
Introduction
Create a user interface
API for in-room control
Widgets
Command reference
Troubleshooting
Tips and tricks
ExamplesExamplesExamples
Collaboration Endpoint software
version 8.1
© 2016 Cisco Systems, Inc.
All rights reserved.
Examples
For inspiration and guidance on best practices
40

Examples

Table of contents
Introduction
Create a user interface
API for in-room control
Widgets
Command reference
Troubleshooting
Tips and tricks
ExamplesExamples
The following examples are meant for inspiration and to give some guidance on best practices. It is not mandatory to design and implement controls as illustrated in these examples.
Group controls that belong together
Consider grouping controls that belong together on the same page. The pages you create in the in-room control editor appear as separate tabs on the control panel.
Tabs
D15358.01 APRIL 2016
Collaboration Endpoint software
version 8.1
© 2016 Cisco Systems, Inc.
All rights reserved.
41
Control of lights
Table of contents
Introduction
Create a user interface
API for in-room control
Widgets
Command reference
Troubleshooting
Tips and tricks
ExamplesExamples
Control of temperature
The combination of a slider and a toggle button could be used to control lights. The toggle button switches the lights on or off; the slider serves as a dimmer.
Combination of slider and toggle button
The combination of a spinner and a large font text box (value) may be used to control temperature. Use the spinner to set the desired temperature, and the large font text box to show the current temperature.
Large font text box
D15358.01 APRIL 2016
Collaboration Endpoint software
version 8.1
Group button with three mutually exclusive options
Consider the following strategy:
• Set the slider to minimum when the user turns the lights off.
• Set the toggle button to off when the user moves the slider to its minimum.
• Remember the value of the slider when the lights are turned off, so that you can return to this value when the lights are turned back on again.
If the light is at 40 %, when the user switches it off, he or she would expect it to go back to 40 % (not maximum) when switching the lights on again.
• When the user selects one of the options in the group button (a light preset), set the sliders and toggle buttons accordingly.
• If the lights are changed away from a preset, for instance by changing a slider or toggle button, unselect all options in the group button.
A spinner with text between the up and down arrows
For the best user experience remember the following:
• Update the large font text box as the temperature in the room changes.
• Update the text field of the spinner when someone tap the up and down arrows.
Consult the Widgets chapter for details about how to update the spinner's text field and the large font text box.
© 2016 Cisco Systems, Inc.
All rights reserved.
42
Control of blinds
Table of contents
Introduction
Create a user interface
API for in-room control
Widgets
Command reference
Troubleshooting
Tips and tricks
ExamplesExamples
Use a button only to send a signal
You can either use a spinner, or up and down arrows from the Icons tab in the widget library.
A button can be used just to send a signal, without changing the button's state or visual appearance.
As an example, use the All lights on button to switch on all lights. Do not change the button's color from gray to blue, but update the other light controls to reflect the true status of the room.
A button that does not change color
(from gray to blue) when used
Consider the following strategy:
• Tilt the slides as response to a short press on a direction arrow. If tilted all the way, move the blinds up or down incrementally.
• As response to a long press on a direction arrow, start moving the blinds in that direction. They do not stop until all the way up or down.
• Short press any button in order to stop the movement after a long press. Then no separate stop button is necessary.
D15358.01 APRIL 2016
Collaboration Endpoint software
version 8.1
© 2016 Cisco Systems, Inc.
All rights reserved.
43
Group buttons
Table of contents
Introduction
Create a user interface
API for in-room control
Widgets
Command reference
Troubleshooting
Tips and tricks
ExamplesExamples
Group buttons are ideal when you want buttons to be linked, so that only one can be selected at a time. For example room presets.
When the individual buttons in a group are too small to contain the text that describes their function, consider to use text boxes for the description.
D15358.01 APRIL 2016
Collaboration Endpoint software
version 8.1
© 2016 Cisco Systems, Inc.
All rights reserved.
44
Intellectual property rights
Table of contents
Introduction
Create a user interface
API for in-room control
Widgets
Command reference
Troubleshooting
Tips and tricks
Examples
THE SPECIFICATIONS AND INFORMATION REGARDING THE PRODUCTS IN THIS MANUAL ARE SUBJECT TO CHANGE WITHOUT NOTICE. ALL STATEMENTS, INFORMATION, AND RECOMMENDATIONS IN THIS MANUAL ARE BELIEVED TO BE ACCURATE BUT ARE PRESENTED WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED. USERS MUST TAKE FULL RESPONSIBILITY FOR THEIR APPLICATION OF ANY PRODUCTS.
THE SOFTWARE LICENSE AND LIMITED WARRANTY FOR THE ACCOMPANYING PRODUCT ARE SET FORTH IN THE INFORMATION PACKET THAT SHIPPED WITH THE PRODUCT AND ARE INCORPORATED HEREIN BY THIS REFERENCE. IF YOU ARE UNABLE TO LOCATE THE SOFTWARE LICENSE OR LIMITED WARRANTY, CONTACT YOUR CISCO REPRESENTATIVE FOR A COPY.
The Cisco implementation of TCP header compression is an adaptation of a program developed by the University of California, Berkeley (UCB) as part of UCB’s public domain version of the UNIX operating system. All rights reserved. Copyright © 1981, Regents of the University of California.
Cisco contacts
On our web site you will find an overview of the worldwide Cisco contacts.
Go to: http://www.cisco.com/go/offices
Corporate Headquarters
Cisco Systems, Inc.
170 West Tasman Dr.
San Jose, CA 95134 USA
NOTWITHSTANDING ANY OTHER WARRANTY HEREIN, ALL DOCUMENT FILES AND SOFTWARE OF THESE SUPPLIERS ARE PROVIDED “AS IS” WITH ALL FAULTS. CISCO AND THE ABOVE­NAMED SUPPLIERS DISCLAIM ALL WARRANTIES, EXPRESSED OR IMPLIED, INCLUDING, WITHOUT LIMITATION, THOSE OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OR ARISING FROM A COURSE OF DEALING, USAGE, OR TRADE PRACTICE.
IN NO EVENT SHALL CISCO OR ITS SUPPLIERS BE LIABLE FOR ANY INDIRECT, SPECIAL, CONSEQUENTIAL, OR INCIDENTAL DAMAGES, INCLUDING, WITHOUT LIMITATION, LOST PROFITS OR LOSS OR DAMAGE TO DATA ARISING OUT OF THE USE OR INABILITY TO USE THIS MANUAL, EVEN IF CISCO OR ITS SUPPLIERS HAVE BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.
Any Internet Protocol (IP) addresses and phone numbers used in this document are not intended to be actual addresses and phone numbers. Any examples, command display output, network topology diagrams, and other figures included in the document are shown for illustrative purposes only. Any use of actual IP addresses or phone numbers in illustrative content is unintentional and coincidental.
D15358.01 APRIL 2016
Collaboration Endpoint software
version 8.1
© 2016 Cisco Systems, Inc.
All rights reserved.
All printed copies and duplicate soft copies are considered un-Controlled copies and the original on-line version should be referred to for latest version.
Cisco has more than 200 offices worldwide. Addresses, phone numbers, and fax numbers are listed on the Cisco website at www.cisco.com/go/ offices.
Cisco and the Cisco logo are trademarks or registered trademarks of Cisco and/or its affiliates in the U.S. and other countries. To view a list of Cisco trademarks, go to this URL: www.cisco.com/ go/trademarks. Third-party trademarks mentioned are the property of their respective owners. The use of the word partner does not imply a partnership relationship between Cisco and any other company. (1110R)
45
Loading...