Caplog Message Rewriter

Description

This is an add-on for V3CapLog which enables messages to be filtered / interpreted.

For example:

The raw command RC 123 13 1 has been resolved into device name, source and destination names and workstation name.

It's configurable whether the raw RC command gets displayed....or just the interpreted command.

It's also configurable whether the response to this command gets displayed.

Data Sources

Router Names

Router names are simply taken from the usual BNCS databases 0 and 1.

If interpreting of Infodriver messages is enabled, then the index is taken as the destination number, and the integer value of the slot as the source.

If the integer value of the slot is zero then the integer value following the string "index=" is searched for. This is a recent and moderately common source of packager number.

e.g. for the slot contents of

level=3,index=2,offset=99

this message interpreter will show the source name for index 2.

Workstation Names

Workstation names are taken from:

BNCS System Type | Data Source
V4.6 | workstations.xml
V2/V3 | launch.ini

There is no fixed standard or requirement for workstation name in launch.ini - nor even that there is a single central version of it.

Default location for workstation name is:

[Workstation_016]
Name=Lines

but if no name can be found the following is tried:

[Workstation_016]
WS_Name1=Enniskillen Studio

If no name is available the just the workstation number is reported

Device Names

Device Names are taken from the DEV_nnn.INI file. There are two possible sources of the name.

The default is:

[Device]
Name=Device 123

if a name can't be found in this location then it'll try here

[GRD]
Name=SDI Router Studio 3

If no name can be found then just the device number is reported

Configuration

This implementation of the external application takes configuration from its own ini file in "the usual" locations for the version of BNCS system on which it runs.

The file is called "caplogMessageRewriter.ini" and has the following values:

Section/Key | Notes
[DeviceFilter] |
Devices=50,123 | Comma delimited list of devices to apply message interpreting/rewriting to. If this value is blank then no filtering
[DisplaySettings] |
PreserveOriginal=0 | Whether to prepend the original message to the log ahead of any interpreted. This setting is kinda opposite polarity from the value shown on the UI
ShowInfodriver=1 | Whether to show Infodriver messages
ShowRouter=1 | Whether to show Router messages
ShowGPI=1 | Whether to show GPI messages
ShowCommands=1 | Whether to show commands (RC, IW, GS)
ShowRevertives=1 | Whether to show "revertives" (RR, IR, GR)

You shouldn't need to edit these ini file values by hand - they can be edited on-the-fly at runtime:

Version Control

Version | Date | Author | Comments
1.0.3.0 | 18/06/2012 | David Yates | first recorded version increases size of buffer to allow for 2 full-size database strings and other data
1.0.4.0 | 19/06/2012 | David Yates | increases size of deviceFilter buffer to ensure it can never be exploded even with every device number explicitly defined changes return values on dialog box to show they've been processed
1.0.5.0 | 20/11/2012 | David Yates | if source/dest names cannot be resolved then at least it nows shows the index instead
1.0.6.0 | 14/12/2012 | David Yates | changes max line length to 2048 to allow for very long heartbeat messages (and consistent with V3caplog)
 | 27/02/2017 | David Yates | Docs conversion to markdown
Build: master 3586 0d983c63 Atos © 2018