Download as pdf or txt
Download as pdf or txt
You are on page 1of 172

SOAP XML Automation Interface

Providing a remote API to the Appear TV platform

Version 3.4

Appear TV AS +47 2411 9020


Lilleakerveien 2b www.appeartv.com
PO Box 8 Lilleaker info@appeartv.com
NO-0216 Oslo
Norway

Page 1 of 172
Table of Contents
1 Overview............................................................................................9

2 System ............................................................................................. 12

2.1 getLastUpdateTime ................................................................................. 12

2.2 getModuleList ......................................................................................... 13

2.3 getAdminConfig ...................................................................................... 15

2.4 setAdminConfig ...................................................................................... 17

2.5 getOptionalLanguages ............................................................................. 17

2.6 setOptionalLanguages ............................................................................. 18

2.7 getLicenses ............................................................................................ 18

2.8 installLicense .......................................................................................... 20

2.9 exportConfiguration................................................................................. 22

2.10 importConfiguration ................................................................................ 23

2.11 getAlarmList ........................................................................................... 24

2.12 getAlarmTypes ....................................................................................... 25

2.13 getAlarmRootCauseFilter .......................................................................... 26

2.14 setAlarmRootCauseFilter .......................................................................... 27

2.15 getAlarmSnmpFilter ................................................................................ 28

2.16 setAlarmSnmpFilter ................................................................................. 29

2.17 getAlarmFilter......................................................................................... 30

2.18 setAlarmFilter ......................................................................................... 31

2.18 getSnmpTrapDestination .......................................................................... 32

2.19 setSnmpTrapDestination .......................................................................... 33

2.20 getMmiStatus ......................................................................................... 34

2.21 removeMissingCards................................................................................ 35

2.22 setTimeDate ........................................................................................... 36

2.23 getTimeDate .......................................................................................... 37

2.24 setRedundancySwTriggers ....................................................................... 37

Page 2 of 172
2.25 getRedundancySwTriggers ....................................................................... 38

2.26 setDeviceName ....................................................................................... 38

2.27 getDeviceName ...................................................................................... 38

2.28 setPsiGenerationSettings ......................................................................... 38

2.29 getPsiGenerationSettings ......................................................................... 39

3 Processing ....................................................................................... 40

3.1 setEitSourceSelection .............................................................................. 40

3.2 getEitSourceSelection .............................................................................. 41

3.3 getEpgStatus .......................................................................................... 42

3.4 setEitSource ........................................................................................... 44

4 Redundancy ..................................................................................... 46

4.1 setInternalRedundancy ............................................................................ 46

4.2 forceInternalSwitch ................................................................................. 47

4.3 getInternalRedundancy ............................................................................ 48

4.4 getRedundancyStatus .............................................................................. 48

4.5 setInputPortRedundancy .......................................................................... 50

4.6 getInputPortRedundancy .......................................................................... 51

4.7 removeInputPortRedundancy.................................................................... 52

4.8 forceInputSwitch..................................................................................... 52

4.9 getInputRedundancyStatus ...................................................................... 53

4.10 getOutputRedundancy ............................................................................. 55

4.11 setOutputRedundancy ............................................................................. 56

5 Input................................................................................................ 57

5.1 setASIInputConfig ................................................................................... 57

5.2 getASIInputConfig .................................................................................. 57

5.3 getASIStatus .......................................................................................... 59

5.4 setQPSKInputConfig ................................................................................ 60

5.5 getQPSKInputConfig ................................................................................ 61

Page 3 of 172
5.6 getQPSKStatus ....................................................................................... 61

5.7 setDVB-S-S2InputConfig .......................................................................... 63

5.8 getDVB-S-S2InputConfig ......................................................................... 64

5.9 getDVB-S-S2Status ................................................................................. 65

5.10 setCOFDMInputConfig.............................................................................. 67

5.11 getCOFDMInputConfig ............................................................................. 67

5.12 getCOFDMStatus ..................................................................................... 68

5.13 setQAMInputConfig ................................................................................. 70

5.14 getQAMInputConfig ................................................................................. 70

5.15 getQAMStatus ........................................................................................ 71

5.16 setQAMBInputConfig ............................................................................... 73

5.17 getQAMBInputConfig ............................................................................... 73

5.18 setVSBInputConfig .................................................................................. 74

5.19 getVSBInputConfig .................................................................................. 74

5.20 getVSBStatus ......................................................................................... 75

5.21 setMonitorConfig ..................................................................................... 76

5.22 getMonitorConfig .................................................................................... 77

5.23 setupIPInputInterface (obsolete) .............................................................. 77

5.24 getIPInputInterfaceSetup (obsolete) ......................................................... 77

5.25 addIPInputConfig .................................................................................... 77

5.26 getIPInputConfig ..................................................................................... 79

5.27 getIPInputStatus .................................................................................... 80

5.28 removeIPInputConfig............................................................................... 81

5.29 getInputServiceList ................................................................................. 81

5.30 getInputServiceComponents ..................................................................... 83

5.31 getInputPidList ....................................................................................... 84

5.32 getInputStatus ....................................................................................... 86

5.33 resetErrorCounter ................................................................................... 87

Page 4 of 172
6 Scrambling ....................................................................................... 88

6.1 defineECMG............................................................................................ 88

6.2 removeECMG.......................................................................................... 89

6.3 getECMG ................................................................................................ 89

6.4 setEcmgRedundancy ............................................................................... 90

6.5 getEcmgRedundancy ............................................................................... 91

6.6 defineECM .............................................................................................. 91

6.7 removeECM ............................................................................................ 92

6.8 getECM .................................................................................................. 92

6.9 defineEMMG ........................................................................................... 93

6.10 removeEMMG ......................................................................................... 93

6.11 getEMMG ............................................................................................... 94

6.12 defineEMM ............................................................................................. 94

6.13 removeEMM ........................................................................................... 95

6.14 getEMM ................................................................................................. 95

6.15 getScramblerSetup ................................................................................. 96

6.16 setupScrambler ...................................................................................... 97

6.17 setBissKeys ............................................................................................ 97

6.18 getBissKeys ............................................................................................ 98

6.19 removeBissKeys...................................................................................... 98

6.20 setEisInterface........................................................................................ 99

6.21 getEisInterface ....................................................................................... 99

6.22 removeEisInterface ............................................................................... 100

7 Descrambling ................................................................................. 101

7.1 setCAMConfig ....................................................................................... 101

7.2 getCAMConfig ....................................................................................... 102

7.3 resetCAModule ..................................................................................... 103

7.4 getCAMStatus ....................................................................................... 103

Page 5 of 172
7.5 removeVmtxServerSettings .................................................................... 105

7.6 getDescramblerSetup ............................................................................ 106

7.7 setupDescrambler ................................................................................. 108

8 Analog Output Configuration ......................................................... 109

8.1 getDecoderConfig ................................................................................. 109

8.2 setDecoderConfig .................................................................................. 110

8.3 setOSDM.............................................................................................. 117

8.4 getOSDM ............................................................................................. 118

8.5 getFmRadioCardConfig .......................................................................... 118

8.6 setFmRadioCardConfig ........................................................................... 119

8.7 getFmRadioConfig ................................................................................. 119

8.8 setFmRadioConfig ................................................................................. 120

9 Digital Output Configuration .......................................................... 123

9.1 getIPOutputInterfaceSetup (obsolete) ..................................................... 123

9.2 setupIPOutputInterface (obsolete) .......................................................... 123

9.3 addIPOutputStream (obsolete) ............................................................... 123

9.4 removeIPOutputStream (obsolete) .......................................................... 124

9.5 getIPOutputStreamList (obsolete) ........................................................... 124

9.6 setIPOutPort ......................................................................................... 125

9.7 getIPOutPort ........................................................................................ 127

9.8 setASIOutPort ...................................................................................... 128

9.9 getASIOutPort ...................................................................................... 129

9.10 setCofdmOutPort .................................................................................. 130

9.11 getCofdmOutPort .................................................................................. 131

9.12 setDvbT2OutPort .................................................................................. 131

9.13 getDvbT2OutPort .................................................................................. 133

9.14 getIPOutStatus ..................................................................................... 134

9.15 getQAMOutStatus ................................................................................. 135

Page 6 of 172
9.16 getASIOutStatus ................................................................................... 136

9.17 setQAMOutDevice ................................................................................. 138

9.18 getQAMOutDevice ................................................................................. 139

9.19 setQAMOutAnnexBDevice ....................................................................... 140

9.20 getQAMOutAnnexBDevice ...................................................................... 141

9.21 setQAMOut16AnnexBDevice ................................................................... 143

9.22 getQAMOut16AnnexBDevice ................................................................... 144

9.23 setQAMOut16Device .............................................................................. 145

9.24 getQAMOut16Device.............................................................................. 146

9.25 setQAMOutPort ..................................................................................... 147

9.26 getQAMOutPort ..................................................................................... 147

9.27 setQAMOutVirtualPort ............................................................................ 148

9.28 getQAMOutVirtualPort ............................................................................ 149

9.29 releaseOutputPort ................................................................................. 150

9.30 releaseAllOutputPorts ............................................................................ 151

9.31 setTransport ......................................................................................... 151

9.32 getTransport ........................................................................................ 154

9.33 setService ............................................................................................ 155

9.34 getService............................................................................................ 162

9.35 setAudioLevel ....................................................................................... 162

9.36 getAudioLevel ....................................................................................... 163

9.37 setPsiGenerator .................................................................................... 164

9.38 getPsiGenerator .................................................................................... 164

9.39 removePsiGenerator .............................................................................. 164

9.40 setPsiTableBaseValues ........................................................................... 164

9.41 getPsiTableBaseValues........................................................................... 166

9.42 getOutputStatus ................................................................................... 167

9.43 setPsiDomain ....................................................................................... 168

Page 7 of 172
9.44 getPsiDomain ....................................................................................... 168

9.45 removePsiDomain ................................................................................. 169

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.

The URL for accessing the interface is http://sc2000.ip.address/automation/service/v1

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.

Configuration of the unit is split in two phases:

 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.

 Phase 2, on the other hand, is the configuration of outputs.

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.

SOAP Interface usage guidelines

 It is recommended to configure and poll as much as possible in as few as possible


SOAP requests. For example, if we have two output cards in the unit and want to
configure a number of services on both cards or get status, it will be more
efficient to send one SOAP request to for both output cards instead of sending
one SOAP request per card, or even worse one SOAP request per service.

 As internal status database is updated every 10 seconds, there is no point polling


status SOAP requests more often than every 5 seconds.

 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:

type “asi”, “qpsk”, “cofdm”, “qam”, “ip”, “scs”, “scrambler”,


“descrambler”, “decoder”, “radio”, “dvb-s/s2”
direction “input”, “output”, “notApplicable”
hardwareVersion Hardware version (if available)
numPorts Number of available input/output ports
swVer Software version string
fpgaVer Fpga version string for “asi”, “qpsk”, “cofdm”, “qam”, “ip”,
“scrambler” and “dvb-s/s2”
bootVer Boot software version, optional
serial Serial number of the module
cardWidth Number of slots the module occupies
present Determines if the card is present or not: (1=present, 0=not
present, 2=present on redundant MMI and 3=card type
mismatch)

Optional parameters for the Decoder module “ddmOptions”

ciOption Common interface option


rfOption Radio frequency modulation
stereoOption Stereo option (a2, nicam, or none)
hpOption High performance option
baseband If the decoder is base band

TV mode association

slotId Identifies TV mode association slot Id

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:

slotId Optionally select only one module in the chassis

Response contains adminConfigList:

slotId The slot of the module in question.


managementPort Settings of the management port.
controlPort Settings if the module has a control port.
dataPort Settings if the module has a data port and it is enabled.
dataPortB Settings if the module has a data port B ( only for ipswitch
input & output)
Contains same settings as dataPort.

Settings for management port:

port “Control Port”, “Data Port”, or “VLAN x” where x is the vlan


tag.

Settings for control port:

ipAddress IP address, not included if not set.


gatewayAddress Gateway address, not included if not set.
subnetMask Subnet mask, not included if not set.

Settings for data port:

ipAddress IP address, not included if not set.


gatewayAddress Gateway address, not included if not set.
subnetMask Subnet mask, not included if not set.
linkSpeed Link speed: AUTO, 10, 100, or 1000.
currentLinkSpeed Current selected link speed: 10, 100, or 1000.
vlanList Included if IP input card.

Page 15 of 172
Settings for vlanList:

vlanId Locally unique id of the vlan.


vlanTag Tag of the vlan.
name A name to associate with the vlan.
ipAddress IP address of the vlan.
gatewayAddress Gateway address of the vlan.
subnetMask Subnet mask of the vlan.

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.

The response message contains a list of language codes.

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

<?xml version="1.0" encoding="UTF-8"?>


<soap:Envelope xmlns:soap="http://www.w3.org/2003/05/soap-envelope">
<soap:Body>
<installLicense
xmlns="http://www.appeartv.com/automation/v1"><![CDATA[51b3a7f5071fa950a5c0
910c709b0d62366d0c3929a8bfcfe3e803bcca16e73d225a97bf936ebdfa3431f178d89bb85
af145de9748a2bf30721684c33458706ed40c5b7fa086e34c6b71b086fda274ae5b94d40d89
6454eee3861915005753b913c0966d26519aeb1939e9dba555d3e3a081a0c5a49aa132ad3e7
6e7bff82cf7
<?xml version="1.0" encoding="UTF-8"?>
<license id="license-1285679144"
type="incremental"><configuration><serial>0</serial><sfn><all/></sfn></conf
iguration></license>
]]></installLicense>
</soap:Body>
</soap:Envelope>

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

echo -e "<?xml version=\"1.0\" encoding=\"UTF-8\"?>" > ${TMPFILE}


echo -e "<soap:Envelope xmlns:soap=\"http://www.w3.org/2003/05/soap-envelope\">" >> ${TMPFILE}
echo -e " <soap:Body>" >> ${TMPFILE}
echo -en " <installLicense xmlns=\"http://www.appeartv.com/automation/v1\">" >> ${TMPFILE}
echo -en "<\041[CDATA[" >> ${TMPFILE}
cat ${LICENSEFILE} >> ${TMPFILE}
echo -e "]]></installLicense>" >> ${TMPFILE}
echo -e " </soap:Body>" >> ${TMPFILE}
echo -e "</soap:Envelope>" >> ${TMPFILE}

wget --post-file=${TMPFILE} -q -O - http://${HOST}/automation/service/v1


rm $TMPFILE

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

<?xml version="1.0" encoding="UTF-8"?>


<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
<env:Body>
<exportConfigurationResponse
xmlns="http://www.appeartv.com/automation/v1">
<code>100</code>
<message>OK</message>
<configuration>

</configuration>
</exportConfigurationResponse>
</env:Body>
</env:Envelope>

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

<?xml version="1.0" encoding="UTF-8"?>


<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
<env:Body>
<importConfiguration xmlns="http://www.appeartv.com/automation/v1">
<includeLocalIpAddresses>0</includeLocalIpAddresses>
<configuration>

</configuration>
</importConfiguration>
</env:Body>
</env:Envelope>

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.

Optional parameter “option”

Option Active  Returns active alarms only.


History  Returns history alarms only.

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.

Each alarm has a list with the following return parameters:

msgSlot Slot position of the card that reported that alarm


msgPort Port on the card where the alarm was detected
msgId Unique ID representing a specific alarm
msgText Description of the alarm
msgSourceName Source module of the alarm
msgSeverity Severity of the alarm
msgInstance Alarm instance
msgSetTime Time the alarm triggered

An additional parameter if the value of Option is History:

msgClear Time the alarm was cleared

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.

Each alarm is listed with the following parameters:

msgId A unique id identifying a specific alarm.


msgText The description the alarm.
msgSourceName The source module of the alarm.
msgSeverity The severity of the alarm.

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.

The reply has the following parameter:

enable Whether the 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.

The request has one parameter:

enable Whether the root cause filter is enabled.

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.

The reply has the following parameters:

msgId The id of the alarm or -1 for all alarm ids.


msgSlot The slot of the alarm or -1 for all slots.
msgPort The port of the alarm or -1 for all the ports.

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.

The call has the following parameters:

msgId The id of the alarm or -1 for all alarm ids.


msgSlot The slot of the alarm or -1 for all slots.
msgPort The port of the alarm or -1 for all the ports.

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.

The reply has the following parameters:

msgId The id of the alarm or -1 for all alarm ids.


msgSlot The slot of the alarm or -1 for all slots.
msgPort The port of the alarm or -1 for all the ports.
msgSeverity FILTERED (default) to filter out the alarm, NOTIFY,
WARNING, MAJOR, or CRITICAL to change the severity of
an alarm.

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.

The call has the following parameters:

msgId The id of the alarm or -1 for all alarm ids.


msgSlot The slot of the alarm or -1 for all slots.
msgPort The port of the alarm or -1 for all the ports.
msgSeverity FILTERED (default) to filter out the alarm, NOTIFY,
WARNING, MAJOR, or CRITICAL to change the severity of
an alarm.

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.

The reply has the following parameters:

id The id of the trap destination from 1 to 5.


ipAddress The IP address.
community The community string that is sent in the trap messages.
status Enable the trap destination with 1, disable with 0.

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.

It takes the same parameters that getSnmpTrapDestination returns.

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:

slotId MMI module’s slot position


module Identifies a particular MMI module type
serial MMI module’s serial number
backplane Identifies which of the two backplanes the MMI is connected
to (main or backup)

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:

slotId Slot position of the missing card to be removed

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.

The TwinMMICard has this optional parameter:

Optional parameters:

localTimezone Local time zone, optional (-12 to 13: 0=GMT, -12=GMT-12,


13=GMT+13)
daylightSaving Manual daylight saving, optional (on or off)
date Date to set, optional (format: YYYY-MM-DD)
time Time to set, optional (format: hh:mm:ss)
ntpServer IP address of the NTP server, optional

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

<?xml version="1.0"?> <env:Envelope


xmlns:env="http://www.w3.org/2003/05/soap-envelope">
<env:Body>
<setRedundancySwTriggers
xmlns="http://www.appeartv.com/automation/v1">
<redundancySwTriggers>
<inputRedundancy>
<inputRedundancyEntry>
<slotId>15</slotId>
<type>ipin</type>
<alarmList>
<alarmListEntry>
<id>2686979</id>
<enable>1</enable>
</alarmListEntry>
<alarmListEntry>
<id>2686980</id>
<enable>1</enable>
</alarmListEntry>
<alarmList>
</inputRedundancyEntry>
</inputRedundancy>
</redundancySwTriggers>
</setRedundancySwTriggers>
</env:Body>
</env:Envelope>

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.

The method has the following parameter:


name Identifies Appear TV device name

Query

<?xml version="1.0"?> <env:Envelope


xmlns:env="http://www.w3.org/2003/05/soap-envelope">
<env:Body>
<setDeviceName xmlns="http://www.appeartv.com/automation/v1">
<deviceName>
<name>appearTV test device</name>
</deviceName>
</setDeviceName>
</env:Body>
</env:Envelope>

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:

tableVersioningScheme Table versioning scheme (normal, odd, even)


caDescriptorPlacement CA descriptor placement (service, component, both)
pmtCaching PMT catching (on, off)
nitManualVersion NIT manual version
includeEitSignalingInNit Include EIT signaling in NIT (on, off)

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.

In general the attributes of a processing module is configured as part of an output


stream, either as part of the setService or the setTransport function call. However
some of the processing modules need to be initialized with specific configurations before
they can be used. The list below indicates where the configuration must be done.

The following modules meet the definition of a processing module.

 Audio Leveling – configured via the digital output setService call

 Scrambler – configuration is explained in section 6 of this document

 Descrambler – configuration is explained in section 7 of this document

 EPG module – configuration is explained below

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

manualEitSourcePidEntry has the following parameters:

slotId Identifies input service module


portId Identifies input service port
pid Input PID

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:

EPG status parameters:

outputRef Identifies a particular output stream - parameters are as


described below
inputService Identifies a particular input stream – parameters are as
described below
currentEitSource Identifies an EIT source for a particular stream
currentProgram Current running program
presentFollowing
scheduled (1=scheduled, 0=not scheduled)
validity Represents the EPG’s validity
optionalEitSourceList Contains a list of eitSourceEntry, representing any
additional EIT sources available for a particular stream.
Parameters for this list are the same as currentEitSource.

outputRef parameters:

slotId Identifies a particular output module


portId Identifies a particular output port
serviceId Output service ID
outputType Represents the output card’s type
name Represents the output service’s name

inputService parameters:

slotId Identifies a particular input module


portId Identifies a particular input port
serviceId Input service ID

currentEitSource parameters:

slotId Identifies a particular output module


portId Identifies a particular output port
serviceId Input service ID

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.

EIT Source parameters:

outputRef Identifies a particular output stream – parameters are as


described below
eitMode Optional eitMode (stop, auto).
Stop: Stop the analysis of EPG for this service
Auto: Let the system locate the best EIT source for this
service.
eitSource Represents an EIT source – parameters are as described
below (this parameter is mandatory when the eitMode
parameter is not present).

Page 44 of 172
outputRef parameters:

slotId Identifies a particular input module


portId Identifies a particular output port
serviceId Output service ID

eitSource parameters:

slotId Identifies a particular output module


portId Identifies a particular output port
serviceId Input service ID
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>
<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.

 Internal redundancy – is described in the following section.

 Service Input redundancy – is service based and associated with an outgoing


service; hence the configuration of this is performed using the setService call.

 Port Input redundancy – is port based, its configuration is performed using


setInputPortRedundancy

 CA redundancy - is defined in the CA section, under setECMGRedundacy.

 Output redundancy – is defined by the combination of setIPOutputInterface


and setIPOutputPort.

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.

The method has the following parameters:

The TwinMMICard has this optional parameter:

address IP address of the redundant MMI card

cardEntry parameters:

slotId Identifies a particular input module


enable Enables or disables redundancy (1=enable, 0=disable)
switchDelay The time it takes for an internal redundancy switch. This
value should be > 7 and < 32767

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.

slotId Identifies a particular input 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:

a. one specific slot, redundancy type (internal, input, or CA), or

b. all redundancy modules in the unit; depending on the parameters:

slotId Identifies a particular redundancy module, optional. If


omitted, the method assumes that information for all the
redundancy modules in the unit is required.
type Identifies a particular redundancy type (internal, input, or
CA), optional. If omitted, the method assumes that
information for all types of redundancy modules in the unit
is required.

The return message consists of a list of redundancy status information entries. Each
entry contains the following parameters:

Internal Redundancy parameters:

slotId Identifies a particular redundancy module


module Identifies the type of redundancy module (DDM, QAM_OUT,
or FM_RADIO)
enable Redundancy enabled or disabled (1=enabled, 0=disabled)
status Identifies the Backplane to which the module is connected
to (main or backup)

Input Redundancy parameters:

slotId Identifies the redundancy module slot


module Identifies the redundancy module (IP_INPUT)
spareSlot Identifies the spare IP input module
active Identifies the active module (main or spare)

Page 48 of 172
CA/ECMG Redundancy parameters:

slotId Identifies the redundancy module slot


module Identifies redundancy module, in this case, the Scrambler
mainInputId Identifies the main ECMG
mainState Identifies the main ECMG’s state (Running, Sleeping, or
Stopped)
backupInputId Identifies the backup ECMG
backupState Identifies the backup ECMG’s state (Running, Sleeping, or
Stopped)

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.

The method has the following parameters:

inputPortRedundancyEntry parameters:

mainInputSource Identifies main input reference


backupInputSource Identifies backup input reference
mode Identifies redundancy mode (once, floating, reverting, off)

mainInputSource and backupInputSource parameters:

slotId Identifies a particular input module


portId Identifies a particular input port

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:

slotId Identifies a particular input module


portId Identifies a particular input port

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.

This method has the following parameters:

type Identifies redundancy type(port/service, default is service)


slotId Identifies a particular output stream slot
portId Identifies a particular output stream port
serviceId Output stream service ID

For port redundancy switch “type” must be specified as “port”. If (type=port),


this function will force input port redundancy switch, i.e. slotId and portId
will be used as input slotId and portid and serviced will be ignored. If type
not specified or type=service, this function will force input service
redundancy switch, i.e. serviceId is mandatory and slotId, portId will
represent output stream reference.

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:

mainInputSource Represents main input source (slotId, portId, serviceId)


backupInputSource Represents backup input source (slotId, portId,
serviceId)
output Represents output reference (slotId, portId,
channelId, serviceId)
Note:- channelId is optional, only for DDM and ADM
For DDM, channelId will always be = 0, since each CPU
only support one channel.

switchStatus Switch status (main, backup)


type Input redundancy type (service, port)
redundancyType Redundancy type (off, once, floating, reverting)

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.

Settings for output redundancy:

ospf Included if OSPF is enabled. Contains sourceNet,


ospfArea, Md5OspfAuthentication and stubbyArea.
pim Included with sub element rpPoint if PIM is enabled.
enableMuteOnError Mute the output when there is an error.
switchingDelay Additional switching delay in seconds.

Ospf contains:

sourceNet Network part of the IP address of the source network.


ospfArea Area in dotted notation (like an IP address).
Md5OspfAuthentication Included with sub elements keyId1, keyId2, key1 and
key2 if authentication enabled.
stubbyArea Enabled if stubby area enabled.

Md5OspfAuthentication contains:

keyId1, keyId2 Integer from 0 to 255 inclusive.


key1, key2 16 character key.

PIM contains:

rpPoint IP address of RP point of PIM.

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:

slotId Identifies a particular input module


portId Identifies a particular input port
psiMode PSI/SI analysis mode for input port
”DVB” Perform analysis of DVB Tables
”DVB SDT”, as above, except do not analyze SDT.
”MPEG”, Analyze MPEG tables only
”ATSC”, Analyze ATSC tables
”Off” Do not perform any table analysis.
enable Turn port ON or OFF
name Associate a name with an input

5.2 getASIInputConfig
This method retrieves ASI input configuration for:

a. one specific ASI input,

b. all ASI inputs on a module, or

c. all ASI input modules in the unit;

Optional parameters:

slotId Identifies a particular input module, optional.


portId Identifies a particular input port. Optional if slotId is
specified, otherwise not present.

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:

a. one specific ASI input,

b. all ASI inputs on a module, or

c. all ASI input modules in the unit; 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.

The return message consists of a list of ASI Input Status Information entries. Each
entry has the following parameters:

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
byteMode (Spread, Burst) two different way to transmit packets

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:

slotId Identifies a particular input module


portId Identifies a particular input port
psiMode PSI/SI analysis mode for input port
satFreq Satellite frequency in GHz
lnbFreq LNB frequency in GHz
symRate Symbol rate in Msym/s
innerCode 1 , 2 , 3 , 5 , 6 or 7
2 3 4 6 7 8
lnbVoltage LNB voltage: 0, 13, or 18
lnb22kHz 22kHz signal
Enable Turn port ON or OFF
name Associate a name with an input

Page 60 of 172
5.5 getQPSKInputConfig
This method retrieves the input configuration for:

a. one specific QPSK input,

b. all QPSK inputs on a module, or

c. all QPSK input modules in the unit;

Optional parameters:

slotId Identifies a particular input module, optional.


portId Identifies a particular input port. Optional if slotId is
specified, otherwise not present.

The return message is a QPSKInputList is as described in the setQPSKInputconfig.

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:

a. one specific QPSK input,

b. all QPSK inputs on a module, or

c. all QPSK input modules in the unit; 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.

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:

slotId Identifies a particular input module


portId Identifies a particular input port
Enable Turn port ON or OFF
analyzeMode PSI analysis, See SetASIInputConfig for details.
satFreq Satellite frequency in GHz
lnbFreq LNB frequency in GHz
symRate Symbol rate in Msym/s
innerCode 1 , 2 , 3 , 3 , 4 , 5 , 6 , 7 , 8 or 9
2 3 4 5 5 6 7 8 9 10
Modulation DVB, DVBS2_8PSK, or DVBS2_QPSK
lnbVoltage Actual LNB voltage: 0, 13, or 18
lnb22kHz 22kHz signal
offsetQpsk Enables offset QPSK modulation
splitMode Combined, Split I, or Split Q. This parameter is only
applicable if modulation is Digicypher II
Pilot Enables pilot tone. This parameter is only applicable if
modulation is DVBS2_8PSK or DVBS2_QPSK.
name Associates a name with a port

Page 63 of 172
5.8 getDVB-S-S2InputConfig
This method retrieves the configuration for:

a. one specific DVB-S/S2 input,

b. all DVB-S/S2 inputs on a module, or

c. all DVB-S/S2 input modules in the unit; 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.

The return message is a DVB-S-S2InputList as described in the setDVB-S-


S2InputConfig.

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:

a. one specific DVB-S/S2 input,

b. all DVB-S/S2 inputs on a module, or

c. all DVB-S/S2 input modules in the unit; 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.

The return message consists of a list of DVB-S/S2 input status information entries.
Each entry has the following parameters:

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
Ber Bit error rate
Cnr Channel to noise ratio in dB
Snr Signal to noise ratio in dB
eb/no Energy per bit
lockStatus Tuner’s lock status
carrierOffset Carrier offset in MHz
actualFrequency Actual frequency in MHz
actualSymbolRate Actual symbol rate in Mbaud
actualModulation Actual modulation
lnbVoltage Actual LNB voltage: 0, 13, or 18

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:

slotId Identifies a particular input module


portId Identifies a particular input port
Enable Turn port ON or OFF
psiMode PSI/SI analysis mode for input port
analyzeMode PSI analysis: See SetASIInputConfig for details.
rfFreq Receiver frequency in MHz
Bandwidth Channel bandwidth in MHz: 6, 7, or 8
spectralInv Normal or inverted
Enable Interface enable
name Associate a name with a port

5.11 getCOFDMInputConfig
This method retrieves the configuration for:

a. one specific COFDM input,

b. all COFDM inputs on a module, or

c. all COFDM input modules in the unit; 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.

The return message is COFDMInputList as described in the setCOFDMInputConfig.

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:

a. one specific COFDM input,

b. all COFDM inputs on a module, or

c. all COFDM input modules in the unit; 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.

The return message consists of a list of COFDM input status information entries. Each
entry has the following parameters:

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
Frequency Current tuned frequency: between 950 – 2150 MHz
frequencyOffset Offset between the configured frequency and the lock
Bandwidth Bandwidth of the currently tuned channel
spectralInversion Current spectral inversion, normal or inverted
Modulation Current modulation of the tuned channel
guardInterval Current guard interval of the tuned channel
Fft Current FFT size of the downstream signal

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:

slotId Identifies a particular input module


portId Identifies a particular input port
psiMode PSI/SI analysis mode for input port. See
setASIInputConfig for details.
rfFreq Receiver frequency in MHz
symRate Symbol rate in Msym/s
Modulation Modulation type: 4, 8, 16, 32, 64, 128, or 256
spectralInv Either auto, normal or inverted
Enable Turn port ON or OFF
name Associate a name with a port

5.14 getQAMInputConfig
This method retrieves the configuration for:

a. one specific QAM input,

b. all QAM inputs on a module, or

c. all QAM input modules in the unit; 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.

The return message is QAMInputList containing the parameters as described in the


setQAMInputConfig.

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:

a. one specific QAM input,

b. all QAM inputs on a module, or

c. all QAM input modules in the unit; depending on the parameters:

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
Frequency Current tuned frequency: between 950 – 2150 MHz
symbolRate Symbol rate in MBd
Modulation Current modulation of the tuned channel
Ber Bit error rate
Snr Signal to noise ratio in dB
State Current state
carrierStatus Status of the tuning process
frontendLocked Current tuner’s lock status: yes or no

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:

slotId Identifies a particular input module


portId Identifies a particular input port
analyzeMode analysis mode for input port. See setASIInputConfig for
details.
freq Frequency in MHz (50 to 860)
modulation Modulation type: 64 or 256
enable Turn port ON or OFF (1=ON and 0=OFF)
name Associate a name with a port

5.17 getQAMBInputConfig
This method retrieves the configuration for:

d. one specific QAM-B input,

e. all QAM-B inputs on a module, or

f. all QAM-B input modules in the unit; 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.
The return message is QAMBInputList containing the parameters as described in the
setQAMBInputConfig.

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:

slotId Identifies a particular input module


portId Identifies a particular input port
psiMode PSI/SI analysis mode for module: DVB, ATSC, MPEG, or no
PSI analysis mode; the default value is ATSC.
Freq Current tuned frequency: between 47 – 861 MHz
Enable Turn port ON or OFF
name Associate a name with a port

5.19 getVSBInputConfig
This method retrieves the configuration for:

a. one specific VSB input,

b. all VSB inputs on a module, or

c. all VSB input modules in the unit;

Optional parameters:

slotId Identifies a particular input module, optional.


portId Identifies a particular input port. Optional if
slotId is specified, otherwise not present.

The return message is VSBInputList containing the elements described in the


setVSBInputConfig.

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:

a. one specific VSB input,

b. all VSB inputs on a module, or

c. all VSB input modules in the unit; depending on the parameters:

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
lockStatus Tuner’s lock status
rfLevel RF level measured in dBmV
mer Modulation error ratio in dB

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:

slotId Identifies a particular input module


monitorPort Selects the input source to monitor: off, A, B, etc.

Page 76 of 172
5.22 getMonitorConfig
This method retrieves the monitor configuration for:

a. one specific input or

b. all input modules with a monitor,

Optional parameter:

slotId Identifies a particular input module, optional.

The return message is monitorConfigListEntry containing the elements described in


the setMonitorConfig.

Response

<monitorConfigList>
<monitorConfigListEntry>
<slotId>13</slotId>
<monitorPort>off</monitorPort>
</monitorConfigListEntry>
</monitorConfigList>

5.23 setupIPInputInterface (obsolete)


This method is obsolete and should not be used anymore. Instead, use the
following:

 setAdminConfig

setupIPInputInterface will continue to be a valid command in order to


preserve backward compatibility with existing SOAP.

5.24 getIPInputInterfaceSetup (obsolete)


This method is obsolete and should not be used anymore. Instead, use the
following:

 getAdmidConfig

getIPInputInterface will continue to be a valid command in order to preserve


backward compatibility with existing SOAP.

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.

slotId Identifies a particular input module


moduleId Identifies a particular input module.
Optional but mandatory for ipswitch input (0 or 1)
portId Each IP input stream is identified as a unique portId from 0
to the maximum number of streams minus one.
ipAddress IP address of incoming IP stream
ipPort IP port of incoming IP stream
mode Input analysis mode, optional for backward compatibility.
The default value is DVD.
dejitter Determines if dejitter is used or not, optional but always
returned by getIPInputConfig.
ipFec Refers to Forward Error Correction for the IP input:
(1=enable, 0=disable). FEC is only available for IP input
modules with HW version 2.0.
sourceIP Source IP if IGMPv3 is enabled, optional
sourceIP1 Source IP1 if IGMPv3 is enabled, optional
sourceIP2 Source IP2 if IGMPv3 is enabled, optional
sourceIP3 Source IP3 if IGMPv3 is enabled, optional
vlan Optional, only when one of the configured VLAN ID is used,
for setting vlan=off use addIPInputConfig without vlan
dejitterPcr Optional: Manually overrides the PCR PID (32->8190),
selection for the dejittering algorithm. For clearing Dejitter
PCR use addIPInputConfig without this parameter.
name Associate a name with a port

Page 78 of 172
5.26 getIPInputConfig
This method retrieves the configuration parameters for:

a. all configured IP input streams or

b. streams configured for a particular module only,

Optional parameter:

slotId Identifies a particular input module, optional.

The return message is an ipInputList containing the elements described in the


addIPInputConfig function.

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.

slotId Identifies a particular module. Optional.


portId Identifies a particular input port. Optional if slotId is
specified

This method returns a list of ipInputStatusListEntry. Each entry has the following
parameters:

slotId Identifies a particular IP module


portId Identifies a particular IP input port
sync MPEG sync. No, 188 or 204
effectiveBitrate Effective bit rate of the input stream in Mbps
totalBitrate Total bit rate of the input stream in Mbps
activeSource Active source IP address
ccErrors No of CC Errors
rtpErrors No of RTP Errors

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.

The return message is inputServiceList containing the following elements:

slotId Identifies a particular input module


portId Identifies a particular input port
serviceId Input Service ID
serviceName SDT(Service Descriptor Table) service name
pmtPid PMT PID
pcrPid PCR PID (from PMT)

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.

slotId Identifies a particular input module, optional.


portId Identifies a particular input port. Optional if slotId is
specified, otherwise not present.
serviceId Service ID, optional

The return message is inputComponentList containing the following elements:

slotId Identifies a particular input module


portId Identifies a particular input port

serviceId Input Service ID


pid PID
type Component type
language Language information for selected types

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:

a. one specific input port,

b. all input ports on a specific input module, or

c. all input ports on all input modules in the unit, depending on the parameters:

slotId Identifies a particular module. Optional.


portId Identifies a particular input port. Optional

This method returns a list of inputEntry containing the following elements:

slotId Identifies a particular module.


portId Identifies a particular input port.
pid Pid number, Identifies a particular PID
type Identifies PID type
rate Represents bit rate
scrambled Describes PID is scrambled or not (yes, no)
ccErrors Represents PID cc errors

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 method takes no input parameter.

The return message contains a list of inputStatusEntry. Each entry has the following
parameters:

slotId Identifies a particular input module


Type Identifies input module type
Services Represents total number of services on input module
totalTSRate Total transport stream rate of the input module in Mbps
ccErrors Total number of CC Errors on module
tsErrors Total number of TS Errors on module
rtpSequenceErrors Total number of RTP sequence Errors on module
outputRate Total output rate of the input module in Mbps

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”.

 Calling defineECMG with an existing reference overwrites the previous


configuration.

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:

scsSlotId Represents the selected SCS module


ecmgInput Identifies a particular ECMG input.
channelId SCS channel ID
name Symbolic name given to this ECMG
casId CA system identifier
casSubId CA subsystem identifier
ipAddress ECMG’s IP address
ipPort ECMG’s IP port
state Represents ECMG’s status, optional returned in getECMG

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:

ecmgRef ECMG identifier

ecmgRef has the following parameters:

scsSlotId Represents the selected SCS module


ecmgInput Identifies a particular ECMG input

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.

The method has the following parameters:

groupId Identifies a particular ECMG group

The main ECMG node contains the following parameters:

scsSlotId Represents the selected SCS module


inputId Identifies a particular SCS port

The backup ECMG node contains the following parameters:

ipAddress ECMG’s IP address


ipPort ECMG’s IP port
subId CA subsystem identifier
channelId SCS channel ID

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:

scsSlotId Represents the selected SCS module.


ecmgInput Identifies a unique transport stream within an ECMG
connection, optional for backward compatibility.
name Symbolic name given to the ECM
ecmgId ECMG identifier, optional
scgId Scrambling control group, optional
accessCriteria Access criteria, with one of the following tags:
 /int  Sent to ECMG as a 32-bit number
 /hex  Bytes are sent as given
 /utf16  Given text is converted and sent as UTF-16
privateData Private data for PMT descriptor, given as a string of HEX
characters; optional.
pid Output PID, optional for backward compatibility
state Represents ECM’s status, optional returned in getECM
cpNumber Represents CP numbers, optional returned in getECM

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.

scsSlotId Represents the selected SCS module


ecmgInput Identifies a particular ECMG input
streamId Identifies a particular stream

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:

scsSlotId Represents the selected SCS module


emmgInput Identifies a particular EMMG input.
name Symbolic name given to this EMMG
casId CA system identifier
casSubId CA subsystem identifier
channelId SCS channel ID, optional for backward compatibility.
ipAddress EMMG’s IP address
ipPort EMMG’s IP port
state Represents EMMG’s status, optional returned in getEMMG

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:

scsSlotId Represents the selected SCS module


emmgInput Identifies a particular EMMG input
Response

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:

scsSlotId Represents the selected SCS module, optional for backward


compatibility.
emmgInput Identifies a particular EMMG input.
streamId Identifies a unique transport stream within an EMMG
connection.
name Symbolic name given to this EMM
emmgId EMMG identifier
privateData Private data for CAT descriptor, given as a string of HEX
characters; optional.
pid Output PID, optional for backward compatibility
maxRate Maximum rate in kbps, optional (default value is 100)
state Represents EMM’s status, optional returned in getEMM
rxBytes Represents EMM’s RX Bytes, optional returned in getEMM

Calling defineEMM for an existing EMM overwrites the previous configuration.

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:

scsSlotId Represents the selected SCS module


emmgInput Identifies a particular EMMG input
streamId Identifies a particular stream

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:

a. one specific scrambler card or

b. all scrambler cards in the Unit; depending on the parameters:

slotId Identifies a particular scrambling module slot, optional

scramblerList contains the following elements:

slotId Identifies a particular scrambling module slot


services Number of services scrambled
algorithm Scrambling algorithm used
ratio Specifies the ratio of scrambled packets to unscrambled
packets: scramble 1 out of n packets, n=1 scrambles all
packets.
enableScrambling Enable scrambling (on, off)
bitrate bitrates Mbps
supportedAlgorithms List of all supported algorithms for this scrambler,
represented as a string containing the system and algorithm
names (e.g. “dvb csa” or “irdeto aes-cbc”).
syncMode Synchronization mode (master, slave or off)
peerIP IP address of the peer scrambler card
peerPort Port of the peer scrambler card

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:

bissId Identifies a particular BISS key


bissName Name of the BISS key
bissKeyType Type of BISS key: DVB CSA BISS, RAW 64 bit, or DVB CSA
BISS-E; DVB CSA BISS enables null byte insertion (48 –
64bit)
bissE bissE node is required if bissKeyType = DVB CSA BISS-E,
optional; bissE parameters are described below.
bissKey Actual BISS key

bissE has the following parameters:

Mode BISS-E mode: decode or encode


keyId BISS-E key ID

If the BISS mode is BISS-E, the encrypted key (session word) will be returned in the
response message.

Calling setBissKeys with an existing bissId overwrites the previous


configuration.

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:

bissId Identifies a particular BISS key

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:

scsSlot Scrambler card’s slot


inputId Scrambler port
name Name of EIS interface
ipFilter IP address of EIS server
listeningPort UDP port where the EIS interface shall connect.
state Represents EIS’s status, optional returned in
getEisInterface

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:

scsSlot Scrambler card’s slot


inputId Scrambler port

Response

<eisInterfaceList>
<eisInterfaceEntry>
<scsSlot>2</scsSlot>
<inputId>0</inputId>
</eisInterfaceEntry>
</eisInterfaceList>

Page 100 of 172


7 Descrambling

7.1 setCAMConfig
This method is used to configure the Conditional Access Module (CAM). The method
takes CAMListEntry with the following elements as parameters:

slotId Identifies a particular descrambling module


camSlot Identifies a particular CAM module: A or B
functionScope Describes the function scope of the setCAMConfig command
(0=partial,1=complete(default complete) optional)
altCamMode Alt CAM Mode: on or off
emmSource EMM source selection(optional) defined below
autoReset Auto reset: off, all, majority, or one
maxTSRate Max TS rate in Mbps: 43, 50, 58, or 68

Note: - By default functionScope is complete; in complete scope; setCAMConfig resets


all cam slots configuration. In other words, to change configuration of a cam slot, you
need to include all existing cam slots configuration in setCAMConfig command. Partial
mode is used when you want to change the configuration of a cam slot with the
setCAMConfig command without listing all cam slots of the device.

Note: - Default emmSource is auto, in getCAMConfig auto is not returned, while in


setCAMConfig if emmSource node not provided, it will be set to auto.
Prevention on setCAMConfig

 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:

slotId Represents EMM source slot Id


channelId Represents EMM channel Id

Page 101 of 172


Response

<?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:

a. one specific CAM or

b. all CAMs in the unit, depending on the parameters:

slotId Identifies a particular input module, optional.

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>

Page 102 of 172


<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>
</getCAMConfigResponse>
</env:Body>
</env:Envelope>
reply.xml validates

7.3 resetCAModule
This method is used to reset the Conditional Access Module (CAM). The method takes
CAMListEntry with the following elements as parameters:

slotId Identifies a particular descrambling module


camSlot Identifies a particular CAM module: A or B

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:

a. one specific CAM or

b. all CAMs in the unit,

Page 103 of 172


depending on the parameters:

slotId Identifies a particular input module, optional.

The return message consists of a list of CAM status information entries. Each entry
contains the following parameters:

slotId Identifies a particular module


camSlot Identifies a particular CAM module: A or B
camName Name of the CAM, if available
pids Number of PIDs used on CAM, if available
inputBitrate Input stream bit rate in Mbps
outputBitrate Output stream bit rate in Mbps

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>

Page 104 of 172


</camStatusList>
</getCAMStatusResponse>
</env:Body>
</env:Envelope>

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.

slotId Identifies a particular Verimatrix descrambler module slot

Response

<removeVmtxServerSettings>
<slotId>2</slotId>
</removeVmtxServerSettings>

Page 105 of 172


7.6 getDescramblerSetup
This method retrieves a list of Descrambler card settings, descramblerList, including
a list of all supported descrambling algorithms for:

a. one specific descrambler card or

b. all descrambler cards in the unit; depending on the parameters:

slotId Identifies a particular descrambling module slot, optional

descramblerList contains the following elements:

slotId Identifies a particular descrambling module slot


services Number of services descrambled
algorithm descrambling algorithm used
emmSource EMM source, described below, optional
companyName Represents company name
serverIp Represents server IP
serverPort Represents server port
preferredVksEnable Preferred VKS enable (0, 1)
preferredVksIp Preferred VKS IP
preferredVksPort Preferred VKS port
messageFormate Message format (Default, 1153-1157)
timeout Represents timeout time
retryInterval Retry interval
connectionRetries Number of connection retries
enableScrambling Enable scrambling (on, off)
bitrate bitrates Mbps
supportedAlgorithms List of all supported algorithms for this descrambler,
represented as a string containing the system and algorithm
names (e.g. “dvb csa” or “irdeto aes-cbc”).
smartCardsList Contains a list of smartCardsEntry described below, optional

smartCardsEntry contains the following elements:


portId Identifies smart cards port
emmSource Smart cards EMM source, described below, optional

emmSource contains the following elements:


slotId Identifies EMM source module slot
portId Identifies EMM source module port

Page 106 of 172


Response

<?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>

Page 107 of 172


7.7 setupDescrambler
This method configures one or more descrambler cards. The method takes a list of
descrambler card settings, descramblerList, as well as a list of all supported
descrambling algorithms, supportedAlgorithms, with the same format as that used in
getDescramblerSetup response message.

Page 108 of 172


8 Analog Output Configuration
8.1 getDecoderConfig
This method retrieves the configuration for:

a. a single decoder module or

b. all decoder modules in the unit, depending on the parameters:

slotId Identifies a particular input module, optional.


portId Identifies a particular port, optional

This method returns DecoderList as defined in setDecoderConfiguration, or an error


message if both slotId and portId are used but no module exists there.

Page 109 of 172


8.2 setDecoderConfig
This method is used to set the configuration of any or all decoder modules. It consists of
a decoderList with a decoderListEntry for each configured module.

The different decoders are:

DDM (Dual Decoder module): The first decoder generations, MPEG2 only. This came
with both baseband and RF output.

ADM (Advanced Decoder Module): Second generation decoder supporting MPEG4.

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:

slotId Identifies a particular decoder module


portId Identifies a particular port on the decoder module
channelId Identifies channel (0=1, 1=2) on UMOD video supported
module, which supports two services per module (optional
for backward compatibility), default is 0=channel1
service Identifies the service used – only included if a service is
used.
backupInputRef Identifies a backup input service source. This parameter is
optional and included in the event input redundancy is used.
testTone Enables or disables the test tone
video Video settings
audio Audio settings
audio2 Audio settings, optional
teletext Enables or disables teletext
subtitling Subtitling settings
subtitlingOptions Subtitling options settings (optional only for ADM modules)
vbi Vertical Blanking Interval settings

Page 110 of 172


vbiVanc vbiVanc settings
closedCaptioning Closed captioning setting, optional
alarmSync Alarm sync settings
upconverter Up-converter settings, only included if present.
nicam NICAM settings, only included if present.
a2 A2 settings, only included if present.

A service is set up with the following parameters:

slotId Identifies a particular decoder module


portId Identifies a particular port on the decoder module
serviceId Service ID on the decoder module

Page 111 of 172


backupInputRef has the following parameters:
slotId Identifies a particular decoder module
portId Identifies a particular port on the decoder module
serviceId Service ID for the selected input service
redType Redundancy type (off, once, floating, reverting)
redDelay Additional delay

The test tone is enabled or disabled using the following parameter:

enable Enables the test tone

The video is configured using the following parameters:

arConversion Aspect rate conversion


arConversionStandard Aspect rate conversion standard
signalStandard Signal standard (PAL/SECAM), optional – for ADM modules
only.
frameRate Frame rate (optional for SDI output only) (50,60 Mz)
resolution Resolution, optional
hResolution Horizontal Resolution(scale, center) for SDI output only
aspectRatio Screens Aspect Ratio (4:3, 16:9, transparent)

The audio is configured using the following parameters:

firstPriorityLanguage Preferred language (any, off, manual or any supported


language)
secondPriorityLanguage Second preferred language
audioPid Audio PID (32-8190), optional if the first priority language is
set to manual.
audioType Audio Type (any, off, or one of supported audio types)
optional, only if first priority language selected as manual.
audioLevel Audio level adjustment
audioTypePriority A group of selection elements designating the order of audio
Type preference.

teletext is enabled or disabled using the following parameter:


enable Enables teletext

Page 112 of 172


Subtitling is configured using the following parameters:

firstPriority Preferred language


secondPriority Second preferred language
selectionPriority A group of selection elements designating the order of
language preference.
ccBurnIn CC Burn-in off, cc1, cc2, cc3, cc4) for SDI out in
59.94/60Hz

Subtitling Options are configured using the following parameters:

fontSize Font size (normal, 90, 80, 70)


ebuHorizontalPosition EBU Horizontal Position (normal, center)
verticalPosition Vertical Position (normal, 20, 15, 10, 5, -5)

The Vertical Blanking Interval is configured using the following parameters:

testLines (off, 17, or 17 and 18)


sincTestLines (off, 319, or 335)
wss Enable wide screen signaling
vps Enable video program system
videoIndex Enable video index (0=OFF, 1=ON) optional – for decoders
with SDI output only.
secamFieldId Enable VBI inserted field ID for modules with High
Performance option.

The Vertical Blanking Interval/Vanc configured using the following parameters:

ccOutput CC output (off,vbi21) for SDI out in 59.94/60Hz

videoIndex Enable video index (0=OFF, 1=ON) optional – for decoders


with SDI output only.
afd Aspect format description (on, off) for SDI output only

Closed Captioning is configured using:

ccOutput CC output (off, vbi21) optional, only if frameRate selected


60 Hz

Page 113 of 172


Alarm sync is configured using the following parameters:

control 0 -> Disable the alarm Sync


1 -> Enables the alarm sync
delay Alarm sync delay in seconds.

The up-converter is configured using the following parameters:

rfChannelList RF channel list (User Defined, ITU, OIRT)


rfFrequency Frequency in MHz
rfPowerLevel Power level in dBµV
fineLevelAdjust Fine adjust in dB
fineLevelAdjustEnable Enable fine adjust
rfEnable Enable RF

NICAM is configured using the following parameters:

mode (Stereo, Dual Mono, Single Mono)


reserved (0) for not reserved, (1) for reserved
attenuation Choose one of the following: (-3.00, -2.50, -2.00, -1.50, -
1.00, -0.50, 0.00, 0.50, 1.00, 1.50, 2.00, … up to 6.50)

A2 is configured using the following parameters:

mode (Stereo, Dual Mono, Single Mono, Controlled by VPS,


Controlled by SI)
attenuation Choose one of the following: (-3.00, -2.50, -2.00, -1.50, -
1.00, -0.50, 0.00, 0.50, 1.00, 1.50, 2.00, … up to 6.50)

High Performance RF is configured using the hpConfig element with the following
parameters:

videoModulationDepth Video modulation depth in percent (%) between 80 – 90


truncated to 0.5%
videoModulationClipping Enable or disable the clipping of video modulation
audioAttenuation Attenuation in dB relative to the normal level, 13dB
continuousWave Enable or disable continuous wave mode

Page 114 of 172


Descrambling is configured using the following parameters:

slotId Identifies a descrambler slot position


bissKeyId BISS Key Id, optional – for fixed key descrambling only.

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>

Page 115 of 172


<audioLevel>0</audioLevel>
</audio>
<audio2>
<firstPriorityLanguage>manual</firstPriorityLanguage>
<audioPid>640</audioPid>
<audioType>aac</audioType>
<audioLevel>0</audioLevel>
</audio2>
<teletext>
<enable>1</enable>
</teletext>
<subtitling>
<firstPrioritySubtitling>off</firstPrioritySubtitling>
<secondPrioritySubtitling>off</secondPrioritySubtitling>
<selectionPriority>
<selection>dvb</selection>
<selection>ebu</selection>
</selectionPriority>
<ccBurnIn>off</ccBurnIn>
</subtitling>
<subtitlingOptions>
<fontSize>normal</fontSize>
<ebuHorizontalPosition>normal</ebuHorizontalPosition>
<verticalPosition>normal</verticalPosition>
</subtitlingOptions>
<vbi>
<testlines>off</testlines>
<sincTestlines>off</sincTestlines>
<wss>0</wss>
<vps>0</vps>
</vbi>
<vbiVanc>
<ccOutput>off</ccOutput>
<videoIndex>1</videoIndex>
<afd>off</afd>
</vbiVanc>
<alarmSync>
<control>0</control>
<delay>10</delay>
</alarmSync>
<upconverter>
<rfChannelList>ITU</rfchannelList>
<rfFrequency>168.25</rfFrequency>
<rfPowerLevel>110.0</rfPowerLevel>
<fineLevelAdjust>0</fineLevelAdjust>
<fineLevelAdjustEnable>0</fineLevelAdjustEnable>
<rfEnable>0</rfEnable>
<hpConfig>
<videoModulationDepth></videoModulationDepth>
<videoModulationClipping></videoModulationClipping>
<audioAttenuation></audioAttenuation>

Page 116 of 172


<continuousWave></continuousWave>
</hpConfig>
</upconverter>
<descrambling>
<slotId>1</slotId>
<bissKeyId>2</bissKeyId>
</descrambling>
</DecoderListEntry>
</DecoderList>
</setDecoderConfig>
</env:Body>
</env:Envelope>

8.3 setOSDM
This method configures On Screen Digital Messages (OSDM) on the decoder module; the
new configuration overwrites the previous one.

setOSDM contains the following parameters:

osdmList The list of osdmEntry defining the message to be processed

osdmEntry contains the following parameters:

messageId Identifier of the message


message Message to be displayed on the analog TV device
enable Enables (1) or disables (0) the message output
isScrolling Message may move (1) or is static (0)
position Two string values:
“top” displays the message at the top of the screen
“bottom” displays the message at the bottom of the screen
osdmMapList List of osdmMapEntry that defines the decoder outputs
transmitting this message

osdmMapEntry contains the following elements:

slotId Identifies a particular decoder module


portId Identifies a particular port on the decoder module
channelId Identifies channel (0=1, 1=2) on UMOD video supported
module, which supports two services per module (optional
for backward compatibility), default is 0=channel1

Page 117 of 172


Query

<?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:

a. one specific FM Radio card or

b. all FM Radio cards in the unit, depending on the parameters:

slotId Identifies a particular input module, optional.

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.

Page 118 of 172


8.6 setFmRadioCardConfig
This method is used to configure any or all FM Radio cards. It consists of an
fmRadioCardList with an fmRadioCardListEntry for each configured card.

slotId Identifies a particular FM Radio module


carriers Number of carriers used: 1, 2, 4, or 8.
levelPerCarrier Level for each carrier
levelPerCarrierUnit Unit for the carrier level, dBµV, dBmV, or dBm.
deviationPliotTone Pilot tone level in frequency modulation, kHz
mpxTestSignalSource Which carrier (0-7) to use as source for MPX output
mpxOutputLevel Level of the MPX output

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:

a. one specific FM Radio module or

b. all FM Radio modules in the unit, depending on the parameters:

slotId Identifies a particular FM Radio module, optional


portId Identifies a particular port on the FM Radio module, optional

Page 119 of 172


The method returns fmRadioList with the same format as that used in
setFmRadioConfiguration, or an error message if either slotId or portId refer to a
card that does not exist.

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:

slotId Identifies a particular FM Radio module


portId Identifies a particular port on the FM Radio module
service Identifies the service used –only included if a service is
used.
backupInputRef Identifies a backup input service source. This parameter is
optional and included in the event input redundancy is used.
rfEnable Enables or disables the carrier
frequency Frequency in kHz
audioLevelAdjustment Audio level adjustment in dB
preemphasis Pre emphasis filter (off or 50)
language Language selected, options depend on the source
audioPid Audio PID (32-8190), optional – only if language is set to
manual
testSignal Test signal instead of service. Values: “off”, “1kHz L”, “1kHz
R”, “1kHz L+R”, “Sweep L”, “Sweep R”, or “Sweep L+R”
rdsEnable Enables RDS, if disabled none of the RDS parts of the MPX
are generated.
rdsSignalDeviation RDS signal deviation in kHz
rdsSource Source of RDS data: “Manual” for manual settings or
“Ancillary Data” for UECP as part of the service’s Ancillary
Data.
rdsManualPI Manual Program Identification
rdsManualPTY Manual Program Type as expressed with their names
rdsManualPS Manual Program Service
rdsManualRT Manual RDS PT settings
rdsAuxiliaryDataPid RDS external PID, only used in Auxiliary mode
UECPOptions Identifies UECP options

Page 120 of 172


backupInputRef has the following parameters:
slotId Identifies a particular FM Radio module
portId Identifies a particular port on the FM Radio Module
serviceId Service ID of the selected input service
redType Redundancy type (off, once, floating, reverting)
redDelay Additional delay

PIC Options (Program Identification Code Override) contains the following parameters:

rdsPICA Program Identification Coverage Area


rdsPIPR Program Reference
rdsPICC Country Code

UEDP Options has the following parameters:

rdsUECPEnable Advanced UECP mode: rdsPSN, rdsDSN, rdsEncoderId, and


siteId will be used.
rdsPSN PSN number (1 – 253), 0=off
rdsEncoderId DSN number (1 – 253), 0=off
siteIdList Identifies sideId, only included if used. Maximum five
siteIds can be used ( siteId: 1 – 254).

Descrambling is configured using the following parameters:

slotId Identifies a descrambler slot position


bissKeyId BISS Key Id, optional – for fixed key descrambling only.

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>

Page 121 of 172


<backupInputRef>
<slotId>18</slotId>
<portId>22</portId>
<serviceId>28400</serviceId>
<redType>once</redType>
<redDelay>2</redDelay>
</backupInputRef>
<rfEnable>0</rfEnable>
<frequency>87.500</frequency>
<audioLevelAdjustment>0.0</audioLevelAdjustment>
<preemphasis>50</preemphasis>
<language>---</language>
<testSignal>off</testSignal>
<rdsEnable>1</rdsEnable>
<rdsSignalDeviation>2.5</rdsSignalDeviation>
<rdsSource>Ancillary Data</rdsSource>
<rdsManualPI>0</rdsManualPI>
<rdsManualPTY>undefined</rdsManualPTY>
<rdsManualPS></rdsManualPS>
<rdsManualRT></rdsManualRT>
<rdsAuxiliaryDataPid>0</rdsAuxiliaryDataPid>
<PICOptions>
<rdsPICA>International</rdsPICA>
<rdsPIPR>7F</ rdsPIPR >
<rdsPICC>Albania</rdsPICC>
</PICOptions>
<UECPOptions>
<rdsUECPEnable>1</rdsUECPEnable>
<rdsPSN>43</rdsPSN>
<rdsDSN>44</rdsDSN>
<rdsEncoderId>55</rdsEncoderId>
<siteIdList>
<siteId>12</siteId>
<siteId>47</siteId>
<siteId>56</siteId>
<siteId>60</siteId>
<siteId>89</siteId>
</siteIdList>
</UECPOptions>
<descrambling>
<slotId>1</slotId>
<bissKeyId>2</bissKeyId>
</descrambling>
</FmRadioListEntry>
</FmRadioList>
</setFmRadioConfig>
</env:Body>
</env:Envelope>

Page 122 of 172


9 Digital Output Configuration

9.1 getIPOutputInterfaceSetup (obsolete)


This method is obsolete and should not be used anymore. Instead, use the
following:

 getAdmidConfig

getIPOutputInterface will continue to be a valid command in order to preserve


backward compatibility with existing SOAP.

9.2 setupIPOutputInterface (obsolete)

This method is obsolete and should not be used anymore. Instead, use the
following:

 setAdminConfig

setupIPOutputInterface will continue to be a valid command in order to


preserve backward compatibility with existing SOAP.

9.3 addIPOutputStream (obsolete)

This method is obsolete and should not be used anymore. Instead, use the
following sequence:

 setIPOutputPort
 setTransport
 setService

addIPOutputStream will continue to be a valid command in order to preserve


backward with existing SOAP.

Page 123 of 172


9.4 removeIPOutputStream (obsolete)

This method is obsolete and should not be used anymore. Instead, use the
following sequence:

 setService – for MPTS ports


 removePort – for SPTS ports

removeIPOutputStream will continue to be a valid command in order to preserve


backward compatibility with existing SOAP.

9.5 getIPOutputStreamList (obsolete)

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.

Page 124 of 172


9.6 setIPOutPort
This method adds and/or updates streaming ports to set on the IP output module. The
new definition replaces the previous one. The configuration is updated based on the
following logic:

 if the port already exists, its data will be updated

 if the port does not exist, it will be added

 existing ports not defined in setIPOutPort will remain unchanged

In case of SPTS, it is important to invoke setService after setIPOutPort; otherwise the


SPTS will not be displayed in the GUI.

setIPOutPort has the following parameters:

slotId Identifies a particular module


moduleId Identifies a particular output module.
Optional but mandatory for ipswitch output (0 or 1)
portId Identifies a particular port: between 0 – 249
ipAddress UDP Multicast IP address
ipPort UDP Multicast port
mode Integer value defining: MPTS (0) or SPTS (1)
totalBitrate Current Constant Bit Rate value for MPTS streams in bit/s
enable Transmits the media stream (1), otherwise (0)
rtp Enables (1) or disables (0) the use of RTP streaming
ttp TPP MPEG Packets/Frame
tos Type of Service, IP network parameter
ttl Time to live, IP network parameter
sourcePort Source UDP port
redundancy Output redundancy settings, see below

Optional FEC parameters:

fecEnable Enables (1) or disables (0) Forward Error Correction


fecMode FEC mode: COP3 Level A or COP3 Level B
fecColumns L-columns FEC parameter
fecRows D-rows FEC parameter

Page 125 of 172


Optional redundancy parameters:

enable Enables (1) or disables (0) IP output redundancy


sourceIp Source IP address, optional but required for OSPF
redundancy
manual This parameter is obsolete; it has been replaced by
redundancyControl below.
redundancyControl Choose one of four values: (0=One, 1=None, 2=Majority,
3=All). This feature is optional for backward compatibility.

Both manual and redundancyControl cannot be used simultaneously.

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>

Page 126 of 172


9.7 getIPOutPort
This method retrieves the IP output ports defined for:

a. one specific IP output module or

b. all IP output modules in the unit, depending on the parameters:

slotId Identifies a particular input module, optional.

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>

Page 127 of 172


9.8 setASIOutPort

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.

setASIOutPort has the following parameters:


slotId Identifies a particular module
portId Identifies a particular port
enable Enable (1=enabled, 0=disabled)
packetSize Two valid sizes: 188 or 204 bytes
byteMode Two string values: “spread” or “burst”
totalBitrate Constant Bit Rate for the ASI stream in bit/s

Response

<asiOutputList>
<asiOutput>
<slotId></slotId>
<portId></portId>
<enable></enable>
<packetSize></packetSize>
<byteMode></byteMode>
<totalBitrate></totalBitrate>
</asiOutput>
</asiOutputList>

Page 128 of 172


9.9 getASIOutPort
This method retrieves the ASI output ports defined for:

a. one specific ASI output module or

b. all ASI output modules in the unit, depending on the parameters:

slotId Identifies a particular input module, optional.

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>

Page 129 of 172


9.10 setCofdmOutPort
This method defines streaming ports to be set on the COFDM output module. The new
definition replaces the previous one, changing the configuration of the COFDM ports.

If portId is greater than 3, the additional entries will be added as COFDM virtual
ports.

setCofdmOutPort has the following parameters:


slotId Identifies a particular module
portId Identifies a particular port
enable Enable (1=enabled, 0=disabled)
frequency From 47 to 862MHz
constellation Either QPSK, QAM16, or QAM64
rfLevel From -10 to 2.2dBm
bandwidth 5, 6, 7, or 8 MHz
innerCode 1 , 2 , 3 , 5 , 6 or 7
2 3 4 6 7 8
txMode Either 2K or 8K
guardInterval 1 , 1 , 1 or 1
32 16 8 4

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>

Page 130 of 172


9.11 getCofdmOutPort
This method retrieves the COFDM Out ports define for:

a. one COFDM output module or

b. all COFDM output modules in the unit, depending on the parameters:

slotId Identifies a particular module, optional.

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.

setDvbT2OutPort has the following parameters:


slotId Identifies a particular module
portId Identifies a particular port
t2CellId DVB-T2 cell Id (0 - 100)
t2SystemId DVB-T2 system Id (0 - 100)
enable Enable (1=enabled, 0=disabled)

DVB-T2 modulator has the following parameters:

rfLevel From -17 to 3dBm


bandwidth 1.7, 5, 6, 7, 8 or 10 MHz
frequency From 40 to 2100MHz
txMode Either 1k, 2K, 4k, 8K, 8k-ext, 16k, 16k-ext, 32k or 32k-ext
t2Frames Modulator T2 frames (2 - 10000)
guardInterval 1 , 1 , 1 , 19 , 1 , 19 or 1
128 32 16 256 8 128 4
guardInterval 1 , 1 , 1 or 1
32 16 8 4
l1Constellation Either QPSK, QAM16, QAM256, or BPSK
pilotPattern PP1, PP2, PP3, PP4, PP5, PP6, PP7 or PP8
dataSymbols Modulator data symbols (7 - 221)

Page 131 of 172


DVB-T2 plp has the following parameters:

fecFrameSize PLP FEC frame size (short, normal)


constellation Either QPSK, QAM16, QAM64 or QAM256
constellationRotation PLP Constellation rotation (1=enabled, 0=disabled)
codeRate 1 , 3 , 2 , 3 , 4 or 5
2 5 3 4 5 6
highEfficiencyMode PLP High Efficiency Mode (1=enabled, 0=disabled)
tsFragmentation PLP TS Fragmentation (1=enabled, 0=disabled)

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>

Page 132 of 172


9.13 getDvbT2OutPort
This method retrieves the DVB-T2 Out ports define for:

c. one DVB-T2 output module or

d. all DVB-T2 output modules in the unit, depending on the parameters:

slotId Identifies a particular module, optional.

The method returns dvbT2OutputList with the same format as that used in
setDvbT2OutPort.

Page 133 of 172


9.14 getIPOutStatus
This method retrieves status information for:

a. one specific IP output module or

b. all IP output modules in unit; depending on the parameters:

slotId Identifies a particular module

The return message consists of a list of IP output modules’ status information entries.
Each entry contains the following parameters:

slotId Identifies a particular module


totalBitrate Total bit rate of the output stream in Mbps
effectiveBitrate Effective bit rate of the output stream in Mbps
ccErrors Number of CC errors detected

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>

Page 134 of 172


Response

<?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:

a. one specific QAM output module or

b. all QAM output modules in the unit, depending on the parameters:

slotId Identifies a particular module

The method returns a list of QAM output modules' status information entries. Each entry
contains the following parameters:

slotId Identifies a particular module


totalBitrate Total bit rate of the output stream in Mbps
effectiveBitrate Effective bit rate of the output stream in Mbps
ccErrors Number of CC errors detected

Page 135 of 172


Query

<?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:

a. one specific ASI output module or

b. all ASI output modules in the unit, depending on the parameters:

slotId Identifies a particular module

Page 136 of 172


The method returns a list of ASI output modules' status information entries. Each entry
contains the following parameters:

slotId Identifies a particular module


totalBitrate Total bit rate of the output stream in Mbps
effectiveBitrate Effective bit rate of the output stream in Mbps
ccErrors Number of CC errors detected

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>

Page 137 of 172


9.17 setQAMOutDevice
This method configures the modulation of output ports for the QAM output module.

The symbol rate must be identical for all rfGroupListEntry parameters.

setQAMOutDevice has the following parameters:

slotId Identifies a particular module


rfLevel RF level in dBm, between -17 and 3 in steps of 0.5
rfGroupList Contains a list of rfGroupListEntry; must be configured
with the same RF parameter values (see below).

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>

Page 138 of 172


<spacing>8.000</spacing>
<startFrequency>83.000</startFrequency>
</rfGroupListEntry>
</rfGroupList>
</qamOutDevice>
</setQAMOutDevice>
</env:Body>
</env:Envelope>

9.18 getQAMOutDevice
This method retrieves modulation configuration of the output ports for:

a. one specific QAM output module or

b. all QAM output modules in the unit, depending on the parameters:

slotId Identifies a particular input module, optional.

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>

Page 139 of 172


Response

<?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.

setQAMOutAnnexBDevice has the following parameters:

slotId Identifies a particular module


constellation Either QAM32, QAM64, QAM128, or QAM256
interleaverI Interleave parameter I and J can have one of the following
combinations: {{64,2}, {32,4}, {16,8}, {8,16}, {128,1},
interleaverJ {128,2}, {128,3}, {128,4}, {128,5}, {128,6}, {128,7} or
{128,8}}
rfLevel RF level in dBm, between -17 and 3 in steps of 0.5
rfGroupList Contains a list of rfGroupListEntry; must be configured
with the same RF parameter values (see below).

Page 140 of 172


rfGroupListEntry parameters:

rfGroupId One of two values: (1=output ports 0 to 3), (2=output ports


4 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>
<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:

a. one specific QAM Annex B output module,

b. all QAM Annex B output modules in the unit, or

c. all QAM Annex B output modules in the unit; depending on the parameters:

slotId Identifies a particular input module, optional.

Page 141 of 172


Query

<?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>

Page 142 of 172


9.21 setQAMOut16AnnexBDevice
This method configures the modulation of output ports for the QAM16 Annex B output
module.

setQAMOut16AnnexBDevice has the following parameters:

slotId Identifies a particular module


qamModulator Identifies a QAM modulator: between 0 – 3
rfLevel RF level in dBm, between -12 and 2.2 in steps of 0.1
interleaverI Interleave parameter I and J can have one of the following
combinations: {{64,2}, {32,4}, {16,8}, {8,16}, {128,1},
interleaverJ {128,2}, {128,3}, {128,4}, {128,5}, {128,6}, {128,7} or
{128,8}}
constellation Either QAM64 or QAM256
startFrequency Frequency of the first output port of the group: between 51
– 859MHz.

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>

Page 143 of 172


<qamModulatorEntry>
<slotId>6</slotId>
<qamModulator>3</qamModulator>
<rfLevel>-3.0</rfLevel>
<interleaverI>128</interleaverI>
<interleaverJ>1</interleaverJ>
<constellation>QAM64</constellation>
<frequency>147.000</frequency>
</qamModulatorEntry>
</qamOut16AnnexBDevice>
</setQAMOut16AnnexBDevice>
</env:Body>
</env:Envelope>

9.22 getQAMOut16AnnexBDevice
This method retrieves modulation configuration of the output ports for:

a. one specific QAM16 Annex B output module,

b. all QAM16 Annex B output modules in the unit,, or

c. all QAM16 Annex B output modules in the unit; depending on the parameters:

slotId Identifies a particular input module, optional.

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>

Page 144 of 172


9.23 setQAMOut16Device
This method configures the modulation of output ports for the QAM16 output module.

setQAMOut16Device has the following parameters:


qamModulator Identifies a QAM modulator: between 1 – 4
slotId Identifies a particular module
rfLevel RF level in dBm, between -8 and 3 in steps of 0.5
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.
frequency Frequency of the first output port of the group: between 51
– 858MHz.
spectrumInversion Spectrum Inversion (0,1), optional.

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>

Page 145 of 172


<spectrumInversion>1</spectrumInversion>
</qamModulatorEntry>
<qamModulatorEntry>
<slotId>15</slotId>
<qamModulator>3</qamModulator>
<rfLevel>-3.0</rfLevel>
<symrate>6.950</symrate>
<constellation>QAM256</constellation>
<spacing>8.000</spacing>
<frequency>402.000</frequency>
<spectrumInversion>0</spectrumInversion>
</qamModulatorEntry>
</qamOut16Device>
</setQAMOut16Device>
</env:Body>
</env:Envelope>

9.24 getQAMOut16Device
This method retrieves modulation configuration of the output ports for:

a. one specific QAM16 output module,

b. all QAM16 output modules in the unit,, or

c. all QAM16 output modules in the unit; Optional parameters:

slotId Identifies a particular input module, optional.

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>

Page 146 of 172


9.25 setQAMOutPort
This method configures one or more output ports for a QAM output module; the
module’s mode is always MPTS.

The method has the following parameters defined in the outputListEntry element:

slotId Identifies a particular module


portId Identifies a particular port
enable Enables (1) or disables (0) the output port
j183Jctea Optional support for ITU-T J.183/JCTEA (on, off). This
parameter takes effect only if the J.183 standard is
supported. Support for this feature is currently for
transparent mapping streams only.

Query

<qamOutputList>
<qamOutputListEntry>
<slotId></slotId>
<portId></portId>
<enable></enable>
<j183Jctea></j183Jctea>
</qamOutputListEntry>
</qamOutputList>

9.26 getQAMOutPort
This method retrieves QAM output ports defined for:

a. one specific QAM output module or

b. all QAM output modules in the unit, depending on the parameters:

slotId Identifies a particular input module, optional.

The method returns a list of all QAM output ports as defined in the setQAMOutPort
method.

Page 147 of 172


9.27 setQAMOutVirtualPort
This method configures one or more virtual output ports for a QAM output module. The
method has the following parameters defined in the virtualQamoutputListEntry
element:

slotId Identifies a particular module


portId Identifies a particular port
frequency Frequency of the virtual output port: between 47 – 862MHz.
constellation Either QAM16, QAM32, QAM64, QAM128, or QAM256
rfLevel RF level in dBm, between -17 and 3
symrate Symbol rate in MBd: between 4.48 – 7
enable Enables (1) or disables (0) the output port
j183Jctea Optional support for ITU-T J.183/JCTEA (on, off). This
parameter takes effect only if the J.183 standard is
supported. Support for this feature is currently for
transparent mapping streams only.

Page 148 of 172


Query

<?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:

c. one specific QAM output module or

d. all QAM output modules in the unit, depending on the parameters:

slotId Identifies a particular input QAM output module, optional.

The method returns a list of all virtual QAM output ports as defined in the
setQAMOutVirtualPort method.

Page 149 of 172


9.29 releaseOutputPort
This method deletes all configuration for a given output port. Depending on the module
in use releaseOutputPort produces the following results:

 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.

releaseOutputPort has the following parameters:

slotId Identifies a particular module


portId Identifies a particular port

Response

<outputList>
<output>
<slotId></slotId>
<portId></portId>
</output>
</outputList>

Page 150 of 172


9.30 releaseAllOutputPorts
This method deletes all configuration for all output ports of a given output module.

releaseAllOutputPorts has the following parameters:

slotId Identifies a particular module

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.

 If the transport is related to a port for transparency, it is not possible to define


external PID mapping, netId, tsId, and EMMs.

The method has the following parameters:

slotId Identifies a particular module


moduleId Identifies a particular output module.
Optional but mandatory for ipswitch output (0 or 1)
portId Identifies a particular port

domain Domain name (default will be “default” domain)


netId Network ID
tsID Transport stream ID
origNetId Optional original network ID, if not provided netId will be
origNetId

Page 151 of 172


tableEntry node under tableList contains the following PSI table parameters:

psiMode Either MPEG, DVB, ATSC, or Default


tableId Table ID
mode (0=stop, 1=play, 3=pass, or 4=psig)
playoutRate Refresh rate in ms
isUsebaseValue If set to 1=use default values

Output level scrambling node:

emmList Contains zero or more emmListEntry, each with an emmId or


emmRef parameter providing an EMM to be included.
emmRef EMM identifier

emmRef has the following parameters:

scsSlotId
In new applications, these three parameters uniquely
emmgInput
identify an EMM.
streamId

Transparent mode is described using the following parameters under each


transparentEntry:

slotId Identifies a particular input module


port Port selector of the input module
semiTransparency Optional, described below

semiTransparency is described using the following parameters

bitrate Transport stream bit rate: between 1 – 100Mbs


nitMode (-2=remap from, 0=stop, 1=generate, or 4=psig)
psiPlayoutRate Optional, for generate mode only
inSlot Mapping input slot – optional, for remap mode only
inPort Mapping input port – optional, for remap mode only
pid Mapping PID – optional, for remap mode only

pidListEntry under pidList node contains transport stream level PID import
parameters:

Page 152 of 172


slotId Identifies a particular input module
portId Identifies a particular input port
pid Input PID
remap Outgoing PID value
epg parameters:

addEpg Enables EPG schedule on the outgoing stream

epgSettings contains the following parameters:

playoutRate EPG play out rate in Mbps


playAll (0) or (1) – 1 means all incoming EPG is played out on the
output stream
playoutLimit Number of days’ worth of EPG information; only applicable if
playAll = 0
next12HoursPriority The priority given to EPG information for the next 12 hours
(1, 2, 3, 4, or 8) –1 is normal.

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>

Page 153 of 172


<streamId></streamId>
</emmRef >
</emmListEntry>
</emmList>
</scrambling>
<transparentEntry>
<slotId>2</slotId>
<portId>3</portId>
<semiTransparency>
<bitrate>100.000</bitrate>
<nitAMode>-2</nitAMode>
<inSlot>2</inSlot>
<inPort>1</inPort>
<pid>16</pid>
</semiTransparency>
</transparentEntry>
<PIDList>
<PIDListEntry>
<slotId></slotId>
<portId></portId>
<pid></pid>
<remap></remap>
</PIDListEntry>
</PIDList>
<epg>
<addEpg></addEpg>
<epgSettings>
<playoutRate></playoutRate>
<playoutLimit></playoutLimit>
<playAll></playAll>
<next12HoursPriority></next12HoursPriority>
</epgSettings>
</epg>
</transportEntry>
</transportEntryList>

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.

Page 154 of 172


9.33 setService
This method defines one or more services to a particular output port. The method is
valid for MPTS and SPTS modes only.

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.

setService cannot be used with ports in transparent mode.

By default functionScope is complete; in complete scope, setService removes all


existing services and adds them again. In other words, to add a new service to an output
stream, you need to include all existing services together with the new service in the
setService command. Partial mode is used when you want to add a new service with
the setService command without listing all existing services.

The method has the following parameters:

slotId Identifies a particular module


moduleId Identifies a particular output module.
Optional but mandatory for ipswitch output (0 or 1)
portId Identifies a particular port
functionScope Describes the function scope of the setService command
(0=partial,1=complete(default complete) optional)

Service sources are described using the following parameters under serviceListEntry:

inputRef Unique reference for the input service, see below


backupInputRef Identifies a backup input service source. This parameter is
optional and included in the event input redundancy is used.
psi PSI changes of the output service, see below
descrambling Descrambling settings as defined below, optional
scrambling Scrambling settings as defined below, optional
componentMode Output re multiplexing mode: either all, av, avt, or manual.
This parameter is optional; default value is all.
componentTypeList List of PID entries to allow for manually selecting the
content of the output stream. This parameter is only
present when componentMode is set to manual.

Page 155 of 172


Component type mapping is set up within each componentTypeListEntry with the
componentTypeList node:

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:

slotId Identifies a particular input module


port Identifies a particular input port
serviceId Service identifier of the selected input service, optional
priority Represents the service priority (high, medium, or low)

backupInputRef has the following parameters:


slotId Identifies a particular input module
portId Identifies a particular input port
serviceId Service identifier of the selected input service
redType Redundancy type (off, once, floating, reverting)
redDelay Extra delay in whole seconds

PSI changes are set up within each serviceListEntry with the psi node:

serviceName PSI change which replaces service name with this


serviceId PSI change which replaces service ID with this
provider Represents service provider name
serviceType Service type (TV, Radio, Advanced Codec Radio, Data
Broadcast Service, Advanced Codec SD TV, Advanced Codec
HD TV)

Page 156 of 172


Descrambling is set up within each inputListEntry with the descrambling node:

descType Descrambler type (verimatrix, biss or smartCard)


slotId Indicates which descrambler the service is to be routed
through for descrambling
portId Descrambler port, i.e. which CAM
bissKeyId BISS Key ID for fixed key descrambling, optional for
backward compatibility.

Scrambling is set up within each serviceListEntry with the scrambling node:

slotId Indicates which scrambler to be used for scrambling


bissKeyId BISS Key ID for fixed key scrambling, optional for backward
compatibility. (BISS key scrambling is licensed)
ecmId or ecmRef EMM identifier

ecmId and ecmRef are provided for backward compatibility.

A list of one or more ecmId/ecmRef or ecmgId and accessCriteria is needed.

ecmgId ID of selected ECM generator


accessCriteria For the defineECM method

ecmRef contains the following parameters:

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.

Page 157 of 172


pvrAssist Optional set PVR Assist (on, off)
pesHeaderInClear Optional set PES Header in Clear (on, off)

Only one reference – emmId or emmRef is allowed.

scrComponentTypeListEntry contains the following parameters:


priority Scrambling component type priority (lower is the number,
higher is the priority starts from 1) default -1, is lowest
priority
compType Component type (anytype, video, audio, ttx, dvbsub, emm,
ecm, pcr, private, ac-3, h.264, vbi, aac)
language Component language
incomingPid Selected incoming PID from the incoming service (1 to
8192)
scrMode Mode applied to component type scrambling (scramble,
clear)

Service PSI is set up within tableEntry with the “servicePsi” node: (Optional)

tableId Identifies PMT table


mode Mode (0= stop, 1= play, 3= pass, 4=psig)
playoutRate Refresh rate in ms
isUsebaseValue use default values if set to 1

Audio leveling can be set up (optional) 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

ecmAlignment contains the following parameters:

mode Contains either:


<rai/> for Random Access Indicator mode
<startcode><code>scode</code></startcode> for
startcode mode where scode is the startcode to match;
byte value

Page 158 of 172


position “before” or “after”
EIT Signaling in SDT is configured within eit node and contains the following
parameters:

schedule EIT schedule (auto, present, notPresent)


presentFollowing EIT present following (auto, present, notPresent)

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>

Page 159 of 172


<mode></mode>
<outgoingPid></outgoingPid>
</componentTypeListEntry>
</componentTypeList>
<scrambling>
<scramblerSlotId></scramblerSlotId>
<bissKey></bissKey>
<ecmList>
<ecmListEntry>
<ecmId></ecmId>
</ecmListEntry>
</ecmList>
<scramblingMode></scramblingMode>
<serviceMode></serviceMode>
<scrComponentTypeList>
<scrComponentTypeListEntry>
<priority></priority>
<compType></compType>
<language></language>
<incomminPid></incommingPid>
<scrMode></mode>
</scrComponentTypeListEntry>
</scrComponentTypeList>
<scramblingRatio></scramblingRatio>
<ecmAlignment>
<mode></mode>
<position>before</position>
</ecmAlignment>
<pvrAssist></pvrAssist>
<pesHeaderInClear></pesHeaderInClear>
</scrambling>
</servicePsi>
<tableEntry>
<tableId></tableId>
<mode></mode>
<playoutRate></playoutRate>
<isUsebaseValue></isUsebaseValue>
</tableEntry>
</servicePsi>
<audioLeveling>
<audioLevelCompList>
<audioLevelCompEntry>
<processSlot></processSlot>
<language></language>
<audioLevel></audioLevel>
</audioLevelCompEntry>
</audioLevelCompList>
</audioLeveling>
<eit>
<schedule></schedule>
<presentFollowing></presentFollowing>

Page 160 of 172


</eit>
</serviceListEntry>
</serviceList>
</outputListEntry>
</outputList>

Page 161 of 172


9.34 getService
This method retrieves a list of service level configuration associated with ports. The
return message contains an XML structure as defined in the setService method.

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.

The method has the following parameters:

slotId Identifies a particular output module


portId Identifies a particular output port

Service sources are described using the following parameters under serviceListEntry:

inputRef Unique reference for the input service, see below


audioLeveling Represents audio leveling setup, see below

Input Reference is set up within each serviceListEntry with the inputRef node:

slotId Identifies a particular input module


portId Identifies a particular input port
serviceId Service identifier of the selected input service

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

Page 162 of 172


Query

<?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.

Page 163 of 172


9.37 setPsiGenerator
This method is used to define a PSI generator. The method takes psiGenerator as a
parameter.

psiGenerator contains the following elements:

psigName PSI generator’s name


psigIp PSIG IP filter
psigPort PSIG listening port

setPsiGenerator will overwrite the settings of psiGenerator if it is already


defined.

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:

psiTableBaseValuesEntries has the following parameters:

psiDomain PSI domain (default is “default” domain)


psiBaseValuesMode PSI mode: either MPEG, DVB, or ATSC
tableId Table ID
mode (0=stop, 1=play, 3=pass, or 4=psig)
playoutRate Refresh rate in ms

Page 164 of 172


NIT Settings can be configured in two different ways:

 with psiTableBaseValuesEntries, nitSettings, and totSettings, or

 with two additional parameters – listName and countryCode – together with a


specifier and list of nitEntry, containing the following parameters:

specifier Logical Channel Descriptor (norDig, digitalEurope, ofcom or


LCD)
listName List name, optional – for version 2 only
countryCode Country code, optional – for version 2 only

nitEntry has the following parameters:


netId Network ID
tsId Transport Stream ID
serviceID Service ID
logicalChannelNr Logical Channel Number

totSettings has the following parameters:

countryCode Country Code


regionId Region ID
localTimeOffset Local Time Offset (-12 to 13: 0=GMT, -12=GMT-12,
13=GMT+13)
nextTimeOffset Next Time Offset (-12 to 13: 0=GMT, -12=GMT-12,
13=GMT+13)
year Time changed year
month Time changed month
day Time changed day
hour Time changed hour
minute Time changed minute
second Time changed second

Query

<psiTableBaseValues>
<psiTableBaseValuesList>
<psiDomain>default</psiDomain>
<psiBaseValuesMode>DVB</psiBaseValuesMode>
<psiTableBaseValuesEntry>
<tableId>0</tableId>
<mode>1</mode>
<playoutRate>200</playoutRate>

Page 165 of 172


</psiTableBaseValuesEntry>
<psiTableBaseValuesEntry>
<tableId>1</tableId>
<mode>1</mode>
<playoutRate>500</playoutRate>
</psiTableBaseValuesEntry>
<psiTableBaseValuesEntry>
<tableId>2</tableId>
<mode>1</mode>
<playoutRate>200</playoutRate>
</psiTableBaseValuesEntry>
</psiTableBaseValuesList>
<nitSettings>
<specifier>norDig</specifier>
<listName>List</listName>
<countryCode>900</countryCode>
<nitList>
<nitEntry>
<netId>12</netId>
<tsId>13</tsId>
<serviceId>15</serviceId>
<logicalChanelNr>1</logicalChanelNr>
</nitEntry>
<nitEntry>
<netId>14</netId>
<tsId>25</tsId>
<serviceId>36</serviceId>
<logicalChannelNr>2</logicalChannelNr>
</nitEntry>
</nitList>
</nitSettings>
<totSettings>
<countryCode>999</countryCode>
<regionId>5</regionId>
<localTimeOffset>-12</localTimeOffset>
<nextTimeOffset>0</nextTimeOffset>
<year>2010</year>
<month>12</month>
<day>30</day>
<hour>10</hour>
<minute>15</minute>
<second>55</second>
</totSettings>
</psiTableBaseValues>

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.

Page 166 of 172


9.42 getOutputStatus
This method retrieves the output Status Information for all output modules available in
the Appear TV device. The method takes no input parameter.

The return message contains a list of output modules Status Information entries. Each
entry has the following parameters:

slotId Identifies a particular output module


type Identifies output module type
services Represents total number of services on output module
totalRate Total rate of the output module in Mbps
ccErrors Total number of CC Errors on module
atvCCErrors Total number of ATV CC Errors on module
outputRate Total output rate of the module in Mbps

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>

Page 167 of 172


</soap:Envelope>

9.43 setPsiDomain
This method is used to add PSI domains. The method takes a list of
psiDomainListEntry as parameter containing the following elements:

psiDomainListEntry has the following parameters:

domainName Represents PSI domain name

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.

Page 168 of 172


9.45 removePsiDomain
This method is used to remove PSI domains. The method takes a list of
psiDomainListEntry as parameter containing the following elements:

domainName Represents PSI domain name

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>

Page 169 of 172


A APPENDIX – RESULT CODES

Return Code Message Notes


100 OK Command executed successfully
200 Invalid parameter Message may specify further
201 Invalid slot id
202 Invalid port id
203 Invalid service id
204 Invalid IP address/port
205 Invalid ECMG id
206 Invalid ECM id
207 Incompatible ECM set
208 netId and tsId must be unique
209 Invalid EMMG id
300 Resource conflict Message may specify further
301 Scrambler oversubscribed
302 Input/Output oversubscribed
303 Output IP address/port in use
304 Descrambler oversubscribed
305 No service found
306 Unavailable port id
307 SCG change not permitted SCG change not permitted
,when changing existing ECM
308 No Transparent mapping for
SPTS
309 No External Pid mapping for
SPTS
310 SPTS contains Max one stream
311 Empty service list on SPST port The user doesn't assign a
service to an SPTS port with the
SetService command. It's not
allowed.
312 Unknown slot id and/or port id
313 Attempt to add service to
Transparent mapping port

Page 170 of 172


Return Code Message Notes
314 Attempt to set MPTS without
netId and tsId
315 Card is not logedin in given slot
id and/or redundancy is not
enabled
316 Invalid ECM reference, ecmId
and ecmRef, only one is allowed
317 Redundancy: manual and
redundancyControl, only one is
allowe
318 Invalid EMM reference, emmId
and emmRef, only one is allowed
319 No ECMG reference: ecmgId or
ecmgInput is required
320 No EMMG reference: emmgId or
emmgInput is required
321 Ecm generator with given slot
and inputId is already configured
with redundancy
322 Fixed Key Scrambling: BISS
Keys License is not installed
323 Invalid ecmRef: no ecm found
324 Invalid emmRef: no emm found
325 Verimatrix Descrambling license
missing
326 Card in use
327 Invalid service slot id
328 Decoder already in use
329 Input redundancy: output
service ID and service name
needs to be specified
330 Invalid output serviceId
340 DVB CSA BISS-E required mode
and keyId
341 Input redundancy and
descrambling not supported at
same time
342 Max transport stream license

Page 171 of 172


Return Code Message Notes
violation
343 Invalid inputRef: Attempt to add
a service twice to MPTS
344 Invalid audio Type selection
345 Invalid priority language
346 Invalid VLan
347 J183Japan enabled port, only
transparent mapping supported
348 Invalid Input Redundancy
parameters
349 Service Input Redundancy
cannot be removed
350 Alt CAM and EMM Source cannot
be set together
351 Alt CAM cannot be set with ADM
services configured by different
source Ports
352 ADM services cannot be
configured with different source
Ports while Alt CAM is set
353 Port cannot be removed because
it is in use

Page 172 of 172

You might also like