Professional Documents
Culture Documents
AppearTV SOAP XML API
AppearTV SOAP XML API
Version 3.4
Page 1 of 172
Table of Contents
1 Overview............................................................................................9
2 System ............................................................................................. 12
2.9 exportConfiguration................................................................................. 22
2.17 getAlarmFilter......................................................................................... 30
2.21 removeMissingCards................................................................................ 35
Page 2 of 172
2.25 getRedundancySwTriggers ....................................................................... 38
3 Processing ....................................................................................... 40
4 Redundancy ..................................................................................... 46
4.7 removeInputPortRedundancy.................................................................... 52
4.8 forceInputSwitch..................................................................................... 52
5 Input................................................................................................ 57
Page 3 of 172
5.6 getQPSKStatus ....................................................................................... 61
5.10 setCOFDMInputConfig.............................................................................. 67
5.28 removeIPInputConfig............................................................................... 81
Page 4 of 172
6 Scrambling ....................................................................................... 88
6.1 defineECMG............................................................................................ 88
6.2 removeECMG.......................................................................................... 89
6.19 removeBissKeys...................................................................................... 98
6.20 setEisInterface........................................................................................ 99
Page 5 of 172
7.5 removeVmtxServerSettings .................................................................... 105
Page 6 of 172
9.16 getASIOutStatus ................................................................................... 136
Page 7 of 172
9.44 getPsiDomain ....................................................................................... 168
Page 8 of 172
1 Overview
This document describes the automation interface for controlling the Appear TV SC2000
streamer. The interface uses two industry standards: HTTP/1.11 as the transport protocol
and SOAP 1.22 as the message format.
Many of the methods described under the web service interface either requires or
responds with a list data type. This enables a more efficient transfer of information to
and from the system, by reducing the amount of calls needed to set up multiple entries.
The list data types usually consist of a list body with listEntry members. If
necessary, the listEntry may contain more list data types.
<list>
<listEntry>
<data/>
</listEntry>
<listEntry>
<data/>
</listEntry>
</list>
Methods using lists to set multiple configuration entries return a single result. If the
method fails, the error code returned will represent the first error that has occurred; no
configuration change is made.
List entries used in a get scenario are often reused in a complementary set scenario.
Parameters that are the same are documented once in either of these two scenarios.
Phase 1 being the definition of all static configurations. Like IP addresses, input
card configuration and definition of external equipment references such as
scrambling systems, etc.
1
http://www.w3.org/Protocols/rfc2616/rfc2616.html
2
http://www.w3.org/TR/2003/REC-soap12-part1-20030624/ and
http://www.w3.org/TR/2003/REC-soap12-part2-20030624/
Page 9 of 172
Configuration of digital outputs has the following logical structure:
setOutputPort: Define the output port attributes, i.e., multicast addresses, QAM
frequencies, etc. Each output interface type has a unique SOAP function.
setTransport: Define all transport level attributes – a common function for all
digital output types.
setService: Define all service related parameters – a common function for all
digital output types. This function is frequently used as most parameters are
service related.
The structure of the SOAP functions is similar to the Web GUI as Appear TV believes that
the Web GUI is intuitive and has a well defined structure. However, the SOAP functions
are not a mirror of the Web GUI, and will not always have the exact structure.
Accesses should be done serially, not in parallel. Only one SOAP call should be
used at the time for each unit. If the calls time out, a “soap buzy” error message
is returned.
Error messages
There are two types of error messages. The first are errors that occur during xml
parsing, problems waiting for access, and database errors. The second are errors that
occur later.
The first type returns a “Fault” element with the error message:
<?xml version="1.0"?>
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
<env:Body>
<env:Fault>
<env:Code>
<env:Value>env:Receiver</env:Value>
</env:Code>
<env:Reason>
<env:Text xml:lang="en">soap buzy</env:Text>
</env:Reason>
Page 10 of 172
</env:Fault>
</env:Body>
</env:Envelope>
The second type returns a response message with a code different from 100:
<?xml version="1.0"?>
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
<env:Body>
<setServiceResponse xmlns="http://www.appeartv.com/automation/v1">
<code>201</code>
<message>Invalid slot id: slotId 15 not a valid output card
type</message>
</setServiceResponse>
</env:Body>
</env:Envelope>
Page 11 of 172
2 System
2.1 getLastUpdateTime
This method returns the time of the last configuration change. This can be used to
discover when somebody has changed the configuration either through SOAP or through
the GUI. The recommended usage is to poll for the getLastUpdateTime, and whenever it
changes, reread all the configuration settings.
Query
<?xml version="1.0"?>
<soap:Envelope xmlns:soap="http://www.w3.org/2003/05/soap-envelope">
<soap:Body>
<getLastUpdateTime xmlns="http://www.appeartv.com/automation/v1">
</getLastUpdateTime>
</soap:Body>
</soap:Envelope>
Response
<?xml version="1.0"?>
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
<env:Body>
<getLastUpdateTimeResponse
xmlns="http://www.appeartv.com/automation/v1">
<code>100</code>
<message>OK</message>
<time>2010-12-10 15:34:57</time>
</getLastUpdateTimeResponse>
</env:Body>
</env:Envelope>
Page 12 of 172
2.2 getModuleList
This method returns a list of all functional modules in the system. There are no input
parameters for this method.
The return message contains the result status and a list of all modules present in the
system. The following parameters are returned for each module present:
TV mode association
A module will always be either an input or an output but never both simultaneously. The
slotId (or serial number) is not required to be unique, allowing multiple roles for one
board. For instance, the scs and scrambler roles exist both on separate boards and, in
later generations, on one board performing both functions.
Page 13 of 172
Query
<?xml version="1.0"?>
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:soap="http://www.w3.org/2003/05/soap-envelope">
<soap:Body>
<getModuleList xmlns="http://www.appeartv.com/automation/v1">
</getModuleList>
</soap:Body>
</soap:Envelope>
Response
<?xml version="1.0"?>
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:soap=”http://www.w3.org/2003/05/soap-envelope”>
<soap:Body>
<getModuleListResponse xmlns="http://www.appeartv.com/automation/v1">
<code>100</code>
<message>OK</message>
<moduleList>
<moduleListEntry>
<slotId>1</slotId>
<moduleType>asi</moduleType>
<direction>input</direction>
<hardwareVersion>1.0</hardwareVersion>
<numPorts>3</numPorts>
<swVer>1.06.3000</swVer>
<bootVer>1.0.1784</bootVer>
<serial>62600124</serial>
<cardWidth>2</cardWidth>
<present>1</present>
<ddmOptions>
<ciOption>1</ciOption>
<rfOption>1</rfOption>
<hpOption>0</hpOption>
<stereoOption>none</stereoOption>
</ddmOptions>
</moduleListEntry>
</moduleList>
</getModuleListResponse>
</soap:Body>
</soap:Envelope>
Page 14 of 172
2.3 getAdminConfig
This method returns the admin IP settings for all modules in the system. If slotId is
used as input parameter to this method, only the selected module will be displayed.
The response message contains a list of configurations with a dataPort section if the
module has a data port and managementPort if the card has a management port.
Request:
Page 15 of 172
Settings for vlanList:
Query
<?xml version="1.0"?>
<soap:Envelope xmlns:soap="http://www.w3.org/2003/05/soap-envelope">
<soap:Body>
<getAdminConfig xmlns="http://www.appeartv.com/automation/v1">
<slotId>2</slotId>
</getAdminConfig>
</soap:Body>
</soap:Envelope>
Response
<?xml version="1.0"?>
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
<env:Body>
<getAdminConfigResponse xmlns="http://www.appeartv.com/automation/v1">
<code>100</code>
<message>OK</message>
<adminConfigList>
<adminConfigListEntry>
<slotId>2</slotId>
<controlPort>
<ipAddress>10.10.10.173</ipAddress>
<gatewayAddress>10.10.10.1</gatewayAddress>
<subnetMask>255.255.255.0</subnetMask>
</controlPort>
<dataPort>
<ipAddress>172.21.124.2</ipAddress>
<gatewayAddress>172.21.124.1</gatewayAddress>
<subnetMask>255.255.255.248</subnetMask>
<linkSpeed>AUTO</linkSpeed>
<currentLinkSpeed>1000</currentLinkSpeed>
</dataPort>
</adminConfigListEntry>
<adminConfigListEntry>
<slotId>3</slotId>
<controlPort>
Page 16 of 172
<ipAddress>10.10.10.174</ipAddress>
<gatewayAddress>10.10.10.1</gatewayAddress>
<subnetMask>255.255.255.0</subnetMask>
</controlPort>
<dataPort>
<ipAddress>10.10.41.11</ipAddress>
<gatewayAddress>10.10.41.1</gatewayAddress>
<subnetMask>255.255.255.0</subnetMask>
<linkSpeed>AUTO</linkSpeed>
<currentLinkSpeed>1000</currentLinkSpeed>
<vlanList>
<vlanListEntry>
<vlanId>1</vlanId>
<vlanTag>1</vlanTag>
<name>main</name>
<ipAddress>10.10.10.10</ipAddress>
<gatewayAddress>10.10.10.1</gatewayAddress>
<subnetMask>255.255.255.0</subnetMask>
</vlanListEntry>
</vlanList>
</dataPort>
</adminConfigListEntry>
<adminConfigListEntry>
<slotId>5</slotId>
<controlPort>
<ipAddress>10.10.42.18</ipAddress>
<gatewayAddress>10.10.42.1</gatewayAddress>
<subnetMask>255.255.255.0</subnetMask>
</controlPort>
</adminConfigListEntry>
<adminConfigListEntry>
<slotId>6</slotId>
<managementPort>
<port>Control Port</port>
</managementPort>
<controlPort>
<ipAddress>10.10.40.11</ipAddress>
<gatewayAddress>10.10.40.1</gatewayAddress>
<subnetMask>255.255.255.0</subnetMask>
</controlPort>
</adminConfigListEntry>
</adminConfigList>
</getAdminConfigResponse>
</env:Body>
</env:Envelope>
2.4 setAdminConfig
This method uses the same settings as getAdminConfig, but the IP addresses are not
optional and the currentLinkSpeed is not settable.
2.5 getOptionalLanguages
This method returns the list of optional languages. There are no input parameters to this
method.
Page 17 of 172
languageCode A three letter language code.
Query
<?xml version="1.0"?>
<soap:Envelope xmlns:soap="http://www.w3.org/2003/05/soap-envelope">
<soap:Body>
<getOptionalLanguages
xmlns="http://www.appeartv.com/automation/v1">
</getOptionalLanguages>
</soap:Body>
</soap:Envelope>
Response
<?xml version="1.0"?>
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
<env:Body>
<getOptionalLanguagesResponse
xmlns="http://www.appeartv.com/automation/v1">
<code>100</code>
<message>OK</message>
<optionalLanguagesList>
<languageListEntry>
<languageCode>nor</languageCode>
</languageListEntry>
<languageListEntry>
<languageCode>eng</languageCode>
</languageListEntry>
</optionalLanguagesList>
</getOptionalLanguagesResponse>
</env:Body>
</env:Envelope>
2.6 setOptionalLanguages
This method sets the optional languages. It uses the same optionalLanguagesList as
is returned from getOptionalLanguages.
2.7 getLicenses
This method returns a list of licenses for all modules in the system. There are no input
parameters for this method.
The return message contains a list of features with the following return parameters:
Page 18 of 172
type Represents a license type
slot Position of the module in the chassis
installed Determines if there is a license installed or not (yes or no)
value Optional parameter, represents additional attribute of the
license
Query
<?xml version="1.0"?>
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
<env:Body>
<getLicenses xmlns="http://www.appeartv.com/automation/v1">
</getLicenses>
</env:Body>
</env:Envelope>
Response
<?xmlversion="1.0"?>
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
<env:Body>
<getLicensesResponsexmlns="http://www.appeartv.com/automation/v1">
<code>100</code>
<message>OK</message>
<licenseList>
<feature>
<type>output-redundancy</type>
<slot>14</slot>
<installed>yes</installed>
</feature>
<feature>
<type>number-of-scrambled-services</type>
<slot>16</slot>
<installed>yes</installed>
<value>500</value>
</feature>
</licenseList>
</getLicensesResponse>
</env:Body></env:Envelope>
Page 19 of 172
2.8 installLicense
This method installs a new license file. Space matters for this file, and any change of the
file will corrupt it. Therefore it must be sent as CDATA inside the installLicense
element.
Query
Response
<?xmlversion="1.0"?>
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
<env:Body>
<installLicenseResponse xmlns="http://www.appeartv.com/automation/v1">
<code>100</code>
<message>OK</message>
</installLicenseResponse>
</env:Body></env:Envelope>
Page 20 of 172
Here is an example of a bash script to send license files using SOAP:
#!/bin/bash
if [[ $# != 2 ]]
then
echo "usage: `basename $0` <ip address/hostname> <license file name>" > /dev/stderr
exit 1
fi
HOST=${1}
LICENSEFILE=${2}
TIME=`date +%FT%T.%N`
TMPFILE=tmp-${TIME}.bin
if [ ! -f ${LICENSEFILE} ]
then
echo "`basename $0`: license file ${LICENSEFILE} does not exist" > /dev/stderr
exit 1
fi
Page 21 of 172
2.9 exportConfiguration
This method returns an element named configuration, which contains the entire
configuration for the unit in its subelements.
Query
<?xml version="1.0"?>
<soap:Envelope xmlns:soap="http://www.w3.org/2003/05/soap-envelope">
<soap:Body>
<exportConfiguration xmlns="http://www.appeartv.com/automation/v1">
</exportConfiguration>
</soap:Body>
</soap:Envelope>
Response
Page 22 of 172
2.10 importConfiguration
This method imports a configuration into a unit. It contains the configuration in the
configuration element which it has extracted from the
exportConfigurationResponse. It also takes the argument includeLocalIpAddresses
which must be true to import the IP addresses from the file. The MMI address is never
changed though.
Query
Response
<?xml version="1.0"?>
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
<env:Body>
<importConfigurationResponse
xmlns="http://www.appeartv.com/automation/v1">
<code>100</code>
<message>OK</message>
</importConfigurationResponse>
</env:Body>
</env:Envelope>
Page 23 of 172
2.11 getAlarmList
This method returns a list of all alarms, Active alarms or History alarms in the system.
Option is the optional parameter for this method.
The return message contains a list of all Active or History alarms present in the
system, depending on the value of Option (either Active or History). The default value
is Active.
Query
<?xml version="1.0"?>
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
<env:Body>
<getAlarmList xmlns="http://www.appeartv.com/automation/v1">
<option>Active</option>
</getAlarmList>
</env:Body>
</env:Envelope>
Page 24 of 172
Response
<?xml version="1.0"?>
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
<env:Body>
<getAlarmListResponse xmlns="http://www.appeartv.com/automation/v1">
<code>100</code>
<message>OK</message>
<alarmList>
<alarmListEntry>
<msgSlot>2</msgSlot>
<msgPort>B</msgPort>
<msgId>2883585</msgId>
<msgText>PMT Missing: Service 28107</msgText>
<msgSourceName>PSI</msgSourceName>
<msgSeverity>CRITICAL</msgSeverity>
<msgInstance>28107</msgInstance>
<msgSetTime>2009-01-19 00:08:07</msgSetTime>
</alarmListEntry>
</alarmList>
</getAlarmListResponse>
</env:Body>
</env:Envelope>
2.12 getAlarmTypes
This method returns a list of all alarms that the different modules on a unit can
generate.
Query
<?xml version="1.0"?>
<soap:Envelope xmlns:soap="http://www.w3.org/2003/05/soap-envelope">
<soap:Body>
<getAlarmTypes xmlns="http://www.appeartv.com/automation/v1">
</getAlarmTypes>
</soap:Body>
</soap:Envelope>
Page 25 of 172
Response
<?xml version="1.0"?>
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
<env:Body>
<getAlarmTypesResponse xmlns="http://www.appeartv.com/automation/v1">
<code>100</code>
<message>OK</message>
<alarmTypeList>
…
<alarmTypeListEntry>
<msgId>131072</msgId>
<msgSourceName>DDM</msgSourceName>
<msgText>FPGA TS packet overflow</msgText>
<msgSeverity>CRITICAL</msgSeverity>
</alarmTypeListEntry>
…
</alarmTypeList>
</getAlarmTypesResponse>
</env:Body>
</env:Envelope>
2.13 getAlarmRootCauseFilter
This method tells if the alarm root cause filter is enabled.
Query
<?xml version="1.0"?>
<soap:Envelope xmlns:soap="http://www.w3.org/2003/05/soap-envelope">
<soap:Body>
<getAlarmRootCauseFilter
xmlns="http://www.appeartv.com/automation/v1">
</getAlarmRootCauseFilter >
</soap:Body>
</soap:Envelope>
Response
<?xml version="1.0"?>
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
<env:Body>
<getAlarmRootCauseFilterResponse
xmlns="http://www.appeartv.com/automation/v1">
<code>100</code>
<message>OK</message>
Page 26 of 172
<enable>1</enable>
</getAlarmRootCauseFilterResponse>
</env:Body>
</env:Envelope>
2.14 setAlarmRootCauseFilter
This method enables or disables the alarm root cause filter.
Query
<?xml version="1.0"?>
<soap:Envelope xmlns:soap="http://www.w3.org/2003/05/soap-envelope">
<soap:Body>
<setAlarmRootCauseFilter
xmlns="http://www.appeartv.com/automation/v1">
<enable>1</enable>
</setAlarmRootCauseFilter>
</soap:Body>
</soap:Envelope>
Response
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
<env:Body>
<setAlarmRootCauseFilterResponse
xmlns="http://www.appeartv.com/automation/v1">
<code>100</code>
<message>OK</message>
</setAlarmRootCauseFilterResponse>
</env:Body>
</env:Envelope>
Page 27 of 172
2.15 getAlarmSnmpFilter
This method returns the alarm SNMP filter settings.
Query
<?xml version="1.0"?>
<soap:Envelope xmlns:soap="http://www.w3.org/2003/05/soap-envelope">
<soap:Body>
<getAlarmSnmpFilter xmlns="http://www.appeartv.com/automation/v1">
</getAlarmSnmpFilter>
</soap:Body>
</soap:Envelope>
Response
<?xml version="1.0"?>
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
<env:Body>
<getAlarmSnmpFilterResponse
xmlns="http://www.appeartv.com/automation/v1">
<code>100</code>
<message>OK</message>
<alarmFilterList>
<alarmFilterListEntry>
<msgId>-1</msgId>
<msgSlot>6</msgSlot>
<msgPort>-1</msgPort>
</alarmFilterListEntry>
<alarmFilterListEntry>
<msgId>2686983</msgId>
<msgSlot>-1</msgSlot>
<msgPort>-1</msgPort>
</alarmFilterListEntry>
</alarmFilterList>
</getAlarmSnmpFilterResponse>
</env:Body>
</env:Envelope>
Page 28 of 172
2.16 setAlarmSnmpFilter
This method sets the alarm SNMP filter.
Query
<?xml version="1.0"?>
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
<env:Body>
<setAlarmSnmpFilter xmlns="http://www.appeartv.com/automation/v1">
<alarmFilterList>
<alarmFilterListEntry>
<msgId>131075</msgId>
<msgSlot>-1</msgSlot>
<msgPort>-1</msgPort>
</alarmFilterListEntry>
<alarmFilterListEntry>
<msgId>-1</msgId>
<msgSlot>4</msgSlot>
<msgPort>-1</msgPort>
</alarmFilterListEntry>
<alarmFilterListEntry>
<msgId>2752815</msgId>
<msgSlot>2</msgSlot>
<msgPort>2</msgPort>
</alarmFilterListEntry>
</alarmFilterList>
</setAlarmSnmpFilter>
</env:Body>
</env:Envelope>
Response
<?xml version="1.0"?>
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
<env:Body>
<setAlarmSnmpFilterResponse
xmlns="http://www.appeartv.com/automation/v1">
<code>100</code>
<message>OK</message>
</setAlarmSnmpFilterResponse>
</env:Body>
</env:Envelope>
Page 29 of 172
2.17 getAlarmFilter
This method returns the alarm filter settings.
Query
<?xml version="1.0"?>
<soap:Envelope xmlns:soap="http://www.w3.org/2003/05/soap-envelope">
<soap:Body>
<getAlarmFilter xmlns="http://www.appeartv.com/automation/v1">
</getAlarmFilter>
</soap:Body>
</soap:Envelope>
Response
<?xml version="1.0"?>
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
<env:Body>
<getAlarmFilterResponse xmlns="http://www.appeartv.com/automation/v1">
<code>100</code>
<message>OK</message>
<alarmFilterList>
<alarmFilterListEntry>
<msgId>-1</msgId>
<msgSlot>6</msgSlot>
<msgPort>-1</msgPort>
<msgSeverity>FILTERED</msgSeverity>
</alarmFilterListEntry>
<alarmFilterListEntry>
<msgId>2686983</msgId>
<msgSlot>-1</msgSlot>
<msgPort>-1</msgPort>
<msgSeverity>FILTERED</msgSeverity>
</alarmFilterListEntry>
</alarmFilterList>
</getAlarmFilterResponse>
</env:Body>
</env:Envelope>
Page 30 of 172
2.18 setAlarmFilter
This method sets the alarm filter. If multiple filters apply to the same command, the first
match will be the only one that matters.
Query
<?xml version="1.0"?>
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
<env:Body>
<setAlarmFilter xmlns="http://www.appeartv.com/automation/v1">
<alarmFilterList>
<alarmFilterListEntry>
<msgId>131075</msgId>
<msgSlot>-1</msgSlot>
<msgPort>-1</msgPort>
<msgSeverity>CRITICAL</msgSeverity>
</alarmFilterListEntry>
<alarmFilterListEntry>
<msgId>-1</msgId>
<msgSlot>4</msgSlot>
<msgPort>-1</msgPort>
</alarmFilterListEntry>
<alarmFilterListEntry>
<msgId>2752815</msgId>
<msgSlot>2</msgSlot>
<msgPort>2</msgPort>
<msgSeverity>NOTIFY</msgSeverity>
</alarmFilterListEntry>
</alarmFilterList>
</setAlarmFilter>
</env:Body>
</env:Envelope>
Response
Page 31 of 172
<?xml version="1.0"?>
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
<env:Body>
<setAlarmFilterResponse xmlns="http://www.appeartv.com/automation/v1">
<code>100</code>
<message>OK</message>
</setAlarmFilterResponse>
</env:Body>
</env:Envelope>
2.18 getSnmpTrapDestination
This method returns the SNMP trap destinations.
Query
<?xml version="1.0"?>
<soap:Envelope xmlns:soap="http://www.w3.org/2003/05/soap-envelope">
<soap:Body>
<getSnmpTrapDestination
xmlns="http://www.appeartv.com/automation/v1">
</getSnmpTrapDestination>
</soap:Body>
</soap:Envelope>
Response
<?xml version="1.0"?>
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
<env:Body>
<getSnmpTrapDestinationResponse
xmlns="http://www.appeartv.com/automation/v1">
<code>100</code>
<message>OK</message>
<snmpTrapDestinationList>
<snmpTrapDestinationListEntry>
<id>1</id>
<ipAddress>10.10.50.34</ipAddress>
<community>public</community>
<status>1</status>
</snmpTrapDestinationListEntry>
<snmpTrapDestinationListEntry>
Page 32 of 172
<id>2</id>
<ipAddress>10.10.110.10</ipAddress>
<community>public</community>
<status>0</status>
</snmpTrapDestinationListEntry>
<snmpTrapDestinationListEntry>
<id>3</id>
<ipAddress>0.0.0.0</ipAddress>
<community>public</community>
<status>0</status>
</snmpTrapDestinationListEntry>
<snmpTrapDestinationListEntry>
<id>4</id>
<ipAddress>0.0.0.0</ipAddress>
<community>public</community>
<status>0</status>
</snmpTrapDestinationListEntry>
<snmpTrapDestinationListEntry>
<id>5</id>
<ipAddress>0.0.0.0</ipAddress>
<community>public</community>
<status>0</status>
</snmpTrapDestinationListEntry>
</snmpTrapDestinationList>
</getSnmpTrapDestinationResponse>
</env:Body>
</env:Envelope>
2.19 setSnmpTrapDestination
This method sets all five SNMP trap destinations. The skipped entries are set to
ipAddress=’0.0.0.0.’, community=’public’, and status=0.
Query
<?xml version="1.0"?>
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
<env:Body>
<setSnmpTrapDestination xmlns="http://www.appeartv.com/automation/v1">
<snmpTrapDestinationList>
<snmpTrapDestinationListEntry>
<id>1</id>
<ipAddress>10.10.50.34</ipAddress>
<community>public</community>
<status>1</status>
</snmpTrapDestinationListEntry>
</snmpTrapDestinationList>
</setSnmpTrapDestination>
</env:Body>
</env:Envelope>
Page 33 of 172
Response
<?xml version="1.0"?>
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
<env:Body>
<setAlarmFilterResponse xmlns="http://www.appeartv.com/automation/v1">
<code>100</code>
<message>OK</message>
</setAlarmFilterResponse>
</env:Body>
</env:Envelope>
2.20 getMmiStatus
This method retrieves status information for the MMI module. The return message
contains status information with the following parameters:
Query
<?xml version="1.0"?>
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
<env:Body>
<getMmiStatus xmlns="http://www.appeartv.com/automation/v1">
</getMmiStatus>
</env:Body>
</env:Envelope>
Response
<?xml version="1.0"?>
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
<env:Body>
<getMmiStatusResponse xmlns="http://www.appeartv.com/automation/v1">
<code>100</code>
<message>OK</message>
<mmiStatus>
<slotId>16</slotId>
<module>ipin</module>
<serial>091302740</serial>
<backplane>backup</backplane>
Page 34 of 172
</mmiStatus>
</getMmiStatusResponse>
</env:Body>
</env:Envelope>
2.21 removeMissingCards
This method removes cards that are missing or mismatched from the database and
clears the related card missing and card type mismatch alarms. slotId is the optional
parameter, used to remove one particular missing card from the database instead of all.
Optional parameter:
Query
<?xml version="1.0"?><env:Envelope
xmlns:env="http://www.w3.org/2003/05/soap-envelope">
<env:Body>
<removeMissingCards xmlns="http://www.appeartv.com/automation/v1">
<slotId>14</slotId>
</removeMissingCards>
</env:Body>
</env:Envelope>
Page 35 of 172
2.22 setTimeDate
This method sets the time zone and daylight saving by configuring the admin time and
date parameters. All parameters for this function are optional – in the event that you
want to set only a subset of the values. However, if ntpserver is used, it is not
necessary to set the time and date manually.
The date and time controls the internal reference clock; daylight saving only affects the
presentation of the alarms in the system. It is important to understand that the time
offsets etc. in the TDT/TOT is controlled in a separate function call.
Optional parameters:
It is not possible to set either date or time; both parameters are mandatory.
Query
<?xml version="1.0"?>
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
<env:Body>
<setTimeDate xmlns="http://www.appeartv.com/automation/v1">
<timeAndDate>
<ntpServer>10.110.10.120</ntpServer>
<localTimezone>0</localTimezone>
<daylightSaving>on</daylightSaving>
<date>2009-12-01</date>
<time>02:34:21</time>
</timeAndDate>
</setTimeDate>
</env:Body>
</env:Envelope>
Page 36 of 172
2.23 getTimeDate
This method retrieves the configuration of time zone and daylight saving parameters.
The return message contains a timeAndDate entry with the same format as given in the
setTimeDate method.
2.24 setRedundancySwTriggers
This method is used to set redundancy (input, internal, IP output and CA) alarm triggers.
The method takes a list of alarmListEntry with all redundancy alarm triggers as
parameters
The method has the following parameters:
Id Identifies a particular alarm
Module Identifies alarm module (optional not required for
set function)
alarmDescription Alarm description (optional not required for set
function)
Enable Sets redundancy trigger alarm enable or disable
(1, 0).
Query
Page 37 of 172
2.25 getRedundancySwTriggers
This method is used to retrieve the redundancy (input, internal, IP output and CA)
triggers alarm configuration. The method return message contains a list of
alarmListEntry with all redundancy alarm triggers in the format as given in the
setRedundancySwTriggers method.
2.26 setDeviceName
This method is used to set the device name of the Appear TV device.
Query
2.27 getDeviceName
This method is used to retrieve the Appear TV device name. The method returns a
message containing the name of the Appear TV device in the format as given in the
setDeviceName method.
2.28 setPsiGenerationSettings
This method is used to set PSI Generation Settings. The method takes PSI generation
Settings parameters in the psiGenerationSettings node.
The psiGenerationSettings element contains the following parameters:
Page 38 of 172
Query
<?xml version="1.0"?>
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
<env:Body>
<setPsiGenerationSettings
xmlns="http://www.appeartv.com/automation/v1">
<psiGenerationSettings>
<tableVersioningScheme>normal</tableVersioningScheme>
<caDescriptorPlacement>both</caDescriptorPlacement>
<pmtCaching>on</pmtCaching>
<includeEitSignalingInNit>on</includeEitSignalingInNit>
</psiGenerationSettings>
</setPsiGenerationSettings>
</env:Body>
</env:Envelope>
2.29 getPsiGenerationSettings
This method is used to retrieve the PSI Generation Settings configuration. The method
returns a message containing psiGenerationSettings in the same format as defined in
setPsiGenerationSettings.
Page 39 of 172
3 Processing
Processing modules are defined as modules without an external transport stream
interface. I.e. they receive the streams from the backplane and insert a processed
stream back to the backplane. A typical processing module is the Audio Leveling module.
3.1 setEitSourceSelection
This method sets the EPG’s automatic EIT source selection. The method takes
matchingCriteria and multipleMatchAction as parameters together with an optional
manualEitSourcePidList.
matchingCriteria Three matching criteria: (0=NET ID, TS ID, SID), (1=TS ID,
SID), and (2=SID)
multipleMatchAction Two multiple match actions: (0=stop) and (1=select first
hit)
manualEitSourcePidList manualEitSourcePidList consists of
manualEitSourcePidEntry, described below
Page 40 of 172
Query
<?xml version="1.0"?>
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
<env:Body>
<setEitSourceSelection xmlns="http://www.appeartv.com/automation/v1">
<eitSourceSelection>
<matchingCriteria>2</matchingCriteria>
<multipleMatchAction>0</multipleMatchAction>
<manualEitSourcePidList>
<manualEitSourcePidEntry>
<slotId>1</slotId>
<portId>0</portId>
<pid>10</pid>
</manualEitSourcePidEntry>
<manualEitSourcePidEntry>
<slotId>1</slotId>
<portId>2</portId>
<pid>12</pid>
</manualEitSourcePidEntry>
<manualEitSourcePidEntry>
<slotId>1</slotId>
<portId>3</portId>
<pid>13</pid>
</manualEitSourcePidEntry>
</manualEitSourcePidList>
</eitSourceSelection>
</setEitSourceSelection>
</env:Body>
</env:Envelope>
3.2 getEitSourceSelection
This method retrieves the configuration of automatic EIT source selection. The return
message contains eitSourceSelection entry with the same parameters and format as
given in the setEitSourceSelection method.
Page 41 of 172
3.3 getEpgStatus
This method retrieves EPG status information of all output streams with EPG enabled in
the unit. There are no input parameters for this method.
The return message contains a list of epgStatusEntry. Each entry has the following
parameters:
outputRef parameters:
inputService parameters:
currentEitSource parameters:
Page 42 of 172
netId Network ID
tsID Transport stream ID
Query
<?xml version=”1.0”?>
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
<env:Body>
<getEpgStatus xmlns="http://www.appeartv.com/automation/v1">
</getEpgStatus>
</env:Body>
</env:Envelope>
Response
<?xml version="1.0"?>
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
<env:Body>
<getEpgStatusResponse
xmlns="http://www.appeartv.com/automation/v1">
<epgStatusList>
<epgStatusEntry>
<outputRef>
<slotId>15</slotId>
<portId>7</portId>
<serviceId>1501</serviceId>
<outputType>IP</outputType>
<name>NRK1</name>
</outputRef>
<inputService>
<slotId>1</slotId>
<portId>4</portId>
<serviceId>1501</serviceId>
</inputService>
<currentEitSource>
<slotId>2</slotId>
<portId>2</portId>
<serviceId>1501</serviceId>
<netId>70</netId>
<tsId>35</tsId>
</currentEitSource>
<currentProgram>Med hjartet 2026;</currentProgram>
<validity>3 days 21:47</validity>
<optionalEitSourceList>
<eitSourceEntry>
<slotId>2</slotId>
Page 43 of 172
<portId>3</portId>
<serviceId>1501</serviceId>
<netId>86</netId>
<tsId>28</tsId>
</eitSourceEntry>
<eitSourceEntry>
<slotId>2</slotId>
<portId>1</portId>
<serviceId>1501</serviceId>
<netId>70</netId>
<tsId>35</tsId>
</eitSourceEntry>
<eitSourceEntry>
<slotId>2</slotId>
<portId>2</portId>
<serviceId>1501</serviceId>
<netId>70</netId>
<tsId>35</tsId>
</eitSourceEntry>
</optionalEitSourceList>
</epgStatusEntry>
</epgStatusList>
</getEpgStatusResponse>
</env:Body>
</env:Envelope>
3.4 setEitSource
This method is used to set the EPG’s EIT source when optional EIT sources are available.
The method takes a list of eitSourceEntry with outputRef and eitSource as
parameters.
Page 44 of 172
outputRef parameters:
eitSource parameters:
Query
<?xml version="1.0"?><env:Envelope
xmlns:env="http://www.w3.org/2003/05/soap-envelope">
<env:Body>
<setEitSource xmlns="http://www.appeartv.com/automation/v1">
<eitSourceList>
<eitSourceEntry>
<outputRef>
<slotId>15</slotId>
<portId>7</portId>
<serviceId>1501</serviceId>
</outputRef>
<eitMode>auto</eitMode>
<eitSource>
<slotId>2</slotId>
<portId>2</portId>
<serviceId>1501</serviceId>
<netId>70</netId>
<tsId>35</tsId>
</eitSource>
</eitSourceEntry>
</eitSourceList>
</setEitSource>
</env:Body>
</env:Envelope>
Page 45 of 172
4 Redundancy
The following redundancy schemes are supported in the SOAP interface.
4.1 setInternalRedundancy
This method is used to configure internal redundancy with the twin MMI’s IP address.
The method takes a list of redundancy enabled cards with configuration entries
(enable, switchDelay) as argument to setup internal redundancy.
cardEntry parameters:
Query
<?xml version="1.0"?><env:Envelope
xmlns:env="http://www.w3.org/2003/05/soap-envelope"> <env:Body>
<setInternalRedundancy xmlns="http://www.appeartv.com/automation/v1">
<internalRedundancy>
<twinMMICard>
<address>10.110.10.174</address>
</twinMMICard>
<cardsList>
<cardEntry>
<slotId>9</slotId>
<enable>1</enable>
<switchDelay>20</switchDelay>
Page 46 of 172
</cardEntry>
<cardEntry>
<slotId>7</slotId>
<enable>1</enable>
<switchDelay>40</switchDelay>
</cardEntry>
<cardEntry>
<slotId>16</slotId>
<enable>1</enable>
<switchDelay>20</switchDelay>
</cardEntry>
</cardsList>
</internalRedundancy>
</setInternalRedundancy>
</env:Body>
</env:Envelope>
4.2 forceInternalSwitch
This method is used for manual internal redundancy switching. The method takes a list
of redundancy enabled cards with slotId as an argument, and forces the cards to switch
to the redundant MMI module.
Query
<?xml version="1.0"?>
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
<env:Body>
<forceInternalSwitch xmlns="http://www.appeartv.com/automation/v1">
<switchCardsList>
<switchCardEntry>
<slotId>9</slotId>
</switchCardEntry>
<switchCardEntry>
<slotId>10</slotId>
</switchCardEntry>
</switchCardsList>
</forceInternalSwitch>
</env:Body>
</env:Envelope>
Page 47 of 172
4.3 getInternalRedundancy
This method retrieves the internal redundancy configuration for all internal redundancy
enabled cards (in a list) in the unit together with that of the twin MMI (if available).
The format and name of this list is identical to the one used in
setInternalRedundancy above.
4.4 getRedundancyStatus
This method retrieves status information for:
The return message consists of a list of redundancy status information entries. Each
entry contains the following parameters:
Page 48 of 172
CA/ECMG Redundancy parameters:
Query
<?xml version=”1.0”?>
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
<env:Body>
<getRedundancyStatus xmlns="http://www.appeartv.com/automation/v1">
<slotId>8</slotId>
</getRedundancyStatus>
</env:Body>
</env:Envelope>
Response
<?xml version="1.0"?>
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
<env:Body>
<getRedundancyStatusResponse
xmlns="http://www.appeartv.com/automation/v1">
<redundancyStatusList>
<redundancyStatusEntry>
<slotId>8</slotId>
<module>DDM</module>
<enable>1</enable>
<status>Main</status>
</redundancyStatusEntry>
</redundancyStatusList>
</getRedundancyStatusResponse>
</env:Body>
</env:Envelope>
Page 49 of 172
4.5 setInputPortRedundancy
This method is used to configure input port redundancy. The method takes a list of
inputPortRedundancyEntry with mainInputSource and backupInputSource.
Input redundancy can only be added, not updated. In other words, existing
input redundancy settings need to be removed and re-added.
inputPortRedundancyEntry parameters:
Page 50 of 172
Query
<?xml version="1.0"?>
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
<env:Body>
<setInputPortRedundancy xmlns="http://www.appeartv.com/automation/v1">
<inputPortRedundancy>
<inputPortRedundancyEntry>
<mainInputSource>
<slotId>3</slotId>
<portId>5</portId>
</mainInputSource>
<backupInputSource>
<slotId>8</slotId>
<portId>5</portId>
</backupInputSource>
<mode>floating</mode>
</inputPortRedundancyEntry>
</inputPortRedundancy>
</setInputPortRedundancy>
</env:Body>
</env:Envelope>
4.6 getInputPortRedundancy
This method returns input port redundancy configuration of the unit. The method takes
no input parameter and the message return format is identical to the one used in
setInputPortRedundancy above.
Page 51 of 172
4.7 removeInputPortRedundancy
This method is used to remove port input redundancy configuration. The method takes a
list of inputPortRedundancyEntry with input slotId and portId as reference
inputPortRedundancyEntry parameters:
Query
<?xml version="1.0"?>
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
<env:Body>
<removeInputPortRedundancy
xmlns="http://www.appeartv.com/automation/v1">
<inputPortRedundancy>
<inputPortRedundancyEntry>
<slotId>3</slotId>
<portId>5</portId>
</inputPortRedundancyEntry>
</inputPortRedundancy>
</removeInputPortRedundancy>
</env:Body>
</env:Envelope>
4.8 forceInputSwitch
This method is used for manual input redundancy switching. The method takes a list of
output stream references and forces the input redundancy module to switch input
sources.
Page 52 of 172
Query
<?xml version="1.0"?>
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
<env:Body>
<forceInputSwitch xmlns="http://www.appeartv.com/automation/v1">
<inputSwitchList>
<inputSwitchEntry>
<type>service</type>
<slotId>1</slotId>
<portId>0</portId>
<serviceId>3502</serviceId>
</inputSwitchEntry>
</inputSwitchList>
</forceInputSwitch>
</env:Body>
</env:Envelope>
4.9 getInputRedundancyStatus
This method retrieves input redundancy (service or port) status information for all
redundancy enabled streams in the unit and all port redundancy configurations.
serviceId will not be returned for port input redundancy status. The method takes no
input parameters.
The method returns a list of Input Redundancy Status Information entries. Each entry
has the following parameters:
inputRedundancyStatusEntry parameters:
Page 53 of 172
Query
<?xml version="1.0"?>
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
<env:Body>
< getInputRedundancyStatus
xmlns="http://www.appeartv.com/automation/v1">
</getInputRedundancyStatus>
</env:Body>
</env:Envelope>
Response
<?xml version="1.0"?>
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
<env:Body>
<getInputRedundancyStatusResponse
xmlns="http://www.appeartv.com/automation/v1">
<code>100</code>
<message>OK</message>
<inputRedundancyStatusList>
<inputRedundancyStatusEntry>
<mainInputSource>
<slotId>6</slotId>
<portId>1</portId>
<serviceId>3400</serviceId>
</mainInputSource>
<backupInputSource>
<slotId>6</slotId>
<portId>1</portId>
<serviceId>951</serviceId>
</backupInputSource>
<output>
<slotId>2</slotId>
<portId>0</portId>
<serviceId>3400</serviceId>
</output>
<switchStatus>main</switchStatus>
<type>service</type>
<redundancyType>once</redundancyType>
</inputRedundancyStatusEntry>
<inputRedundancyStatusEntry>
<mainInputSource>
<slotId>3</slotId>
<portId>0</portId>
</mainInputSource>
<backupInputSource>
<slotId>3</slotId>
<portId>2</portId>
</backupInputSource>
<switchStatus>main</switchStatus>
<type>port</type>
<redundancyType>floating</redundancyType>
</inputRedundancyStatusEntry>
Page 54 of 172
</inputRedundancyStatusList>
</getInputRedundancyStatusResponse>
</env:Body>
</env:Envelope>
4.10 getOutputRedundancy
This method retrieves the output redundancy configuration for all IP Output cards on this
unit. It takes an optional slotId parameter to only return the configuration of one slot.
The method returns a list of Output Redundancy entries. Each entry contains a slotId
and the optional outputRedundancy element, which is only included if Output
Redundancy is turned on for this slot.
Ospf contains:
Md5OspfAuthentication contains:
PIM contains:
Query
<?xml version="1.0"?>
Page 55 of 172
<soap:Envelope xmlns:soap="http://www.w3.org/2003/05/soap-envelope">
<soap:Body>
<getOutputRedundancy xmlns="http://www.appeartv.com/automation/v1">
</getOutputRedundancy>
</soap:Body>
</soap:Envelope>
Response
<?xml version="1.0"?>
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
<env:Body>
<getOutputRedundancyResponse
xmlns="http://www.appeartv.com/automation/v1">
<code>100</code>
<message>OK</message>
<outputRedundancyList>
<outputRedundancyListEntry>
<slotId>2</slotId>
<outputRedundancy>
<ospf>
<sourceNet>10.10.10</sourceNet>
<ospfArea>0.0.0.5</ospfArea>
<md5OspfAuthentication>
<keyId1>3</keyId1>
<key1>secretgarden</key1>
<keyId2>0</keyId2>
<key2/>
</md5OspfAuthentication>
<stubbyArea>1</stubbyArea>
</ospf>
<pim>
<rpPoint>10.110.1.9</rpPoint>
</pim>
<enableMuteOnError>0</enableMuteOnError>
<switchingDelay>6</switchingDelay>
</outputRedundancy>
</outputRedundancyListEntry>
</outputRedundancyList>
</getOutputRedundancyResponse>
</env:Body>
</env:Envelope>
4.11 setOutputRedundancy
This method sets the output redundancy configuration. It uses the same settings as the
response from the get call.
Page 56 of 172
5 Input
The input configuration SOAP calls are used to set the input parameters. In the end of
this section the interface provides some generic functions to read stream related
information for the input interfaces.
5.1 setASIInputConfig
This method configures one or more ASI inputs. The method takes a list with one or
more configuration entries as an argument. The format and name of the list is the
same as that used in getASIInputConfig’s return message.
Parameters:
5.2 getASIInputConfig
This method retrieves ASI input configuration for:
Optional parameters:
The return message consists of a list of ASI input configuration entries. Each entry has
the same parameters as for the parameters used in setASIInputConfig.
Page 57 of 172
Query
<?xml version=”1.0”?>
<soap:Envelope xmlns:soap="http://www.w3.org/2003/05/soap-envelope">
<soap:Body>
<getASIInputConfig xmlns="http://www.appeartv.com/automation/v1">
<slotId>1</slotId>
</getASIInputConfig>
</soap:Body>
</soap:Envelope>
Response
<?xml version="1.0"?>
<soap:Envelope xmlns:soap=”http://www.w3.org/2003/05/soap-envelope”>
<soap:Body>
<getASIInputConfigResponse
xmlns="http://www.appeartv.com/automation/v1">
<getASIInputConfigResult>
<code>100</code>
<message>OK</message>
<ASIInputList>
<ASIInputListEntry>
<slotId>1</slotId>
<portId>0</portId>
<psiMode>DVB</psiMode>
<enable>1</enable>
<name>Thor 5</name>
</ASIInputListEntry>
</ASIInputList>
</getASIInputConfigResult>
</soap:Body>
</soap:Envelope>
Page 58 of 172
5.3 getASIStatus
This method retrieves the status information for:
The return message consists of a list of ASI Input Status Information entries. Each
entry has the following parameters:
Query
<?xml version=”1.0”?>
<soap:Envelope xmlns:soap="http://www.w3.org/2003/05/soap-envelope">
<soap:Body>
<getASIStatus xmlns="http://www.appeartv.com/automation/v1">
<slotId>1</slotId>
<portId>0</portId>
</getASIStatus>
</soap:Body>
</soap:Envelope>
Page 59 of 172
Response
<?xml version="1.0"?>
<soap:Envelope xmlns:soap=”http://www.w3.org/2003/05/soap-envelope”>
<soap:Body>
<getASIStatusResponse
xmlns="http://www.appeartv.com/automation/v1">
<code>100</code>
<message>OK</message>
<ASIStatusList>
<ASIStatusListEntry>
<slotId>1</slotId>
<portId>0</portId>
<sync>188</sync>
<effectiveBitrate>38.617</effectiveBitrate>
<totalBitrate>40.000</totalBitrate>
<byteMode>Spread</byteMode>
</ASIStatusListEntry>
</ASIStatusList>
</getASIStatusResponse>
</soap:Body>
</soap:Envelope>
5.4 setQPSKInputConfig
This method configures one or more QPSK inputs. The method takes a list with one or
more configuration entries as an argument. The format and name of the list is the
same as that used in getQPSKInputConfig’s return message.
Parameters:
Page 60 of 172
5.5 getQPSKInputConfig
This method retrieves the input configuration for:
Optional parameters:
Query
<QPSKInputList>
<QPSKInputListEntry>
<slotId>1</slotId>
<portId>0</portId>
<psiMode>DVB</psiMode>
<satFreq>11.389</satFreq>
<lnbFreq>9.75</lnbFreq>
<symRate>24.5</symRate>
<innerCode>3/4</innerCode>
<lnbVoltage>18</lnbVoltage>
<lnb22kHz>1</lnb22kHz>
<enable>1</enable>
<name>Thor 5</name>
</QPSKInputListEntry>
</QPSKInputList>
5.6 getQPSKStatus
This method retrieves the status information for:
The return message consists of a list of QPSK input configuration entries. Each entry
has the following parameters:
Page 61 of 172
slotId Identifies a particular input module
portId Identifies a particular input port
Sync MPEG sync number: 188 or 204
effectiveBitrate Effective bit rate of the input stream in Mbps
totalBitrate Total bit rate of the input stream in Mbps
inputPower Input power of the QPSK signal in dBm
eb/no Energy per bit
Cnr Channel to noise ratio dB
lnbVoltage Actual LNB voltage
lockStatus Tuner’s lock status
Query
<?xml version="1.0"?>
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
<env:Body>
<getQPSKStatus xmlns="http://www.appeartv.com/automation/v1">
<slotId>2</slotId>
<portId>0</portId>
</getQPSKStatus>
</env:Body>
</env:Envelope>
Response
<?xml version="1.0"?>
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
<env:Body>
<getQPSKStatusResponse xmlns="http://www.appeartv.com/automation/v1">
<code>100</code>
<message>OK</message>
<QPSKStatusList>
<QPSKStatusListEntry>
<slotId>2</slotId>
<portId>0</portId>
<sync>188</sync>
<effectiveBitrate>35.412</effectiveBitrate>
<totalBitrate>38.015</totalBitrate>
<inputPower>-56</inputPower>
<ebn0>11.089680</ebn0>
<cnr>12.495743</cnr>
<lnbVoltage>0.000000</lnbVoltage>
<lockStatus>Locked (251)</lockStatus>
</QPSKStatusListEntry>
</QPSKStatusList>
</getQPSKStatusResponse>
</env:Body>
Page 62 of 172
</env:Envelope>
5.7 setDVB-S-S2InputConfig
This method configures one or more DVB-S/S2 inputs. The method takes a list with
one or more configuration entries as an argument.
Parameters:
Page 63 of 172
5.8 getDVB-S-S2InputConfig
This method retrieves the configuration for:
Query
<?xml version="1.0"?>
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
<env:Body>
<getDVB-S-S2InputConfigResponse
xmlns="http://www.appeartv.com/automation/v1">
<code>100</code>
<message>OK</message>
<DVB-S-S2InputList>
<DVB-S-S2InputListEntry>
<slotId>10</slotId>
<portId>0</portId>
<enable>1</enable>
<analyzeMode>DVB</analyzeMode>
<satFreq>11.216</satFreq>
<lnbFreq>9.750</lnbFreq>
<symRate>24.500</symRate>
<innerCode>7/8</innerCode>
<modulation>DVB</modulation>
<lnbVoltage>0</lnbVoltage>
<lnb22kHz>0</lnb22kHz>
<name>Thor 1</name>
</DVB-S-S2InputListEntry>
</DVB-S-S2InputList>
</getDVB-S-S2InputConfigResponse>
</env:Body>
</env:Envelope>
Page 64 of 172
5.9 getDVB-S-S2Status
This method retrieves the status information for:
The return message consists of a list of DVB-S/S2 input status information entries.
Each entry has the following parameters:
Page 65 of 172
Query
<?xml version="1.0"?>
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
<env:Body>
<getDVB-S-S2Status xmlns="http://www.appeartv.com/automation/v1">
<slotId>12</slotId>
<portId>0</portId>
</getDVB-S-S2Status>
</env:Body>
</env:Envelope>
Response
<?xml version="1.0"?>
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
<env:Body>
<getDVB-S-S2StatusResponse
xmlns="http://www.appeartv.com/automation/v1">
<code>100</code>
<message>OK</message>
<DVB-S-S2StatusList>
<DVB-S-S2StatusListEntry>
<slotId>12</slotId>
<portId>0</portId>
<sync>188</sync>
<effectiveBitrate>49.882</effectiveBitrate>
<totalBitrate>55.703</totalBitrate>
<inputPower>-57.197422</inputPower>
<ber>0.00e+00</ber>
<snr>12.950986</snr>
<ebn0>9.471593</ebn0>
<lockStatus>Locked</lockStatus>
<carrierOffset>573950</carrierOffset>
<actualFrequency>1670426050</actualFrequency>
<actualSymbolRate>24998262</actualSymbolRate>
<actualModulation>ldpc_8psk_3/4</actualModulation>
<lnbVoltage>off</lnbVoltage>
</DVB-S-S2StatusListEntry>
</DVB-S-S2StatusList>
</getDVB-S-S2StatusResponse>
</env:Body>
</env:Envelope>
Page 66 of 172
5.10 setCOFDMInputConfig
This method configures one or more COFDM inputs. The method takes a list with one
or more configuration entries as an argument.
Parameters:
5.11 getCOFDMInputConfig
This method retrieves the configuration for:
Page 67 of 172
Query
<COFDMInputList>
<COFDMInputListEntry>
<slotId>1</slotId>
<portId>0</portId>
<psiMode>DVB</psiMode>
<rfFreq>722.000</rfFreq>
<bandwidth>8</bandwidth>
<spectralInv>normal</spectralInv>
<enable>1</enable>
<name>Terrestial 1</name>
</COFDMInputListEntry>
</COFDMInputList>
5.12 getCOFDMStatus
This method retrieves the status information for:
The return message consists of a list of COFDM input status information entries. Each
entry has the following parameters:
Page 68 of 172
Ber Bit error rate
Cber Channel bit error rate
Snr Signal to noise ratio
powerLevel Power level of the COFDM input signal
State Current state
carrierStatus Status of the tuning process
frontendLocked Current tuner’s lock status: yes or no
Query
<?xml version="1.0"?>
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
<env:Body>
<getCOFDMStatus xmlns="http://www.appeartv.com/automation/v1">
<slotId>10</slotId>
<portId>0</portId>
</getCOFDMStatus>
</env:Body>
</env:Envelope>
Response
<?xml version="1.0"?>
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
<env:Body>
<getCOFDMStatusResponse xmlns="http://www.appeartv.com/automation/v1">
<code>100</code>
<message>OK</message>
<COFDMStatusList>
<COFDMStatusListEntry>
<slotId>10</slotId>
<portId>0</portId>
<sync>188</sync>
<effectiveBitrate>21.480</effectiveBitrate>
<totalBitrate>22.118</totalBitrate>
<frequency>769.997</frequency>
<frequencyOffset>0</frequencyOffset>
<bandwidth>8000000</bandwidth>
<spectralInversion>Normal</spectralInversion>
<modulation>QAM64</modulation>
<guardInterval>1/8</guardInterval>
<fft>8k</fft>
<ber>0.00e+00</ber>
<cber>1.10e-04</cber>
Page 69 of 172
<snr>25</snr>
<powerLevel>-3</powerLevel>
<state>Idle</state>
<carrierStatus>Locked</carrierStatus>
<frontendLocked>Yes</frontendLocked>
</COFDMStatusListEntry>
</COFDMStatusList>
</getCOFDMStatusResponse>
</env:Body>
</env:Envelope>
5.13 setQAMInputConfig
This method configures one or more QAM inputs. The method takes a list with one or
more configuration entries as an argument.
Parameters:
5.14 getQAMInputConfig
This method retrieves the configuration for:
Page 70 of 172
Query
<QAMInputList>
<QAMInputListEntry>
<slotId>1</slotId>
<portId>0</portId>
<psiMode>DVB</psiMode>
<rfFreq>660.000</satFreq>
<symRate>6.925</symRate>
<modulation>64</modulation>
<spectralInv>auto</spectralInv>
<enable>1</enable>
<name>Cable A</name>
</QAMInputListEntry>
</QAMInputList>
5.15 getQAMStatus
This method retrieves the status information for:
Page 71 of 172
Query
<?xml version="1.0"?>
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
<env:Body>
<getQAMStatus xmlns="http://www.appeartv.com/automation/v1">
<slotId>10</slotId>
<portId>0</portId>
</getQAMStatus>
</env:Body>
</env:Envelope>
Response
<?xml version="1.0"?>
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
<env:Body>
<getQAMStatusResponse xmlns="http://www.appeartv.com/automation/v1">
<QAMStatusList>
<QAMStatusListEntry>
<slotId>6</slotId>
<portId>0</portId>
<sync>No</sync>
<effectiveBitrate>0.000</effectiveBitrate>
<totalBitrate>0.000</totalBitrate>
<frequency>338.000</frequency>
<symbolRate>5999999</symbolRate>
<modulation>QAM64</modulation>
<ber>0.00e+00</ber>
<snr>0</snr>
<state>Idle</state>
<carrierStatus>Not Found</carrierStatus>
<frontendLocked>No</frontendLocked>
</QAMStatusListEntry>
<QAMStatusList>
</getQAMStatusResponse>
</env:Body>
</env:Envelope>
Page 72 of 172
5.16 setQAMBInputConfig
This method configures one or more QAM-B inputs. The method takes a list with one or
more configuration entries as an argument.
Parameters:
5.17 getQAMBInputConfig
This method retrieves the configuration for:
Query
<QAMBInputList>
<QAMBInputListEntry>
<slotId>1</slotId>
<portId>0</portId>
<analyzeMode>ATSC</analyzeMode>
<freq>50.000</freq>
<modulation>256</modulation>
<enable>1</enable>
<name>Cable A</name>
</QAMBInputListEntry>
</QAMBInputList>
Page 73 of 172
5.18 setVSBInputConfig
This method configures one or more VSB inputs. The method takes a list with one or
more configuration entries as an argument.
Parameters:
5.19 getVSBInputConfig
This method retrieves the configuration for:
Optional parameters:
Query
<VSBInputList>
<VSBInputListEntry>
<slotId>14</slotId>
<portId>0</portId>
<psiMode>DVB</psiMode>
<freq>47</freq>
<enable>0</enable>
<name>8vsb a</name>
</VSBInputListEntry>
</VSBInputList>
Page 74 of 172
5.20 getVSBStatus
This method retrieves the status information for:
Query
<?xml version="1.0"?>
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
<env:Body>
<getVSBStatus xmlns="http://www.appeartv.com/automation/v1">
<slotId>14</slotId>
<portId>0</portId>
</getVSBStatus>
</env:Body>
</env:Envelope>
Page 75 of 172
Response
<?xml version="1.0"?>
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
<env:Body>
<getVSBStatusResponse xmlns="http://www.appeartv.com/automation/v1">
<VSBStatusList>
<VSBStatusListEntry>
<slotId>14</slotId>
<portId>0</portId>
<sync>No</sync>
<effectiveBitrate>0.000</effectiveBitrate>
<totalBitrate>0.000</totalBitrate>
<lockStatus>No</lockStatus>
<rfLevel>-105</rfLevel>
<mer>0</mer>
</VSBStatusListEntry>
<VSBStatusList>
</getVSBStatusResponse>
</env:Body>
</env:Envelope>
5.21 setMonitorConfig
This method configures the monitor port of one or more input modules. The method
takes a list with one or more configuration entries as an argument.
Parameters:
Page 76 of 172
5.22 getMonitorConfig
This method retrieves the monitor configuration for:
Optional parameter:
Response
<monitorConfigList>
<monitorConfigListEntry>
<slotId>13</slotId>
<monitorPort>off</monitorPort>
</monitorConfigListEntry>
</monitorConfigList>
setAdminConfig
getAdmidConfig
5.25 addIPInputConfig
This method adds one or more IP input streams. The streams are passed in an
ipInputList structure.
Page 77 of 172
Passing a portId that is already in use overwrites the previous configuration.
Page 78 of 172
5.26 getIPInputConfig
This method retrieves the configuration parameters for:
Optional parameter:
Response
<ipInputList>
<ipInputListEntry>
<slotId>1</slotId>
<ipInputEntry>
<portId>0</portId>
<ipAddress>239.255.0.1</ipAddress>
<ipPort>5700</ipPort>
<mode>DVB</mode>
<dejitter>0</dejitter>
<ipFec>1</ipFec>
<IGMPv3>
<sourceIP>222.222.222.222</sourceIP>
<sourceIP1>333.333.333.333</sourceIP1>
</IGMPv3>
<vlan>5</vlan>
<dejitterPcr>65</dejitterPcr>
<name>NRK1</name>
</ipInputEntry>
</ipInputListEntry>
</ipInputList>
Page 79 of 172
5.27 getIPInputStatus
This method retrieves the IP input Status Information for one specific IP input, all IP
inputs on a module or all IP input modules in the unit. What is retrieved depends on
what call parameters are present.
This method returns a list of ipInputStatusListEntry. Each entry has the following
parameters:
Query
<?xmlversion="1.0"?>
<soap:Envelope xmlns:soap="http://www.w3.org/2003/05/soap-envelope">
<soap:Body>
<getIPInputStatus xmlns="http://www.appeartv.com/automation/v1">
<slotId>1</slotId>
<portId>0</portId>
</getIPInputStatus>
</soap:Body>
</soap:Envelope>
Response
<?xml version="1.0"?>
<soap:Envelope xmlns:soap=”http://www.w3.org/2003/05/soap-envelope”>
<soap:Body>
<getIPInputStatusResponse
xmlns="http://www.appeartv.com/automation/v1">
<code>100</code>
Page 80 of 172
<message>OK</message>
<ipInputStatusList>
<ipInputStatusListEntry>
<slotId>1</slotId>
<portId>0</portId>
<sync>188</sync>
<effectiveBitrate>38.617</effectiveBitrate>
<totalBitrate>40.000</totalBitrate>
<activeSource>10.10.10.70.9</activeSource>
<ccErrors>104</ccErrors>
<rtpErrors>38</rtpErrors>
</ipInputStatusListEntry>
</ipInputStatusList>
</getIPInputStatusResponse>
</soap:Body>
</soap:Envelope>
5.28 removeIPInputConfig
This method removes one or more IP input streams. The streams are passed in an
ipInputList structure as defined in the getInputConfig’s response. Only the portId
parameter of ipInputEntry node needs to be passed, the ipAddress and ipPort
parameters will be ignored, if they are present.
5.29 getInputServiceList
This method retrieves a list of all services present on one or more input module,
depending on the parameters:
slotId Identifies a particular input module, optional.
portId Identifies a particular input port. Optional if slotId is
specified, otherwise not present.
Page 81 of 172
Response
<inputServiceList>
<inputServiceListEntry>
<slotId>1</slotId>
<portId>0</portId>
<name>Input 0</name>
<inputServiceEntry>
<serviceId>1</serviceId>
<serviceType>1</serviceType>
<serviceName>Service 1</serviceName>
<pmtPid>200</pmtPid>
<pcrPid>201</pcrPid>
</inputServiceEntry>
</inputServiceListEntry>
</inputServiceList>
Page 82 of 172
5.30 getInputServiceComponents
This method retrieves a list of all components signaled in a service with the
components classified into a set of types listed below. A PID in the stream may occur
more than once in this list with different types, e.g. both as teletext and VBI.
Response
<inputComponentList>
<inputComponentListEntry>
<slotId>1</slotId>
<portId>0</portId>
<serviceId>1</serviceId>
<componentEntry>
<pid>201</pid>
<type>1</type>
<language>eng</language>
</componentEntry>
</inputComponentListEntry>
</inputComponentList>
Page 83 of 172
Values for type are based on a combination of the PSI signaled stream as well as
selected descriptors that may be present. The current value assignment is:
1 2 3 4 6 9 10 11 12 13
Video Audio Teletext DVB ECM Private AC-3 H.264 VBI AAC
Subtitles Audio Video Audio
5.31 getInputPidList
This method retrieves input PID list for:
c. all input ports on all input modules in the unit, depending on the parameters:
Query
<?xml version="1.0"?>
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
<env:Body>
<getInputPidList xmlns="http://www.appeartv.com/automation/v1">
<slotId>8</slotId>
<portId>0</portId>
</getInputPidList>
</env:Body>
</env:Envelope>
Page 84 of 172
Response
<?xml version="1.0"?>
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
<env:Body>
<getInputPidListResponse xmlns="http://www.appeartv.com/automation/v1">
<code>100</code>
<message>OK</message>
<inputPidList>
<inputEntry>
<slotId>8</slotId>
<portId>0</portId>
<inputPidListEntry>
<pid>0</pid>
<type>PAT</type>
<rate>0.018</rate>
<scrambled>no</scrambled>
<ccErrors>0</ccErrors>
</inputPidListEntry>
<inputPidListEntry>
<pid>17</pid>
<type>SDT</type>
<rate>0.012</rate>
<scrambled>no</scrambled>
<ccErrors>0</ccErrors>
</inputPidListEntry>
<inputPidListEntry>
<pid>8180</pid>
<type>PCR</type>
<rate>0.056</rate>
<scrambled>no</scrambled>
<ccErrors>0</ccErrors>
</inputPidListEntry>
</inputEntry>
</inputPidList>
</getInputPidListResponse>
</env:Body>
</env:Envelope>
Page 85 of 172
5.32 getInputStatus
This method retrieves the inputs Status Information for all input modules available in the
Appear TV device.
The return message contains a list of inputStatusEntry. Each entry has the following
parameters:
Query
<?xml version="1.0"?>
<soap:Envelope xmlns:soap="http://www.w3.org/2003/05/soap-envelope">
<soap:Body>
<getInputStatus xmlns="http://www.appeartv.com/automation/v1">
</getInputStatus>
</soap:Body>
</soap:Envelope>
Response
<?xml version="1.0"?>
<soap:Envelope xmlns:soap=”http://www.w3.org/2003/05/soap-envelope”>
<soap:Body>
<getInputStatusListResponse
xmlns="http://www.appeartv.com/automation/v1">
<code>100</code>
<message>OK</message>
<inputStatusList>
<inputStatusEntry>
<slotId>1</slotId>
<type>ipin</type>
<services>10</services>
<totalTSRate>38.617</totalTSRate>
Page 86 of 172
<ccErrors>104</ccErrors>
<tsErrors>38</tsErrors>
<rtpSequenceErrors>1765</rtpSequenceErrors>
<outputRate>9.101</outputRate>
</inputStatusEntry>
</inputStatusList>
</getInputStatusListResponse>
</soap:Body>
</soap:Envelope>
5.33 resetErrorCounter
This method is used to reset CC Errors, TS Errors and RPT Sequence Errors of the
Appear TV device. The method takes no input parameter.
Query
<?xml version="1.0"?>
<soap:Envelope xmlns:soap="http://www.w3.org/2003/05/soap-envelope">
<soap:Body>
<resetErrorCounter xmlns="http://www.appeartv.com/automation/v1">
</resetErrorCounter>
</soap:Body>
</soap:Envelope>
Page 87 of 172
6 Scrambling
In software version 2.06 the referencing of ECMGs where modified to better suite new
features. Although the SOAP interface is backward compatible only the new style will be
described in this document.
The changes were that the “ecmgId” parameter where replaced with “channelId” +
“ECMGInput”.
6.1 defineECMG
This method defines one or more ECM Generators (ECMGs) in the system. The method
takes a list of ECM generators, ecmgList, as a parameter. Elements of this list are as
follows:
Page 88 of 172
Response
<ecmgList>
<ecmgListEntry>
<scsSlotId>8</scsSlotId>
<ecmgInput>0</ecmgInput>
<name>ecmg 1</name>
<casId>1540</casId>
<casSubId>0</casSubId>
<channelId>1</channelId>
<ipAddress>192.168.1.150</ipAddress>
<ipPort>2000</ipPort>
</ecmgListEntry>
</ecmgList>
6.2 removeECMG
This method removes one or more ECMG definitions from the system. The method takes
a list of ECMGs, ecmgList, as a parameter. Elements of this list are as follows:
Response
<ecmgList>
<ecmgListEntry>
<ecmgRef>
<scsSlotId>3</scsSlotId>
<ecmgInput>8</ecmgInput>
</ecmgRef>
</ecmgListEntry>
</ecmgList>
6.3 getECMG
This method retrieves a list of all ECMGs defined in the system. The method takes no
parameters and returns a list, ecmgList, with the same format as that used in
defineECMG’s return message.
Page 89 of 172
6.4 setEcmgRedundancy
This method configures ECMG redundancy. The method takes a list, caListEntry, with
groupId, main, and backup ECMGs as arguments to setup ECMG redundancy.
Response
<?xml version="1.0"?><env:Envelope
xmlns:env="http://www.w3.org/2003/05/soap-envelope">
<env:Body>
<setEcmgRedundancy
xmlns="http://www.appeartv.com/automation/v1">
<caList>
<caListEntry>
<groupId>1</groupId>
<main>
<scsSlot>7</scsSlot>
<inputId>2</inputId>
</main>
<backup>
<ipAddress>222.222.222.223</ipAddress>
<ipPort>22222</ipPort>
<subId>9</subId>
<channelId>6</channelId>
</backup>
</caListEntry>
</caList>
</setEcmgRedundancy>
</env:Body></env:Envelope>
Page 90 of 172
6.5 getEcmgRedundancy
This method retrieves the configuration for ECMG redundancy of all SCS cards in the
unit. The method takes no parameters and returns a list, caListEntry, with the same
format as that used in setEcmgRedundancy’s return message.
6.6 defineECM
This method defines one or more ECMs for the system. The method takes ecmList with
the following elements as parameters:
If an existing ecm is supplied, the defineECM method will update the settings. However,
it is possible to bypass this step by specifying the accessCriteria directly in the output
stream definition, implicitly creating an ECM definition.
Implicit ECMs will not be accessible via the defineECM or getECM methods.
The scrambling control group, scgId, is an optional parameter used to link ECMs to a
specific Control Word sequence. This is necessary when configuring multiple ECMs for
one service or component.
Page 91 of 172
Response
<ecmList>
<ecmListEntry>
<scsSlotId>3</scsSlotId>
<ecmgInput>0</ecmgInput>
<streamId>1</streamId>
<name>ecm 1</name>
<ecmgId>1</ecmgId>
<scgId>1</scgId>
<accessCriteria>
<hex>aabb</hex>
</accessCriteria>
<privateData>aabb01</privateData>
<pid>1208056200</pid>
</ecmListEntry>
</ecmList>
6.7 removeECM
This method removes one or more ECM definitions from the system. The method takes
ecmList with the following elements as arguments.
Response
<ecmList>
<ecmListEntry>
<ecmRef>
<scsSlotId>3</scsSlotId>
<ecmgInput>7</ecmgInput>
<streamId>1</streamId>
</ecmRef>
</ecmListEntry>
</ecmList>
6.8 getECM
This method retrieves a list of all ECMs defined in the system. The method takes no
parameters and returns an ecmList with the same format as that used in defineECM’s
return message.
Page 92 of 172
6.9 defineEMMG
This method defines one or more EMM Generators (EMMGs) in the system. The method
takes a list of EMM generators, emmgList, as a parameter. Elements of this list are as
follows:
Response
<emmgList>
<emmgListEntry>
<scsSlotId>8</scsSlotId>
<emmgInput>0</emmgInput>
<name>emmg 1</name>
<casId>1540</casId>
<casSubId>0</casSubId>
<channelId>1</channelId>
<ipAddress>192.168.1.150</ipAddress>
<ipPort>2000</ipPort>
</emmgListEntry>
</emmgList>
6.10 removeEMMG
This method removes one or more EMMG definitions from the system. The method takes
a list of EMMGs, emmgList, as a parameter. Elements of this list are as follows:
Page 93 of 172
<emmgList>
<emmgListEntry>
<emmgRef>
<scsSlotId>3</scsSlotId>
<emmgInput>8</emmgInput>
</emmgRef>
</emmgListEntry>
</emmgList>
6.11 getEMMG
This method retrieves a list of all EMMGs defined in the system. The method takes no
parameters and returns an emmgList with the same format as that used in defineEMMG’s
return message.
6.12 defineEMM
This method defines one or more EMMs for the system. The method takes emmList with
the following elements as parameters:
Page 94 of 172
Response
emmList>
<emmListEntry>
<scsSlotId>8</scsSlotId>
<emmgInput>0</emmgInput>
<streamId>1</streamId>
<name>emm 1</name>
<emmgId>1</emmgId>
<privateData>aabb01</privateData>
<pid>-1</pid>
<maxRate>200</maxRate>
</emmListEntry>
</emmList>
6.13 removeEMM
This method removes one or more EMM definitions for the system. The method takes
emmList with the following elements as arguments:
Response
<emmList>
<emmListEntry>
<emmRef>
<scsSlotId>3</scsSlotId>
<emmgInput>7</emmgInput>
<streamId>1</streamId>
</emmRef>
</emmListEntry>
</emmList>
6.14 getEMM
This method retrieves a list of all EMMs defined in the system. The method takes no
parameters and returns emmList with the same format as that used in defineEMM’s
return message.
Page 95 of 172
6.15 getScramblerSetup
This method retrieves a list of scrambler card settings, scramblerList, including a list
of all supported scrambling algorithms for:
Response
<?xml version="1.0"?>
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
<env:Body>
<getScramblerSetupResponse
xmlns="http://www.appeartv.com/automation/v1">
<code>100</code>
<message>OK</message>
<scramblerList>
<scramblerListEntry>
<slotId>6</slotId>
<services>0</services>
<algorithm>dvb csa</algorithm>
<ratio>1</ratio>
<enableScrambling>on</enableScrambling>
<bitrate>0.00</bitrate>
<supportedAlgorithms>
<algorithm>dvb csa</algorithm>
</supportedAlgorithms>
Page 96 of 172
<syncMode>master</syncMode>
<peerIP>10.10.30.14</peerIP>
<peerPort>123</peerPort>
</scramblerListEntry>
</scramblerList>
</getScramblerSetupResponse>
</env:Body>
</env:Envelope>
6.16 setupScrambler
This method configures one or more scrambler cards. The method takes a list of
scrambler card settings, scramblerList, as well as a list of all supported scrambling
algorithms, supportedAlgorithms, with the same format as that used in
getScramblerSetup response message.
6.17 setBissKeys
This method configures one or more BISS keys, which can be used for fixed key
scrambling and descrambling. The method takes a list of BISS keys, bissKeysList, as
a parameter. The elements of this list are as follows:
If the BISS mode is BISS-E, the encrypted key (session word) will be returned in the
response message.
Page 97 of 172
Response
<bissKeysList>
<bissKeysEntry>
<bissId>1</bissId>
<bissName>Test BISS Ket 1</bissName>
<bissKeyType> DVB CSA BISS</bissKeyType>
<bissE>
<mode>decode</mode>
<keyId>66666666666666</keyId>
</bissE>
<bissKey>5898B32</bissKey>
</bissKeysEntry>
</bissKeysList>
6.18 getBissKeys
This method retrieves a list of all configured BISS keys in the system. The method
takes no parameters and returns a list, bissKeyList, with the same format as that
used in setBissKeys’ return message excluding bissE node.
6.19 removeBissKeys
This method removes one or more BISS key definitions from the system. The method
takes a list of BISS keys, bissKeyEntry, as a parameter. Elements of this list are as
follows:
Response
<bissKeysList>
<bissKeysEntry>
<bissId>1</bissId>
</bissKeysEntry>
</bissKeysList>
Page 98 of 172
6.20 setEisInterface
This method is used to define EIS interface in the unit. The method takes a list,
eisInterfaceEntry, as a parameter. Elements of this list are as follows:
Response
<?xml version="1.0"?>
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
<env:Body>
<setEisInterface xmlns="http://www.appeartv.com/automation/v1">
<eisInterfaceList>
<eisInterfaceEntry>
<scsSlot>2</scsSlot>
<inputId>0</inputId>
<name>EIS</name>
<ipFilter>239.250.2.3</ipFilter>
<listeningPort>23</listeningPort>
</eisInterfaceEntry>
</eisInterfaceList>
</setEisInterface>
</env:Body>
</env:Envelope>
6.21 getEisInterface
This method retrieves the configuration of EIS interface definitions in the unit. The
method takes no parameters and returns a list, eisInterfaceList, with the same
format as that used in setEisInterface’s return message.
Page 99 of 172
6.22 removeEisInterface
This method removes one or more EIS interface definitions from the unit. The method
takes a list, eisInterfaceEntry, as a parameter. Elements of this list are as follows:
Response
<eisInterfaceList>
<eisInterfaceEntry>
<scsSlot>2</scsSlot>
<inputId>0</inputId>
</eisInterfaceEntry>
</eisInterfaceList>
7.1 setCAMConfig
This method is used to configure the Conditional Access Module (CAM). The method
takes CAMListEntry with the following elements as parameters:
ALT CAM mode can’t be set when EMM Source is not in Auto.
EMM source selection can’t be set when ALT CAM mode is set.
ALT CAM mode can’t be set if two services are configured with different source
Ports on the ADM.
emmSource parameters:
<?xml version="1.0"?>
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
<env:Body>
<setCAMConfig xmlns="http://www.appeartv.com/automation/v1">
<CAMList>
<functionScope>0</functionScope>
<CAMListEntry>
<slotId>7</slotId>
<camSlot>B</camSlot>
<altCamMode>off</altCamMode>
<emmSource>
<slotId>1</slotId>
<channelId>1</channelId>
</emmSource>
<autoReset>One</autoReset>
<maxTSRate>43</maxTSRate>
</CAMListEntry>
</CAMList>
</setCAMConfig>
</env:Body>
7.2 getCAMConfig
This method retrieves the configuration for:
The method returns CAMListEntries with the same format as that used in
setCAMConfig.
Response
<?xml version="1.0"?>
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
<env:Body>
<getCAMConfigResponse xmlns="http://www.appeartv.com/automation/v1">
<code>100</code>
<message>OK</message>
<CAMList>
<CAMListEntry>
<slotId>7</slotId>
<camSlot>A</camSlot>
<altCamMode>off</altCamMode>
<autoReset>One</autoReset>
<maxTSRate>43</maxTSRate>
</CAMListEntry>
<CAMListEntry>
7.3 resetCAModule
This method is used to reset the Conditional Access Module (CAM). The method takes
CAMListEntry with the following elements as parameters:
Query
<?xml version="1.0"?>
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
<env:Body>
<resetCAModule xmlns="http://www.appeartv.com/automation/v1">
<CAMList>
<CAMListEntry>
<slotId>7</slotId>
<camSlot>B</camSlot>
</CAMListEntry>
<CAMListEntry>
<slotId>8</slotId>
<camSlot>A</camSlot>
</CAMListEntry>
</CAMList>
</resetCAModule>
</env:Body>
7.4 getCAMStatus
This method retrieves the CAM’s status information for:
The return message consists of a list of CAM status information entries. Each entry
contains the following parameters:
Query
<?xml version="1.0"?>
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
<env:Body>
<getCAMStatus xmlns="http://www.appeartv.com/automation/v1">
<slotId>7</slotId>
</geCAMStatus>
</env:Body>
</env:Envelope>
Response
<?xml version="1.0"?>
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
<env:Body>
<getCAMStatusResponse xmlns="http://www.appeartv.com/automation/v1">
<code>100</code>
<message>OK</message>
<camStatusList>
<camStatusListEntry>
<slotId>7</slotId>
<camSlot>A</camSlot>
<camName>NDS Videoguard</camName>
<inputBitrate>38.016</inputBitrate>
<outputBitrate>9.275</outputBitrate>
</camStatusListEntry
<camStatusListEntry>
<slotId>7</slotId>
<camSlot>B</camSlot>
<camName>NDS Videoguard</camName>
<inputBitrate>38.016</inputBitrate>
<outputBitrate>8.296</outputBitrate>
</camStatusListEntry>
7.5 removeVmtxServerSettings
This method removes Verimatrix descrambling server settings from the system. The
method takes a Verimatrix descrambler slotId as an argument.
If the descrambler card is in use, its server settings will not be removed.
Response
<removeVmtxServerSettings>
<slotId>2</slotId>
</removeVmtxServerSettings>
<?xml version="1.0"?>
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
<env:Body>
<getDescramblerSetupResponse
xmlns="http://www.appeartv.com/automation/v1">
<code>100</code>
<message>OK</message>
<descramblerList>
<descramblerListEntry>
<slotId>5</slotId>
<services>0</services>
<algorithm>dvb csa</algorithm>
<emmSource>
<slotId>8</slotId>
<portId>1</portId>
</emmSource>
<companyName>appeartv</companyName>
<serverIp>1.1.1.1</serverIp>
<serverPort>1111</serverPort>
<preferredVksEnable>0</preferredVksEnable>
<messageFormate>Default</messageFormate>
<timeout>10</timeout>
<retryInterval>300</retryInterval>
<connectionRetries>2</connectionRetries>
<bitrate>0.00</bitrate>
<supportedAlgorithms>
<algorithm>dvb csa</algorithm>
</supportedAlgorithms>
<smartCardsList>
<smartCardsEntry>
<portId>0</portId>
<emmSource>
<slotId>8</slotId>
<portId>0</portId>
</emmSource>
</smartCardsEntry>
...
...
<smartCardsEntry>
<portId>15</portId>
<emmSource>
<slotId>8</slotId>
<portId>15</portId>
</emmSource>
</smartCardsEntry>
</smartCardsList>
</descramblerListEntry>
</descramblerList>
</getDescramblerSetupResponse>
</env:Body>
</env:Envelope>
DDM (Dual Decoder module): The first decoder generations, MPEG2 only. This came
with both baseband and RF output.
The ADM also come with baseband/RF and also SDI. Furthermore the ADM RF
modulation comes in two variations; the VMOD and the TVMOD solution. The TVMOD
solution is the most compact and provides 8 channels in three slots. In this configuration
two ADM boards share a common TVMOD card, where the left ADM is mapped to the
upper plug (Port A), and the ADM to the right is mapped to the lower plug (Port B). Each
port is driven by two modulators both carrying two services. This means that these two
services must be in adjacent frequency lineup.
The ADM with TVMOD may also be used as a 4 channel solution where only 1 ADM board
is grouped with the TVMOD. In this scenario each channel gets assigned its own
modulator resulting in a fully agile solution. I.e. channel A and B is mapped to the upper
plug (Port A) and channel C and D is mapped to the lower plug (Port B). The association
between the ADM and TVMOD is available in the getModuleList call.
A decoderListEntry consists of slot and port pairs that identify the entry together with
each section of parameters:
High Performance RF is configured using the hpConfig element with the following
parameters:
Query
<?xml version="1.0"?>
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
<env:Body>
<setDecoderConfig xmlns="http://www.appeartv.com/automation/v1">
<DecoderList>
<DecoderListEntry>
<slotId>13</slotId>
<portId>0</portId>
<channelId>0</channelId>
<service>
<slotId>1</slotId>
<portId>0</portId>
<serviceId>1501</serviceId>
</service>
<backupInputRef>
<slotId>8</slotId>
<portId>0</portId>
<serviceId>1501</serviceId>
<redType>once</redType>
<redDelay>0</redDelay>
</backupInputRef>
<testTone>
<enable>0</enable>
</testTone>
<video>
<arConversion>letterbox</arConversion>
<arConversionStandard>Normal</arConversionStandard>
<signalStandard>SECAM</signalStandard>
<frameRate>50</frameRate>
<resolution>sd</resolution>
<hResolution>scale</hResolution>
<aspectRatio>4:3</aspectRatio>
</video>
<audio>
<firstPriorityLanguage>nor</firstPriorityLanguage>
<secondPriorityLanguage>any</secondPriorityLanguage>
<audioTypePriority>
<selection>audio</selection>
<selection>aac</selection>
</audioTypePriority>
8.3 setOSDM
This method configures On Screen Digital Messages (OSDM) on the decoder module; the
new configuration overwrites the previous one.
<?xml version="1.0"?>
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
<env:Body>
<setOSDM xmlns="http://www.appeartv.com/automation/v1">
<osdmList>
<osdmEntry>
<messagId></messageId>
<message></message>
<enable></enable>
<isScrolling></isScrolling>
<position></position>
<osdmMapList>
<osdmMapEntry>
<slotId></slotId>
<portId></portId>
<channelId></channelId>
</osdmMapEntry>
</osdmMapList>
</osdmEntry>
</osdmList>
</setOSDM>
</env:Body>
</env:Envelope>
8.4 getOSDM
This method retrieves the configuration of OSDM for the decoder module. The method
takes no parameters and returns a list, osdmList, with the same format as that used in
setOSDM.
8.5 getFmRadioCardConfig
This method retrieves the configuration for:
The method returns decoderList with the same format as that used in
setDecoderConfiguration, or an error message if slotId refers to a card that does not
exist.
Response
<?xml version="1.0"?>
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
<env:Body>
<setFmRadioCardConfig xmlns="http://www.appeartv.com/automation/v1">
<FmRadioCardList>
<FmRadioCardListEntry>
<slotId>5</slotId>
<carriers>4</carriers>
<levelPerCarrier>60</levelPerCarrier>
<levelPerCarrierUnit>dBmV</levelPerCarrierUnit>
<deviationPilotTone>6.5</deviationPilotTone>
<mpxTestSignalSource>5</mpxTestSignalSource>
<mpxOutputLevel>-2.5</mpxOutputLevel>
</FmRadioCardListEntry>
</FmRadioCardList>
</setFmRadioCardConfig>
</env:Body>
</env:Envelope>
8.7 getFmRadioConfig
This method retrieves the configuration for:
8.8 setFmRadioConfig
This method is used to set the configuration of any or all FM Radio modules. It consists
of an fmRadioList with an fmRadioListEntry for each channel per FM Radio module.
An fmRadioListEntry consists of slot and port pairs that identify the carrier together
with each section of parameters:
PIC Options (Program Identification Code Override) contains the following parameters:
Query
<?xml version="1.0"?>
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
<env:Body>
<setFmRadioConfig xmlns="http://www.appeartv.com/automation/v1">
<FmRadioList>
<FmRadioListEntry>
<slotId>14</slotId>
<portId>5</portId>
<service>
<slotId>16</slotId>
<portId>22</portId>
<serviceId>28400</serviceId>
</service>
getAdmidConfig
This method is obsolete and should not be used anymore. Instead, use the
following:
setAdminConfig
This method is obsolete and should not be used anymore. Instead, use the
following sequence:
setIPOutputPort
setTransport
setService
This method is obsolete and should not be used anymore. Instead, use the
following sequence:
This method is obsolete and should not be used anymore. Instead, use the
following sequence:
getTransport
getService
getIPOutPort
getIPOutputStreamList will continue to be a valid command in order to
preserve backward compatibility with existing SOAP.
Response
<ipOutputList>
<ipOutput>
<slotId></slotId>
<portId></portId>
<enable></enable>
<mode></mode>
<ipAddress></ipAddress>
<ipPort></ipPort>
<tos></tos>
<ttl></ttl>
<rtp></rtp>
<tpp></tpp>
<sourcePort></sourcePort>
<totalBitrate></totalBitrate>
<fec>
<fecEnable></fecEnable>
<fecMode></fecMode>
<fecColumns></fecColumns>
<fecRows></fecRows>
</fec>
<redundancy>
<enable></enable>
<sourceIp></sourceIp>
<manual></manual>
<redundancyControl></redundancyControl>
</redundancy>
</ipOutput>
</ipOutputList>
The method returns ipOutputList with the same format as that used in
setupIPOutPort.
Response
<?xml version="1.0"?>
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
<env:Body>
<getIPOutPortResponse xmlns="http://www.appeartv.com/automation/v1">
<code>100</code>
<message>OK</message>
<ipOutputList>
<ipOutput>
<slotId>11</slotId>
<portId>0</portId>
<enable>1</enable>
<mode>0</mode>
<ipAddress>239.255.1.1</ipAddress>
<ipPort>1234</ipPort>
<tos>0</tos>
<ttl>7</ttl>
<rtp>0</rtp>
<tpp>7</tpp>
<sourcePort>1234</sourcePort>
<totalBitrate>45000000</totalBitrate>
</ipOutput>
</ipOutputList>
</getIPOutPortResponse>
</env:Body>
</env:Envelope>
An ASI output module’s port mode is always MPTS. Hence, unlike the IP output
module, the mode parameter (MPTS or SPTS) has been discarded for this module.
This method defines streaming ports to be set on the ASI output module. The new
definition replaces the previous one, changing the configuration of the ASI ports.
Response
<asiOutputList>
<asiOutput>
<slotId></slotId>
<portId></portId>
<enable></enable>
<packetSize></packetSize>
<byteMode></byteMode>
<totalBitrate></totalBitrate>
</asiOutput>
</asiOutputList>
The method returns asiOutputList with the same format as that used in
setASIOutPort.
Response
<?xml version="1.0"?>
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
<env:Body>
<getASIOutPortResponse xmlns="http://www.appeartv.com/automation/v1">
<code>100</code>
<message>OK</message>
<asiOutputList>
<asiOutput>
<slotId>6</slotId>
<portId>0</portId>
<enable>0</enable>
<packetSize>188</packetSize>
<byteMode>Spread</byteMode>
<totalBitrate>54000000</totalBitrate>
</asiOutput>
</asiOutputList>
</getASIOutPortResponse>
If portId is greater than 3, the additional entries will be added as COFDM virtual
ports.
Query
<setCofdmOutPort>
<cofdmOutputList>
<cofdmOutput>
<slotId>12</slotId>
<portId>0</portId>
<enable>1</enable>
<frequency>51.000</frequency>
<constellation>QAM64</constellation>
<rfLevel>-3.0</rfLevel>
<bandwidth>6</bandwidth>
<innerCode>1/2</innerCode>
<txMode>2K</txMode>
<guardInterval>1/32</guardInterval>
</cofdmOutput>
</cofdmOutputList>
</setCofdmOutPort>
The method returns cofdmOutputList with the same format as that used in
setCofdmOutPort.
9.12 setDvbT2OutPort
This method defines streaming ports to be set on the DVB-T2 output module. The new
definition replaces the previous one, changing the configuration of the DVB-T2 ports.
If portId is greater than 1, the additional entries will be added as DVB-T2 virtual
ports.
Query
<?xml version="1.0"?>
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
<env:Body>
<setDvbT2OutPort xmlns="http://www.appeartv.com/automation/v1">
<dvbT2OutputList>
<dvbT2Output>
<slotId>16</slotId>
<portId>1</portId>
<t2CellId>0</t2CellId>
<t2SystemId>0</t2SystemId>
<enable>1</enable>
<modulator>
<rfLevel>0.0</rfLevel>
<bandwidth>8.0</bandwidth>
<frequency>738.000</frequency>
<txMode>8K-ext</txMode>
<t2Frames>2</t2Frames>
<guardInterval>1/16</guardInterval>
<l1Constellation>BPSK</l1Constellation>
<pilotPattern>PP4</pilotPattern>
<dataSymbols>50</dataSymbols>
</modulator>
<plp>
<fecFrameSize>normal</fecFrameSize>
<constellation>QPSK</constellation>
<constellationRotation>1</constellationRotation>
<codeRate>5/6</codeRate>
<highEfficiencyMode>1</highEfficiencyMode>
<tsFragmentation>1</tsFragmentation>
</plp>
</dvbT2Output>
</dvbT2OutputList>
</setDvbT2OutPort>
</env:Body>
</env:Envelope>
The method returns dvbT2OutputList with the same format as that used in
setDvbT2OutPort.
The return message consists of a list of IP output modules’ status information entries.
Each entry contains the following parameters:
Query
<?xml version="1.0"?>
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
<env:Body>
<getIPOutStatus xmlns="http://www.appeartv.com/automation/v1">
</getIPOutStatus>
</env:Body>
</env:Envelope>
<?xml version="1.0"?>
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
<env:Body>
<getIPOutStatusResponse xmlns="http://www.appeartv.com/automation/v1">
<code>100</code>
<message>OK</message>
<IPOutStatusList>
<IPOutStatusListEntry>
<slotId>13</slotId>
<totalBitrate>0.000</totalBitrate>
<effectiveBitrate>0.000</effectiveBitrate>
<ccErrors>0</ccErrors>
</IPOutStatusListEntry>
</IPOutStatusList>
</getIPOutStatusResponse>
</env:Body>
</env:Envelope>
9.15 getQAMOutStatus
This method retrieves status information for:
The method returns a list of QAM output modules' status information entries. Each entry
contains the following parameters:
<?xml version="1.0"?>
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
<env:Body>
<getQAMOutStatus xmlns="http://www.appeartv.com/automation/v1">
</getQAMOutStatus>
</env:Body>
</env:Envelope>
Response
<?xml version="1.0"?>
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
<env:Body>
<getQAMOutStatusResponse xmlns="http://www.appeartv.com/automation/v1">
<code>100</code>
<message>OK</message>
<QAMOutStatusList>
<QAMOutStatusListEntry>
<slotId>14</slotId>
<totalBitrate>24.0586</totalBitrate>
<effectiveBitrate>109.975</effectiveBitrate>
<ccErrors>142</ccErrors>
</QAMOutStatusListEntry>
</QAMOutStatusList>
</getQAMOutStatusResponse>
</env:Body>
</env:Envelope>
9.16 getASIOutStatus
This method retrieves status information for:
Query
<?xml version="1.0"?>
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
<env:Body>
<getASIOutStatus xmlns="http://www.appeartv.com/automation/v1">
</getASIOutStatus>
</env:Body>
</env:Envelope>
Response
<?xml version="1.0"?>
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
<env:Body>
<getQAMOutStatusResponse xmlns="http://www.appeartv.com/automation/v1">
<code>100</code>
<message>OK</message>
<QAMOutStatusList>
<QAMOutStatusListEntry>
<slotId>14</slotId>
<totalBitrate>24.0586</totalBitrate>
<effectiveBitrate>109.975</effectiveBitrate>
<ccErrors>142</ccErrors>
</QAMOutStatusListEntry>
</QAMOutStatusList>
</getQAMOutStatusResponse>
</env:Body>
</env:Envelope>
rfGroupListEntry parameters:
rfGroupId One of two values: (1=output ports 0 to 3), (2=output ports
4 to 8)
symbolRate Symbol rate in MBd: between 4.48 – 7
constellation Either QAM32, QAM64, QAM128, or QAM256
spacing Frequency difference in MHz between two consecutive
output ports of the same group, from 5 to 8.
startFrequency Frequency of the first output port of the group: between 51
– 858MHz.
Query
<?xml version="1.0"?>
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
<env:Body>
<setQAMOutDevice xmlns="http://www.appeartv.com/automation/v1">
<qamOutDevice>
<slotId>14</slotId>
<rfLevel>-3.0</rfLevel>
<rfGroupList>
<rfGroupListEntry>
<rfGroupId>1</rfGroupId>
<symrate>4.480</symrate>
<constellation>QAM64</constellation>
<spacing>8.000</spacing>
<startFrequency>51.000</startFrequency>
</rfGroupListEntry>
<rfGroupListEntry>
<rfGroupId>2</rfGroupId>
<symrate>4.480</symrate>
<constellation>QAM64</constellation>
9.18 getQAMOutDevice
This method retrieves modulation configuration of the output ports for:
Query
<?xml version="1.0"?>
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
<env:Body>
<getQAMOutDevice xmlns="http://www.appeartv.com/automation/v1">
</getQAMOutDevice>
</env:Body>
</env:Envelope>
<?xml version="1.0"?>
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
<env:Body>
<getQAMOutDeviceResponse xmlns="http://www.appeartv.com/automation/v1">
<code>100</code>
<message>OK</message>
<qamOutDevice>
<slotId>4</slotId>
<rfLevel>-3.0</rfLevel>
<rfGroupList>
<rfGroupListEntry>
<rfGroupId>1</rfGroupId>
<symrate>5.480</symrate>
<constellation>QAM128</constellation>
<spacing>8.000</spacing>
<startFrequency>51.000</startFrequency>
</rfGroupListEntry>
<rfGroupListEntry>
<rfGroupId>2</rfGroupId>
<symrate>4.480</symrate>
<constellation>QAM32</constellation>
<spacing>8.000</spacing>
<startFrequency>83.000</startFrequency>
</rfGroupListEntry>
</rfGroupList>
</qamOutDevice>
</getQAMOutDeviceResponse>
</env:Body>
</env:Envelope>
9.19 setQAMOutAnnexBDevice
This method configures the modulation of output ports in the QAM Annex B output
module.
Query
<?xml version="1.0"?>
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
<env:Body>
<setQAMOutAnnexBDevice xmlns="http://www.appeartv.com/automation/v1">
<qamOutAnnexBDevice>
<slotId>4</slotId>
<constellation>QAM64</constellation>
<interleaverI>128</interleaverI>
<interleaverJ>8</interleaverJ>
<rfLevel>-3.0</rfLevel>
<rfGroupList>
<rfGroupListEntry>
<rfGroupId>1</rfGroupId>
<startFrequency>451.000</startFrequency>
</rfGroupListEntry>
<rfGroupListEntry>
<rfGroupId>2</rfGroupId>
<startFrequency>83.000</startFrequency>
</rfGroupListEntry>
</rfGroupList>
</qamOutAnnexBDevice>
</setQAMOutAnnexBDevice>
</env:Body>
</env:Envelope>
9.20 getQAMOutAnnexBDevice
This method retrieves modulation configuration of the output ports for:
c. all QAM Annex B output modules in the unit; depending on the parameters:
<?xml version="1.0"?>
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
<env:Body>
<getQAMOutAnnexBDevice xmlns="http://www.appeartv.com/automation/v1">
</getQAMOutAnnexBDevice>
</env:Body>
</env:Envelope>
Response
<?xml version="1.0"?>
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
<env:Body>
<getQAMOutAnnexBDeviceResponse
xmlns="http://www.appeartv.com/automation/v1">
<code>100</code>
<message>OK</message>
<qamOutDevice>
<slotId>3</slotId>
<constellation>QAM64</constellation>
<interleaverI>32</interleaverI>
<interleaverJ>4</interleaverJ>
<rfLevel>-3.0</rfLevel>
<rfGroupList>
<rfGroupListEntry>
<rfGroupId>1</rfGroupId>
<startFrequency>51.000</startFrequency>
</rfGroupListEntry>
<rfGroupListEntry>
<rfGroupId>2</rfGroupId>
<startFrequency>83.000</startFrequency>
</rfGroupListEntry>
</rfGroupList>
</qamOutDevice>
</getQAMOutAnnexBDeviceResponse>
</env:Body>
</env:Envelope>
Query
<?xml version="1.0"?>
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
<env:Body>
<setQAMOut16AnnexBDevice xmlns="http://www.appeartv.com/automation/v1">
<qamOut16AnnexBDevice>
<qamModulatorEntry>
<slotId>6</slotId>
<qamModulator>0</qamModulator>
<rfLevel>-3.0</rfLevel>
<interleaverI>128</interleaverI>
<interleaverJ>1</interleaverJ>
<constellation>QAM64</constellation>
<frequency>51.000</frequency>
</qamModulatorEntry>
<qamModulatorEntry>
<slotId>6</slotId>
<qamModulator>1</qamModulator>
<rfLevel>-3.0</rfLevel>
<interleaverI>128</interleaverI>
<interleaverJ>1</interleaverJ>
<constellation>QAM64</constellation>
<frequency>83.000</frequency>
</qamModulatorEntry>
<qamModulatorEntry>
<slotId>6</slotId>
<qamModulator>2</qamModulator>
<rfLevel>-3.0</rfLevel>
<interleaverI>128</interleaverI>
<interleaverJ>1</interleaverJ>
<constellation>QAM64</constellation>
<frequency>115.000</frequency>
</qamModulatorEntry>
9.22 getQAMOut16AnnexBDevice
This method retrieves modulation configuration of the output ports for:
c. all QAM16 Annex B output modules in the unit; depending on the parameters:
Query
<?xml version="1.0"?>
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
<env:Body>
<getQAMOut16AnnexBDevice xmlns="http://www.appeartv.com/automation/v1">
</getQAMOut16AnnexBDevice>
</env:Body>
</env:Envelope>
Query
<?xml version="1.0"?>
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
<env:Body>
<setQAMOut16Device xmlns="http://www.appeartv.com/automation/v1">
<qamOut16Device>
<qamModulatorEntry>
<slotId>15</slotId>
<qamModulator>0</qamModulator>
<rfLevel>-3.0</rfLevel>
<symrate>6.950</symrate>
<constellation>QAM256</constellation>
<spacing>8.000</spacing>
<frequency>306.000</frequency>
<spectrumInversion>0</spectrumInversion>
</qamModulatorEntry>
<qamModulatorEntry>
<slotId>15</slotId>
<qamModulator>1</qamModulator>
<rfLevel>-3.0</rfLevel>
<symrate>6.950</symrate>
<constellation>QAM256</constellation>
<spacing>8.000</spacing>
<frequency>338.000</frequency>
<spectrumInversion>1</spectrumInversion>
</qamModulatorEntry>
<qamModulatorEntry>
<slotId>15</slotId>
<qamModulator>2</qamModulator>
<rfLevel>-3.0</rfLevel>
<symrate>6.950</symrate>
<constellation>QAM256</constellation>
<spacing>8.000</spacing>
<frequency>370.000</frequency>
9.24 getQAMOut16Device
This method retrieves modulation configuration of the output ports for:
Query
<?xml version="1.0"?>
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
<env:Body>
<getQAMOut16Device xmlns="http://www.appeartv.com/automation/v1">
</getQAMOut16Device>
</env:Body>
</env:Envelope>
The method has the following parameters defined in the outputListEntry element:
Query
<qamOutputList>
<qamOutputListEntry>
<slotId></slotId>
<portId></portId>
<enable></enable>
<j183Jctea></j183Jctea>
</qamOutputListEntry>
</qamOutputList>
9.26 getQAMOutPort
This method retrieves QAM output ports defined for:
The method returns a list of all QAM output ports as defined in the setQAMOutPort
method.
<?xml version="1.0"?>
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
<env:Body>
<setQAMOutVirtualPort xmlns="http://www.appeartv.com/automation/v1">
<virtualQamOutputList>
<virtualQamOutputListEntry>
<slotId>9</slotId>
<portId>333</portId>
<frequency>51.000</frequency>
<constellation>QAM64</constellation>
<rfLevel>-3.0</rfLevel>
<symrate>4.480</symrate>
<enable>0</enable>
</virtualQamOutputListEntry>
</virtualQamOutputList>
</setQAMOutVirtualPort>
</env:Body>
</env:Envelope>
9.28 getQAMOutVirtualPort
This method retrieves virtual QAM output ports defined for:
The method returns a list of all virtual QAM output ports as defined in the
setQAMOutVirtualPort method.
For an IP module, both the ports (MPTS/SPTS) and their attached streams will be
removed
For other modules, their services shall be removed but not their ports.
To remove one particular service from an output port, use setService and
exclude the serviceListEntry node for the service you want to remove.
Response
<outputList>
<output>
<slotId></slotId>
<portId></portId>
</output>
</outputList>
Query
<?xml version="1.0"?>
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
<env:Body>
<releaseAllOutputPorts xmlns="http://www.appeartv.com/automation/v1">
<outputList>
<output>
<slotId>1</slotId>
</output>
</outputList>
</releaseAllOutputPorts>
</env:Body></env:Envelope>
9.31 setTransport
This method configures the transport to one or more output ports. Depending on the
mode used at port level, some restrictions will apply:
If the transport is related to a port for SPTS output streams, it is not possible to
define external PID mapping together with transparent mode.
scsSlotId
In new applications, these three parameters uniquely
emmgInput
identify an EMM.
streamId
pidListEntry under pidList node contains transport stream level PID import
parameters:
Query
<transportEntryList>
<transportEntry>
<slot></slot>
<portId></portId>
<psi>
<domain></domain>
<netId></netId>
<tsId></tsId>
<origNetId></origNetId>
<tableList>
<psiMode></psiMode>
<tableEntry>
<tableId></tableId>
<isUsebaseValue></isUsebaseValue>
<mode></mode>
<playoutRate></playoutRate>
</tableEntry>
</tableList>
</psi>
<scrambling>
<emmList>
<emmListEntry>
< emmRef >
<scsSlotId></scsSlotId>
<emmgInput></emmgInput>
9.32 getTransport
This method retrieves a list of transport level configuration associated with output ports.
The return message contains an XML structure as defined in the setTransport method.
In the inputRef node, the serviceId parameter is optional for backward compatibility.
However it is strongly recommended that a value be provided for serviceId to aid in
detecting potential serviceId collisions in an MPTS output port.
Service sources are described using the following parameters under serviceListEntry:
priority Represents the strength of the rule – the lower the number,
the higher the priority; starts from 1. The default value is -1
indicating lowest priority.
compType Component type (anytype, video, audio, ttx, dvbsub, emm,
ecm, pcr, private, ac-3, h.264, vbi, aac, pmt, vc-1, scs-ecm
or dpi cue).
language Audio, subtitle or teletext language (nor, swe, dan, fin,etc.)
incommingPid Selected incoming PID from the incoming service: between
1 – 8192 (-1 indicates no PID mapping)
mode Mode applied to component type mapping: either remap,
passthrough, or stop.
outgoingPid Outgoing remapping of the incoming PID value to a new
value: between 1 – 8192 (-1 indicates no PID mapping)
Input Reference is set up within each serviceListEntry with the inputRef node:
PSI changes are set up within each serviceListEntry with the psi node:
scsSlotId
In new applications, these three parameters uniquely
ecmgInput
identify an EMM.
streamId
scramblingMode Type of scrambling: selective or normal
serviceMode Components selected for scrambling:
“all” – All PIDs in the stream are scrambled
“av” – Audio and video only
“avt” – Audio, video, and teletext only
“avts” – Audio, video, teletext, and subtitling only
“off” – None of the PIDs are scrambled
scrComponentTypeList Contains list of scrComponentTypeListEntry node as
described below. Optional, only for manual component type
scrambling.
scramblingRatio Percentage of packets scrambled, optional. The default
value is 100.
ecmAlignment Mode for aligned ECM positioning in the stream, optional.
Service PSI is set up within tableEntry with the “servicePsi” node: (Optional)
Audio leveling can be set up (optional) within each inputListEntry with the
audioleveling node:
Query
<outputList>
<functionScope></functionScope>
<outputListEntry>
<slotId></slotId>
<portId></portId>
<serviceList>
<serviceListEntry>
<inputRef>
<slotId></slotId>
<portId></portId>
<serviceId></serviceId>
<priority></priority>
</inputRef>
<backupInputRef>
<slotId></slotId>
<portId></portId>
<serviceId></serviceId>
<redType>once</redType>
<redDelay>1</redDelay>
</backupInputRef>
<psi>
<serviceId></serviceId>
<serviceName></serviceName>
<provider></provider>
<serviceType></serviceType>
</psi>
<descrambling>
<descType></descType>
<slotId></slotId>
<portId></portId>
<bissKey></bissKey>
</descrambling>
<componentMode></componentMode>
<componentTypeList>
<componentTypeListEntry>
<priority></priority>
<compType></compType>
<language></language>
<incomminPid></incommingPid>
9.35 setAudioLevel
This method is used to set the audio level of one or more services to a particular output
port. The method is valid both for MPTS and SPTS modes.
Service sources are described using the following parameters under serviceListEntry:
Input Reference is set up within each serviceListEntry with the inputRef node:
Audio leveling can be set up within each inputListEntry with the audioleveling node:
processSlot Identifies a particular process module used for audio
leveling
language Service’s language
audioLevel Audio level for the service’s language
<?xml version="1.0"?>
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
<env:Body>
<setAudioLevel xmlns="http://www.appeartv.com/automation/v1">
<outputList>
<outputListEntry>
<slotId>16</slotId>
<portId>32</portId>
<serviceList>
<serviceListEntry>
<inputRef>
<slotId>2</slotId>
<portId>30</portId>
<serviceId>28108</serviceId>
</inputRef>
<audioLeveling>
<audioLevelCompList>
<audioLevelCompEntry>
<processSlot>12</processSlot>
<language>deu</language>
<audioLevel>2</audioLevel>
</audioLevelCompEntry>
<audioLevelCompEntry>
<processSlot>12</processSlot>
<language>mis</language>
<audioLevel>4</audioLevel>
</audioLevelCompEntry>
</audioLevelCompList>
</audioLeveling>
</serviceListEntry>
</serviceList>
</outputListEntry>
</outputList>
</setAudioLevel>
</env:Body>
</env:Envelope>
9.36 getAudioLevel
This method retrieves a list of services with audio level configuration associated with
ports. The return message contains an XML structure as defined in the setAudioLevel
method.
9.38 getPsiGenerator
This method returns the configuration of the PSI generator in the system. The return
message contains an XML structure as defined in the setPsiGenerator method.
9.39 removePsiGenerator
This method removes the PSI generator configured in the system. The method takes no
parameters.
9.40 setPsiTableBaseValues
This method is used to set PSI table base values, NIT settings, and TOT settings. The
method takes a list of psiTableBaseValuesEntries, nitSettings, and totSettings
as parameters containing the following elements:
Query
<psiTableBaseValues>
<psiTableBaseValuesList>
<psiDomain>default</psiDomain>
<psiBaseValuesMode>DVB</psiBaseValuesMode>
<psiTableBaseValuesEntry>
<tableId>0</tableId>
<mode>1</mode>
<playoutRate>200</playoutRate>
9.41 getPsiTableBaseValues
This method returns the PSI table base values, NIT settings, and TOT settings. The
return message contains an XML structure as defined in the setPsiTableBaseValues
method.
The return message contains a list of output modules Status Information entries. Each
entry has the following parameters:
Query
<?xml version="1.0"?>
<soap:Envelope xmlns:soap="http://www.w3.org/2003/05/soap-envelope">
<soap:Body>
<getOutputStatus xmlns="http://www.appeartv.com/automation/v1">
</getOutputStatus>
</soap:Body>
</soap:Envelope>
Response
<?xml version="1.0"?>
<soap:Envelope xmlns:soap=”http://www.w3.org/2003/05/soap-envelope”>
<soap:Body>
<getOutputStatusListResponse
xmlns="http://www.appeartv.com/automation/v1">
<code>100</code>
<message>OK</message>
<outputStatusList>
<outputStatusEntry>
<slotId>1</slotId>
<type>ipout</type>
<services>3</services>
<totalRate>29.617</totalRate>
<ccErrors>11</ccErrors>
<atvCCErrors>150</atvCCErrors>
<outputRate>17.270</outputRate>
</outputStatusEntry>
</outputStatusList>
</getOutputStatusListResponse>
</soap:Body>
9.43 setPsiDomain
This method is used to add PSI domains. The method takes a list of
psiDomainListEntry as parameter containing the following elements:
Query
<?xml version="1.0"?>
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
<env:Body>
<setPsiDomain xmlns="http://www.appeartv.com/automation/v1">
<psiDomainList>
<psiDomainListEntry>
<domainName>first domain</domainName>
</psiDomainListEntry>
<psiDomainListEntry>
<domainName>second domain</domainName>
</psiDomainListEntry>
</psiDomainList>
</setPsiDomain>
</env:Body>
</env:Envelope>
9.44 getPsiDomain
This method returns the PSI domains. The return message contains an XML structure as
defined in the setPsiDomain method.
Query
<?xml version="1.0"?>
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
<env:Body>
<removePsiDomain xmlns="http://www.appeartv.com/automation/v1">
<psiDomainList>
<psiDomainListEntry>
<domainName>first domain</domainName>
</psiDomainListEntry>
<psiDomainListEntry>
<domainName>second domain</domainName>
</psiDomainListEntry>
</psiDomainList>
</removePsiDomain>
</env:Body>
</env:Envelope>