9.723 VioIP-End-Point

The VioIP-End-Point device is used by the sat-nms VioIP software to monitor and control one single connection end point. The device translates the abstract commands for starting or stopping a connection it receives from the VioIP server into device specific parameter settings. For monitoring it checks certain alarms of the monitored device and filters them in a way that connection specific faults are masked while the device actually does not service a connection.

Connection States

The device knows a state "idle" which means there is actually no connection running, the device is ready to receive a start command from the VioIP server. When the device receives a connection start command, it first applies the device preset defined in the connection profile of the upcoming connection. After a short time the device then sends the connection specific commands as defined with the start macro at the second device screen page. When these commands are sent, the device waits "startDelay" seconds before it changes to the state "running" and now unmasks the connection specific devices faults.

The device now remains in the "running" state until a stop command is received from the server. Then the device masks the connection specific faults again, reads the packet counters from the device and finally applies the stop commands to the device. It stays for "stopDelay" seconds in this state and now sends the counter reset commands to the device. The device returns back to "idle" state.

Start / Stop Commands

The commands sent to the device in order to start or stop a connection are defined at the second page of the device window. The format is much like the macro language used by the sat-nms software, commands typically consist of the destination message ID, a space character and the value to be set. Empty lines and lines starting with the comment character '#' are ignored.

There are four commands the device uses during the life cycle of a connection:

Command Parameters

The macro language used for these commands knows a number of placeholders which may be used to insert parameters which are not known before the connection starts. These are:

Beside these parameters, the macros knew three commands to read the packet counters from the physical device. For these commands the sequence of words is just the other way round: The line starts with one of the commands followed by a space character and the message ID of the parameter to read. The latter may contain the %DEV placeholder for the name of the physical device. The commands to read the packet counters are:

The macros also may contain commands directed to other devices than the %DEV device. In a start macro you may command a switch or matrix port in order to select the proper input signal for an encoder for example.

Finally, when you create a VioIP-End-Point device using the "Add New Device" function in the VioIP Network Configuration Application , you may activate the checkmark "initialize end point device with library settings". In this case the VioIP Network Configuration Application fills the start / stop macros with defaults suitable for the physical device you selected.

Examples

Below you find a number of examples for command macros. The shall illustrate the usage of the command language and the placeholders described above:

Start a unicast connection from a Ateme-Kyrion-CM5000 Encoder

Start a multicast connection from a Ateme-Kyrion-CM5000 Encoder

Stop a connection at a Ateme-DR5000 IRD, read the packet counters before actually stopping the connections

Device window pages

The following table shows which device window pages are available with this individual device type. Tool-bar functions not mentioned here are described at the general description of device windows .

Configuration parameters

At the maintenance page of the device window there are a couple of configuration parameters which must be set to integrate the device into the VLC/M&C.

parameter description
simulation With the simulation mode you may use the VioIP-End-Point without a physical device attached. This is for testing purposes only, you should leave this parameter at OFF
moduleIndex If the physical device controlled by this end point is single encoder or decoder, leave this parameter at 0. With devices which provide multiple instances of encoders or decoders, enter a number 1..n which addresses the module within the device.
device The name of the physical device
fileRecorder The name of a file recorder used to log the quality data of connections processed by this end point.
deviceFault1Id deviceFault2Id deviceFault3Id You may enter up to three parameter IDs of fault flags which shall be monitored only if a connection is actually running. Fault conditions like "input signal missing" or "stream lock missing" are typical faults you may want to monitor this way.
startDelay The device starts to monitor the faults above this number of seconds after it receives the start command this delay gives the device a chance to "settle" and to clear its faults after it has been set for the upcoming connection
stopDelay The device clears the device's packet counters this number of seconds after it has received the stop command from the server

When creating a VioIP-End-Point device using the "Add New Device" function in the VioIP Network Configuration Application you may activate the checkmark "initialize end point device with library settings". In this case the VioIP Network Configuration Application sets all the configration parameters above to defaults suitable for the physical device you selected.

Variables defined by this device driver

name type flags range
info.driver TEXT R/O StringRange R/O
info.type TEXT R/O StringRange R/O
info.port TEXT R/O StringRange R/O
info.frame TEXT R/O StringRange R/O
info.state TEXT R/O StringRange R/O
config.simulation CHOICE SAVE SETUP EnumRange (OFF ON)
config.moduleIndex INTEGER SAVE SETUP IntegerRange (0 .. 16)
config.device TEXT SAVE SETUP StringRange
config.fileRecorder TEXT SAVE SETUP StringRange
config.deviceFault1Id TEXT SAVE SETUP StringRange
config.deviceFault2Id TEXT SAVE SETUP StringRange
config.deviceFault3Id TEXT SAVE SETUP StringRange
config.startDelay INTEGER SAVE SETUP IntegerRange (0 .. 30)
config.stopDelay INTEGER SAVE SETUP IntegerRange (0 .. 30)
cmd TEXT NOPRESET StringRange
cmdmem TEXT SAVE NOPRESET StringRange
startUnicastCmds TEXT SAVE StringRange
startMulticastCmds TEXT SAVE StringRange
stopCmds TEXT SAVE StringRange
counterResetCmds TEXT SAVE StringRange
mcast TEXT R/O StringRange R/O
srcip TEXT R/O StringRange R/O
dstip TEXT R/O StringRange R/O
running BOOLEAN R/O BooleanRange R/O (true false)
preset TEXT R/O StringRange R/O
side TEXT R/O StringRange R/O
port INTEGER R/O IntegerRange R/O (0 .. 0)
totalPackets INTEGER R/O IntegerRange R/O (0 .. 0)
correctedPackets INTEGER R/O IntegerRange R/O (0 .. 0)
uncorrectedPackets INTEGER R/O IntegerRange R/O (0 .. 0)
faults.01 ALARM R/O AlarmFlagRange R/O (Device Fault 1)
faults.02 ALARM R/O AlarmFlagRange R/O (Device Fault 2)
faults.03 ALARM R/O AlarmFlagRange R/O (Device Fault 3)
faults.04 ALARM R/O AlarmFlagRange R/O (Device Summary)
faults.05 ALARM R/O AlarmFlagRange R/O (Device Communication)