SELENIO™ SEL‐1DEC1/SEL‐1DEC2
Installation and Operation Manual
Miscellaneous
© 2014 Imagine Communications Corp. Proprietary and Confidential.
Version 7.0 | Page 44
To enable a parameter control script, set the Activate Script parameter to Enable. Enter the user script
into the Script (Part I) parameter (maximum 251 characters). If additional script space is needed, use the
Script (Part II to IV) parameters. Script Status [RO] reports the parsing and active status of the script. If a
syntax error is detected when a new script is entered, this parameter will report an Error: x message (
x
is an index number starting from the beginning of the script to indicate around which character the
script parser first encountered a syntax error).
Writing the Parameter Control Script
Parameter control scripts are made up of one or more statements. Each statement consists of one
condition and one or more assignments. During device operation, if the condition in a statement
becomes true, the assignment(s) in the statement will take effect.
<script> ::= <statement> { <statement> }
<statement> ::= IF <condition> THEN <assignment> { <assignment> }
<condition> ::= <comparison> { <logic op> <comparison> }
<comparison> ::= PARAM[x] <comparison op> y
Where x is the CCSP ID of a device parameter, y is a value for that parameter. The device parameter
could be one of three types: integer, enum, string. Depending on the parameter type, y could take
different format:
•
Integer: y is integer value of the parameters
•
Enum: y is the enum value index inside the enum
•
String: y is in a 'zzzz' string format, where z is a character. Special character '*' can be used as
wild card. 'AA*' and 'AABB' will be considered as equal
<comparison op> ::= == | > | < | >= | <= | !=
For string type of parameter, only == and != operators are supported.
<assignment> ::= PARAM[x] = y
Where x is the CCSP ID of a device parameter, y is a value for that parameter. For now, we only
support integer and enum type of parameter's assignment, not string type.
<logic op> ::= && | ||
Comparisons can be ANDed together using &&, and then can be ORed together using ||. The AND
operation always has precedence over the OR operation when AND and OR both exist in a
condition.
The following script condition
PARAM[400]==5 || PARAM[400]==3 || PARAM[400] >= 8 && PARAM[400] <= 12
should be interpreted as
PARAM[400]==5 || PARAM[400]==3 || (PARAM[400] >= 8 && PARAM[400] <= 12)
Script example:
IF PARAM[754]==2 THEN PARAM[755]=2
IF PARAM[754]==3 THEN PARAM[755]=3