OneClickExt properties reference¶
This page is the complete properties reference for OneClickExt. For task-oriented guidance, see the Script Launcher guides.
SpectroSERVER configuration¶
The daemon connects to Spectrum via CORBA. These properties identify which Spectrum servers to connect to and control reconnect behavior.
Main Location Server and Backup Main Location Server
oneclickext.mls.primary: <MLS host>
oneclickext.mls.backup: <BLS host>
Hostname of the MOM (Main SpectroSERVER)
oneclickext.ss.host: <MLS host>
Spectrum user account used by the daemon for all CORBA operations (attribute reads, model queries).
oneclickext.ss.user: <spectrum user>
Set to true when domain names in Spectrum are registered as FQDNs (e.g., via MapUpdate -v).
dcsspcexp.ss.domain.fqdn: true | false
If the CORBA connection to the MOM fails at startup, the daemon retries at this interval. retryCount: 0 means unlimited retries.
Retry interval [ms]:
oneclickext.ss.retryIntervall: 1000
Maximum retry count (0 = unlimited):
oneclickext.ss.retryCount: 300
When true, the daemon waits until all configured Spectrum domains are reachable before becoming operational. When false (default), it starts with whichever domains are available.
oneclickext.ss.connectAll: false
How often the CORBA monitor polls the MOM to detect connection loss [ms].
oneclickext.ss.pollingIntervall: 1000
How often the daemon queries Spectrum for the current domain list [ms].
oneclickext.ss.abfrageIntervall: 10000
When true, each CORBA monitor uses its own timer thread rather than sharing one.
oneclickext.ss.owntimer: true
Whitelist/blacklist of Spectrum domains to query. include.domains.list takes precedence: if set, only those domains are queried regardless of exclude.domains.list.
oneclickext.ss.include.domains.list: <domainlist>
oneclickext.ss.exclude.domains.list: <domainlist>
RMI Parameters¶
The daemon exposes its interface over Java RMI. Two ports are required: one for the RMI registry and one for the actual object communication.
Daemon listener port (RMI registry) and object communication port:
oneclickext.rmi.port: <RMI port>
oneclickext.rmi.connport: <RMI connection port>
The client reads these from system properties set in the JNLP launch file. The installer sets them automatically in oneclickext.jnlp:
oneclickext.rmi.host: <host>
oneclickext.rmi.port: <port>
Both RMI ports must be open in any firewall between the console host and the daemon host.
In a fault-tolerant environment, a secondary host can also be configured. The client tries the primary first and falls back to the secondary if the primary is unreachable:
oneclickext.rmi.secondary.host: <host>
oneclickext.rmi.secondary.port: <port>
Settings for script execution¶
Maximum number of parallel execution threads. Scripts run on the parallel pool unless exec.sequential is set, in which case they use a single sequential thread.
oneclickext.exec.threads: 32
Diagnostic: log queue and thread status at this interval [ms]. 0 disables the log (default).
oneclickext.exec.info.interval: 0
Additional Properties¶
The daemon hot-reloads these files before each script call. Paths are relative to the daemon's working directory (typically bin/). Multiple files are separated by spaces.
oneclickext.additional.props: ../conf/testscript.props
ScriptLauncher classes¶
There are three ScriptLauncher classes:
ScriptLauncher: can only be launched on one modelMultiScriptLauncher: launches on one or more models — on a Global Collection or on selected models in SpectrumGlobalScriptLauncher: launches without models
When starting scripts from OneClick, an alternative script server can be specified. To do this, the script item is extended to include the host and port:
<item name="SetModelName">
becomes
<item name="SetModelName_<hostname>_<port>">
Permissions for launching the ScriptLauncher via a website¶
Permissions control which users can invoke scripts through the HTTP interface. They are evaluated on the server side; the username passed in the URL request is checked against this configuration.
A permission can be granted via a group or directly to a user.
Script groups — assignment of scripts to a group:
oneclickext.scripts.groups.<group name>: <script 1> <script 2> ...
Group permissions — assignment of a group to a user:
oneclickext.scripts.users.<user name>.groups: <group name>
Script permissions — assignment of scripts directly to a user:
oneclickext.scripts.users.<user name>.scripts: <script 1> <script 2> ...
Configuration for OneClick script runner¶
Script command¶
The command property specifies the executable (or full path) that the daemon runs. The encoding property controls how the process output stream is decoded; a mismatch causes garbled output.
oneclickext.scripts.<scriptitem>.command: <Windows or UNIX Command>
oneclickext.scripts.<scriptitem>.encoding: <CP437 on Windows | UTF-8 on UNIX>
Script execution¶
By default, all scripts run in parallel, subject to the thread pool limit. Setting exec.sequential: true routes the script through a single dedicated thread, so it never runs concurrently with other sequential scripts.
oneclickext.scripts.<scriptitem>.exec.sequential: <true|false>
Default: false.
exec.class controls per-device concurrency — whether a second invocation for the same device is held in a wait queue until the first finishes.
Possible values:
AUTO— uses the Spectrum model handle as the device key when launched from OneClick; uses the IP address as the key when launched from the command line. This is the default and prevents two scripts from running simultaneously on the same device.NONE— no per-device restriction; multiple scripts may run on the same device at the same time.
oneclickext.scripts.<scriptitem>.exec.class: <NONE|AUTO>
Default: AUTO.
Note
Older configuration examples may show exec.type instead of exec.class. The server reads exec.class; exec.type has no effect.
Scripts are dispatched in priority order. Within the same priority level, scripts are processed in the order they were submitted (FIFO). Internal numeric values: highprio = 1, stdprio = 2, lowprio = 3.
oneclickext.scripts.<scriptitem>.prio: <highprio|stdprio|lowprio>
Default: stdprio.
Diagnostic: when true, the script output window includes a line showing the queue status and thread count at dispatch time.
oneclickext.scripts.<scriptitem>.runinfo: false
The Run button initial state. When set to false, the button starts disabled and must be re-enabled by a combo action before the user can run the script. Read each time the dialog is opened.
oneclickext.scripts.<scriptitem>.runbutton.enabled: false
Control the output and exit code of the script¶
oneclickext.scripts.<scriptitem>.showOutput: <true|false>
Default: true.
oneclickext.scripts.<scriptitem>.showExitCode: <true|false>
Default: true.
Configuration for multiscripts¶
Scripts launched via MultiScriptLauncher must have multidevice.active: true. The dialog shows the device list and runs the script once per device.
oneclickext.scripts.<scriptitem>.multidevice.active: <true|false>
Default: false.
Maximum number of devices that can be selected for a single run.
oneclickext.scripts.<scriptitem>.multidevice.maxdevices: <n>
Default: 10
The attributes Model_Name (0x1006e) and Network_Address (0x12d7f) are always fetched for each device. List any additional attributes here; they are fetched and made available as parameter values. Only attributes listed here (or the two mandatory ones) can be referenced by script parameters using attr.
oneclickext.scripts.<scriptitem>.multidevice.attributes: <Attr ID> ...
Definition of texts¶
Both texts support \n for line breaks. %Pn% is replaced at display time with the value the user has entered in parameter field n.
paramtext is displayed above the input fields and should describe the script's purpose.
oneclickext.scripts.<scriptitem>.paramtext: <parameter text including \n and %Pn%>
secquestion is shown in a confirmation dialog after the user clicks Run, giving them a last chance to review or cancel. The %Pn% substitution lets you echo back the values the user entered.
oneclickext.scripts.<scriptitem>.secquestion: <Question text including \n and %Pn%>
Web invocation¶
These properties apply when the script is invoked through the Script Server HTTP interface.
Width (in characters) of the HTML input fields in the web dialog:
oneclickext.scripts.<scriptitem>.input.size: 35
Help text displayed in the web dialog:
oneclickext.scripts.<scriptitem>.helptext: <text>
Parameter definition¶
Parameter list — all parameter identifiers, in order. The order determines both the dialog layout and the order arguments are passed to the script.
oneclickext.scripts.<scriptitem>.params: <p1 p2 p3 ... >
Width in pixels of all input fields in this script's dialog.
oneclickext.scripts.<scriptitem>.width: <pixels>
Default: 180
Label shown to the left of the input field.
oneclickext.scripts.<scriptitem>.p<n>.name: <Parameter Name>
Value definition¶
-
Static default value.
%DATE%is expanded to the current date and time.
oneclickext.scripts.<scriptitem>.p<n>.value: <any text> -
Validate against a named validator (defined globally, see below).
oneclickext.scripts.<scriptitem>.p<n>.validator: <validator name> -
Read from a Spectrum attribute on the selected model. On read error, falls back to
.value(or empty ifemptyvalueonerror: true).
oneclickext.scripts.<scriptitem>.p<n>.attr: <attrId to read on selected model> -
Read from the device model associated with the selected model, reached via
Significant_Model_ID (0x12a56). Not supported for multi-device scripts.
oneclickext.scripts.<scriptitem>.p<n>.devattr: <attrId to read on device of selected model> -
Use a system-provided value:
oneclickext.scripts.<scriptitem>.p<n>.sysparam: <name>
| Value | Scope | Description |
|---|---|---|
osuser |
all | OS user name of the current session |
specuser |
all | Spectrum user name |
hostname |
all | Hostname of the client machine |
starttime |
all | Formatted timestamp captured when the dialog opens (format set by oneclickext.scripts.starttime) |
scriptip |
multi-device only | IP address of the device currently being processed |
scriptdns |
multi-device only | DNS name of the device currently being processed |
devlist |
multi-device only | Path to the full device list file |
param1, param2, … |
command-line / Script Server only | Command-line arguments passed to the script |
-
Use a URL query parameter (Script Server only), passed as
&<name>=<value>in the invocation URL:
oneclickext.scripts.<scriptitem>.p<n>.urlparam: <name> -
Display a dropdown (combo box). Values are pipe-separated.
oneclickext.scripts.<scriptitem>.p<n>.combo: <text 1|text 2|text 3| ...>
Return the 1-based index of the selected entry instead of the text:
oneclickext.scripts.<scriptitem>.p<n>.comboidx: <true|false>
Default: false
Pre-select the nth entry when the dialog opens (1-based):
oneclickext.scripts.<scriptitem>.p<n>.combosel: <n>
Combo actions are triggered when the user selects an entry. They can set values, enable/disable fields, or enable/disable the Run button.
oneclickext.scripts.<scriptitem>.p<n>.comboaction.<n (selection)>.list: <action 1> [<action 2> ...]
oneclickext.scripts.<scriptitem>.p<n>.comboaction.<action name>.action: <action>
oneclickext.scripts.<scriptitem>.p<n>.comboaction.<action name>.value: <value>
oneclickext.scripts.<scriptitem>.p<n>.comboaction.<action name>.param: <param>
Action definitions and available values are described under Global Actions below.
Parameter options¶
-
Show asterisks instead of the actual value (for passwords). Does not apply to combo boxes.
oneclickext.scripts.<scriptitem>.p<n>.visible: <true|false>
Default:true -
Make the field read-only. Does not apply to combo boxes.
oneclickext.scripts.<scriptitem>.p<n>.editable: <true|false>
Default:true -
Hide the parameter row entirely. The value is still passed to the script.
oneclickext.scripts.<scriptitem>.p<n>.hidden: <true|false>
Default:false -
Show an empty field on attribute read error instead of an error string.
oneclickext.scripts.<scriptitem>.p<n>.emptyvalueonerror: <true|false>
Default:false -
Tooltip text shown when the user hovers over the input field. Also rendered as an HTML
titleattribute in the web dialog.
oneclickext.scripts.<scriptitem>.p<n>.tooltip: <text>
Syslog settings¶
The Script Server can send RFC 3164 syslog messages when a script starts and when it completes. The message format template is configured on the Script Server (see the Script Server reference).
These per-script properties control whether syslog is sent and what priority value to include in the %PRI% template token:
oneclickext.scripts.<scriptitem>.startsyslog.enabled: <true|false>
Default: false
oneclickext.scripts.<scriptitem>.endsyslog.enabled: <true|false>
Default: false
oneclickext.scripts.<scriptitem>.startsyslog.pri: <pri>
Default: 190 (facility 23 = local7, severity 6 = informational)
oneclickext.scripts.<scriptitem>.endsyslog.pri: <pri>
Default: 191 (facility 23 = local7, severity 7 = debug)
The pri value is encoded as (facility × 8) + severity, matching RFC 3164. Common choices: 190 for informational, 187 for warning (severity 3), 184 for emergency (severity 0).
Global Script settings¶
Validators¶
Validators are defined once and referenced by name from any parameter. If the input does not match the regular expression, the dialog shows the error message and prevents the script from running.
oneclickext.scripts.validator.<validator name>.regexp: <Regular Expression>
oneclickext.scripts.validator.<validator name>.message: <Text for error message>
Example:
oneclickext.scripts.validator.valid_ip.regexp: \\d+\\.\\d+\\.\\d+\\.\\d+
Global Actions¶
Global combo actions are defined once and can be referenced by name from any script parameter. They work identically to inline actions but are shared across scripts.
oneclickext.scripts.comboaction.<gaction name>.action: <action>
oneclickext.scripts.comboaction.<gaction name>.value: <value>
oneclickext.scripts.comboaction.<gaction name>.param: <param>
Reference from a parameter:
oneclickext.scripts.<scriptitem>.p<n>.comboaction.<n (selection)>.list: <gaction 1> [<gaction 2> ...]
Action values and params:¶
| Action | Value | Parameter | Description |
|---|---|---|---|
| enable | n.a. | Pn | enable a parameter |
| disable | n.a. | Pn | disable a parameter |
| text | 'text' | Pn | insert text |
| clear | n.a. | Pn | clear value |
| date | date specifier | Pn | set input to Date |
| rbenable | n.a. | n.a. | enable Run-Button |
| rbdisable | n.a. | n.a. | disable Run-Button |
date specifier¶
lastDay.fromandlastDay.tolastWeek.fromandlastWeek.tolastMonth.fromandlastMonth.to
Date formatting¶
The starttime sysparam value is formatted using this pattern, captured at the moment the script dialog is opened.
oneclickext.scripts.starttime: <format>
| Letter | Date or Time Component | Presentation | Examples |
|---|---|---|---|
| G | Era designator | Text | AD |
| y | Year | Year | 1996; 96 |
| M | Month in year | Month | July; Jul; 07 |
| w | Week in year | Number | 27 |
| W | Week in month | Number | 2 |
| D | Day in year | Number | 189 |
| d | Day in month | Number | 10 |
| F | Day of week in month | Number | 2 |
| E | Day in week | Text | Tuesday; Tue |
| a | Am/pm marker | Text | PM |
| H | Hour in day (0-23) | Number | 0 |
| k | Hour in day (1-24) | Number | 24 |
| K | Hour in am/pm (0-11) | Number | 0 |
| h | Hour in am/pm (1-12) | Number | 12 |
| m | Minute in hour | Number | 30 |
| s | Second in minute | Number | 55 |
| S | Millisecond | Number | 978 |
| z | Time zone | General time zone | Pacific Standard Time; PST; GMT-08:00 |
| Z | Time zone | RFC 822 time zone | -0800 |
Examples¶
| Date and Time Pattern | Result |
|---|---|
yyyy.MM.dd G 'at' HH:mm:ss z |
2001.07.04 AD at 12:08:56 PDT |
EEE, MMM d, ''yy |
Wed, Jul 4, '01 |
hh 'o''clock' a, zzzz |
12 o'clock PM, Pacific Daylight Time |
K:mm a, z |
0:08 PM, PDT |
yyyyy.MMMMM.dd GGG hh:mm aaa |
02001.July.04 AD 12:08 PM |
EEE, d MMM yyyy HH:mm:ss Z |
Wed, 4 Jul 2001 12:08:56 -0700 |
yyMMddHHmmssZ |
010704120856-0700 |
yyyy-MM-dd'T'HH:mm:ss.SSSZ |
2001-07-04T12:08:56.235-0700 |