Specifications
9261-7974 Issue 06
ESFIRECODER - Emergency Services Firecoder
Page 33
www.multitone.com
6.25 Macros
Agent Manager Commands can use macros. These start with a $, and must be defined before they
are used. Wherever they occur in non-quoted text, the replacement value is inserted prior to any
further processing. For example:
$mf = peristat x1xxxxxxxxxxxxxx
$msg = "Message"
Then this line:
if $mf then page 1234567 $msg
will be converted to
if peristat x1xxxxxxxxxxxxxx then page 1234567 "Message"
A few rules:
Macro substitutions are done on a line by line basis prior to the main parsing of the configuration.
Macro names can be up to 10 characters.
Macros are not recursive; once a replacement has been done, no further replacements of the replaced
text will be done.
Macros will not be replaced in quoted text, but can contain quoted text strings.
Only a single definition (the first) of a macro is permitted.
If a macro substitution would make a line too long, the entire line is rejected and a warning displayed.
A space or new line must follow each macro name.
6.26 Debugging
By virtue of it's sheer complexity, debugging Agent Manager configurations can be a significant
challenge.
If the Router Message Display parameter is sent to Debug, then a summary of each line parsed will
be shown on the main log screen for every command that the Agent Manager processes.
This displays each parsed element <like_this> followed by the internal parse state. Message decode
states and comparison results are also shown [like_this]. Failed compares are shown as [!xxxx]
where xxxx is some possibly meaningful text describing the comparison type.