Device

The DEVICE Instance Tag is case sensitive and must be in capital letters. It is used to send Device Services instructions or Device Attributes and Commands.

Device Services

The Following table summarizes DEVICE Service Codes. Due to the nature of the service being requested they do not require specific commands (get, set, etc)

Some service commands are specific to the connected device, such as 'reboot'. Other Service commands are design file specific, such as saving or recalling a Preset.

The TTP string is structured in the following order:

Instance_Tag Service [Value]

 

Description Service Value
Reboot Device you are connected to via SSH or Telnet reboot  
Reset Device you are connected to via SSH or Telnet deleteConfigData  
Reboot Expander class device rebootERD ["hostname", "2nd hostname", "etc"]
Recall a Preset recallPreset Preset ID (Integer)
Recall a Preset and provide device for failures recallPresetShowFailures Preset ID (Integer)
Recall a preset by preset name recallPresetByName Preset name (a string)
Save a Preset savePreset Preset ID (Integer)
Save a preset by preset name savePresetByName Preset name (a string)
Start System Audio startAudio  
Stop System Audio stopAudio  
Start Partition Audio startPartitionAudio Partition ID (integer)
Stop Partition Audio stopPartitionAudio Partition ID (integer)

 

Examples:

To reboot the device you are connected to:

Instance Tag Service
DEVICE reboot

Result: DEVICE reboot

To start Audio on a device:

Instance Tag Service
DEVICE startAudio

Result: DEVICE startAudio

To reboot multiple expander devices.

Instance Tag Service
DEVICE rebootERD ["EX-OUT-0000", "EX-IN-0001", EX-AEC-0001]

Result if all expanders are discoverable and accept the reboot command: +OK "failedDevices":[ ]

Result if all but the EX-IN expander are discoverable and accept the reboot command: +OK "failedDevices":["EX-IN-0001"]

 

Device Attributes and Commands

Additionally there are a number of DEVICE Instance Tag command Attributes. These would reference the device that has the current active Serial, SSH or TELNET session.

Please refer to the TTP Overview section for more details on the controlling Tesira devices using the TTP protocol.

Each element of the command instruction is delimited by one or more spaces. The commands are case sensitive and upper and lower case characters are used.

The TTP string to adjust a DSP object attribute is structured in the following order:

Instance_Tag Command Attribute [Index] [Value] LF

 

Reason Code
Attribute Code
Command
Indexes
Value Range
Active Faults activeFaultList get    
AVB Peer Delay Threshold avbPDelayThreshold get set increment decrement   0 - 2,147,483,647
Discovered Servers discoveredServers get    
DNS Config dnsConfig get/set    
DNS Status dnsStatus get    
Remote Device AVB Peer Delay Threshold ERDavbPDelayThreshold get set increment decrement hostname 0 - 2,147,483,647
Enable RSTP on a device
rstpEnabled
 
get set toggle    
Host Name hostname get/set   *Host Name modification will not be available unless the device is in an un-configured state. Attempting to modify the Host Name via this command will result in an error message if the system is currently configured. A reset of the device is required to make changes to the Host Name first (DEVICE deleteConfigData command or a Reset Device via Device Maintenance). In the scenario where a system is configured and is Reset to change the Host Name, the Equipment Table will need to be re-opened and updated to reflect the new details, and the configuration re-sent to the system.
Resolver Hosts Table hostTable get/set    
Network Interface Config ipConfig get/set interface name control
Network Interface Status ipStatus get interface name control
mDNS Enabled mDNSEnabled get/set toggle   false true
Network Status networkStatus get    
Serial Number serialNumber get    
Telnet telnetDisabled get/set   false true

SSH

sshDisabled get/set   false true
Firmware Version version get    
Network Port Information networkPortInfo get    
PTP Information

ptpInfo

get    
POE Information poeInfo get    
Enable POE poeEnabled get/set port name false true
MSRP Information msrpInfo get    
Dante

danteInfo

get    

 

Instance Tag Command Attribute Code
DEVICE get serialNumber

Example
DEVICE get serialNumber   +OK "value":"01842224"

Example
DEVICE get networkStatus   +OK "value":{"schemaVersion":2 "hostname":"TesiraServer91" "defaultGatewayStatus":"0.0.0.0" "networkInterfaceStatusWithName":[{"interfaceId":"control" "networkInterfaceStatus":{"macAddress":"00:90:5e:13:3b:27" "linkStatus":LINK_1_GB "addressSource":STATIC "ip":"10.30.150.62" "netmask":"255.255.0.0" "dhcpLeaseObtainedDate":"" "dhcpLeaseExpiresDate":"" "gateway":"0.0.0.0"}}] "dnsStatus":{"primaryDNSServer":"0.0.0.0" "secondaryDNSServer":"0.0.0.0" "domainName":""} "mDNSEnabled":true" telnetDisabled":false}

 

ipConfig commands

The ipConfig command can set the DHCP state, IP address, Subnet mask and Gateway on a Tesira Server, Server IO and TesiraFORTÉ device. Only values that need to be changed are required to be specified.

To get the IP configuration of a device:

Instance Tag Command Attribute Code Index
DEVICE get ipConfig s control

Example
DEVICE get ipConfig control +OK "value":{"autoIPEnabled":true "ip":"" "netmask":"" "gateway":""}

 

To set a device to not use DHCP and with an IP address of 192.168.1.210, a subnet of 255.255.255.0 and no gateway:

Example
DEVICE set ipConfig control {"autoIPEnabled":false "ip":"192.168.1.210" "netmask":"255.255.255.0" "gateway":"0.0.0.0"}

 

To set a device that is using a fixed IP address to use DHCP:

Example
DEVICE set ipConfig control {"autoIPEnabled":true }

 

To change a device IP address to a new address in the same subnet (this example moves a device from 192.168.1.210 to 192.168.1.110) :

Example
DEVICE set ipConfig control { "ip":"192.168.1.110" }


To retrieve port status information for all ports:

Example

DEVICE get networkPortInfo

 +OK "networkPortInfo":[{"name":"P5" "linkUp":true "speed":1000 "statistics":[{"t":RX_PACKETS "v":2129} {"t":TX_PACKETS "v":1922} {"t":RX_MULTICAST_PACKETS "v":18101} {"t":TX_MULTICAST_PACKETS "v":9549} {"t":RX_BAD_PACKETS "v":0} {"t":PORT_UP_COUNTER "v":1} {"t":PORT_DOWN_COUNTER "v":0}] "info":[{"t":LLDP_HOSTNAME "v":"ICX6450-48P Switch"} {"t":LLDP_PORTNAME "v":"P5"}] "portRole":PORT_ROLE_DANTE_ONLY} {"name":"P4" "linkUp":true "speed":100 "statistics":[{"t":RX_PACKETS "v":524} {"t":TX_PACKETS "v":528} {"t":RX_MULTICAST_PACKETS "v":1029} {"t":TX_MULTICAST_PACKETS "v":25477} {"t":RX_BAD_PACKETS "v":0} {"t":PORT_UP_COUNTER "v":1} {"t":PORT_DOWN_COUNTER "v":0}] "info":[] "portRole":PORT_ROLE_DANTE_ONLY} {"name":"P3" "linkUp":true "speed":100 "statistics":[{"t":RX_PACKETS "v":473} {"t":TX_PACKETS "v":502} {"t":RX_MULTICAST_PACKETS "v":1020} {"t":TX_MULTICAST_PACKETS "v":25486} {"t":RX_BAD_PACKETS "v":0} {"t":PORT_UP_COUNTER "v":1} {"t":PORT_DOWN_COUNTER "v":0}] "info":[] "portRole":PORT_ROLE_DANTE_ONLY} {"name":"P2" "linkUp":false "speed":0 "statistics":[{"t":RX_PACKETS "v":0} {"t":TX_PACKETS "v":0} {"t":RX_MULTICAST_PACKETS "v":0} {"t":TX_MULTICAST_PACKETS "v":0} {"t":RX_BAD_PACKETS "v":0} {"t":PORT_UP_COUNTER "v":0} {"t":PORT_DOWN_COUNTER "v":0}] "info":[] "portRole":PORT_ROLE_DANTE_ONLY} {"name":"P1" "linkUp":true "speed":1000 "statistics":[{"t":RX_PACKETS "v":490} {"t":TX_PACKETS "v":612} {"t":RX_MULTICAST_PACKETS "v":20761} {"t":TX_MULTICAST_PACKETS "v":15708} {"t":RX_BAD_PACKETS "v":0} {"t":PORT_UP_COUNTER "v":1} {"t":PORT_DOWN_COUNTER "v":0}] "info":[{"t":LLDP_DESCRIPTION "v":"ExtremeXOS (X440-24p) version 16.2.2.4 16.2.2.4-patch1-3 by release-manager on Fri Feb 17 08:00:10 EST 2017"} {"t":LLDP_PORTNAME "v":"P1"}] "portRole":PORT_ROLE_AVB_ONLY} {"name":"control" "linkUp":true "speed":1000 "statistics":[{"t":RX_PACKETS "v":0} {"t":TX_PACKETS "v":13} {"t":RX_MULTICAST_PACKETS "v":3173} {"t":TX_MULTICAST_PACKETS "v":44336} {"t":RX_BAD_PACKETS "v":0} {"t":PORT_UP_COUNTER "v":0} {"t":PORT_DOWN_COUNTER "v":0}] "info":[] "portRole":INVALID PortRoleType}]

 

To get ptp information for all ports:

Example

DEVICE get ptpInfo

+OK "gptpInfo":[{"GMID":{"id":[120 69 1 255 254 5 86 102]} "thisSystemIsGM":false "stepsRemoved":4 "priority":{"priority1":246 "priority2":248} "neighborPropDelayThreshholdNs":1200 "portInfo":[{"name":"P5" "asCapable":false "locked":false "role":PTP_PORT_DISABLED "neighborPropDelayNs":0} {"name":"P4" "asCapable":false "locked":false "role":PTP_PORT_DISABLED "neighborPropDelayNs":0} {"name":"P3" "asCapable":false "locked":false "role":PTP_PORT_DISABLED "neighborPropDelayNs":0} {"name":"P2" "asCapable":false "locked":false "role":PTP_PORT_DISABLED "neighborPropDelayNs":0} {"name":"P1" "asCapable":true "locked":true "role":PTP_PORT_SLAVE "neighborPropDelayNs":555} {"name":"control" "asCapable":true "locked":true "role":PTP_PORT_MASTER "neighborPropDelayNs":12}]}]

 

To enable/disable POE on the specified port:

Example

DEVICE set poeEnabled "P2" true

+OK

DEVICE set poeEnabled "P2" false

+OK

DEVICE get poeEnabled "P2"

+OK "enabled":true

DEVICE get msrpInfo

+OK "msrpInfo":[{"portNames":["P5" "P4" "P3" "P2" "P1" "control"] "streamInfo":[]}]

 

To get Dante information for all ports:

Example

DEVICE get danteInfo

 +OK "danteInfo":{"revs":{"danteAPIVersion_major":4 "danteAPIVersion_minor":2 "danteAPIVersion_bugfix":2 "ubootVersion_major":0 "ubootVersion_minor":0 "ubootVersion_bugfix":0 "biampVersion_major":1 "biampVersion_minor":3 "biampVersion_dot":0 "biampVersion_build":1} "netCfg":{"hostname":"TesiraConnect04067397-DAN" "primaryInterface":{"autoConfigure":true "ipAddress":"192.168.1.226" "netMask":"255.255.255.0" "DNSServer":"0.0.0.0" "defaultGateway":"192.168.1.200"} "secondaryInterface":{"autoConfigure":true "ipAddress":"192.168.1.226" "netMask":"255.255.255.0" "DNSServer":"0.0.0.0" "defaultGateway":"192.168.1.200"}} "allNetStatus":{"primaryStatus":{"macAddress":"78:45:01:07:df:7e" "linkSpeedInMbS":1000} "secondaryStatus":{"macAddress":"" "linkSpeedInMbS":0}} "preferredDanteNetworkClockSource":true "networkClockSlaveOnly":false "networkLatencyInMicroseconds":0 "chInfos":[{"name":"" "number":0 "txrx":TX "faultOnInactive":false} {"name":"" "number":1 "txrx":TX "faultOnInactive":false} {"name":"" "number":2 "txrx":TX "faultOnInactive":false} {"name":"" "number":3 "txrx":TX "faultOnInactive":false} {"name":"" "number":4 "txrx":TX "faultOnInactive":false} {"name":"" "number":5 "txrx":TX "faultOnInactive":false} {"name":"" "number":6 "txrx":TX "faultOnInactive":false} {"name":"" "number":7 "txrx":TX "faultOnInactive":false} {"name":"" "number":8 "txrx":TX "faultOnInactive":false} {"name":"" "number":9 "txrx":TX "faultOnInactive":false} {"name":"" "number":10 "txrx":TX "faultOnInactive":false} {"name":"" "number":11 "txrx":TX "faultOnInactive":false} {"name":"" "number":12 "txrx":TX "faultOnInactive":false} {"name":"" "number":13 "txrx":TX "faultOnInactive":false} {"name":"" "number":14 "txrx":TX "faultOnInactive":false} {"name":"" "number":15 "txrx":TX "faultOnInactive":false} {"name":"" "number":16 "txrx":TX "faultOnInactive":false} {"name":"" "number":17 "txrx":TX "faultOnInactive":false} {"name":"" "number":18 "txrx":TX "faultOnInactive":false} {"name":"" "number":19 "txrx":TX "faultOnInactive":false} {"name":"" "number":20 "txrx":TX "faultOnInactive":false} {"name":"" "number":21 "txrx":TX "faultOnInactive":false} {"name":"" "number":22 "txrx":TX "faultOnInactive":false} {"name":"" "number":23 "txrx":TX "faultOnInactive":false} {"name":"" "number":24 "txrx":TX "faultOnInactive":false} {"name":"" "number":25 "txrx":TX "faultOnInactive":false} {"name":"" "number":26 "txrx":TX "faultOnInactive":false} {"name":"" "number":27 "txrx":TX "faultOnInactive":false} {"name":"" "number":28 "txrx":TX "faultOnInactive":false} {"name":"" "number":29 "txrx":TX "faultOnInactive":false} {"name":"" "number":30 "txrx":TX "faultOnInactive":false} {"name":"" "number":31 "txrx":TX "faultOnInactive":false} {"name":"01" "number":0 "txrx":RX "faultOnInactive":false} {"name":"02" "number":1 "txrx":RX "faultOnInactive":false} {"name":"03" "number":2 "txrx":RX "faultOnInactive":false} {"name":"04" "number":3 "txrx":RX "faultOnInactive":false} {"name":"05" "number":4 "txrx":RX "faultOnInactive":false} {"name":"06" "number":5 "txrx":RX "faultOnInactive":false} {"name":"07" "number":6 "txrx":RX "faultOnInactive":false} {"name":"08" "number":7 "txrx":RX "faultOnInactive":false} {"name":"09" "number":8 "txrx":RX "faultOnInactive":false} {"name":"10" "number":9 "txrx":RX "faultOnInactive":false} {"name":"11" "number":10 "txrx":RX "faultOnInactive":false} {"name":"12" "number":11 "txrx":RX "faultOnInactive":false} {"name":"13" "number":12 "txrx":RX "faultOnInactive":false} {"name":"14" "number":13 "txrx":RX "faultOnInactive":false} {"name":"15" "number":14 "txrx":RX "faultOnInactive":false} {"name":"16" "number":15 "txrx":RX "faultOnInactive":false} {"name":"17" "number":16 "txrx":RX "faultOnInactive":false} {"name":"18" "number":17 "txrx":RX "faultOnInactive":false} {"name":"19" "number":18 "txrx":RX "faultOnInactive":false} {"name":"20" "number":19 "txrx":RX "faultOnInactive":false} {"name":"21" "number":20 "txrx":RX "faultOnInactive":false} {"name":"22" "number":21 "txrx":RX "faultOnInactive":false} {"name":"23" "number":22 "txrx":RX "faultOnInactive":false} {"name":"24" "number":23 "txrx":RX "faultOnInactive":false} {"name":"25" "number":24 "txrx":RX "faultOnInactive":false} {"name":"26" "number":25 "txrx":RX "faultOnInactive":false} {"name":"27" "number":26 "txrx":RX "faultOnInactive":false} {"name":"28" "number":27 "txrx":RX "faultOnInactive":false} {"name":"29" "number":28 "txrx":RX "faultOnInactive":false} {"name":"30" "number":29 "txrx":RX "faultOnInactive":false} {"name":"31" "number":30 "txrx":RX "faultOnInactive":false} {"name":"32" "number":31 "txrx":RX "faultOnInactive":false}]}