Skip to content

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 model
  • MultiScriptLauncher: launches on one or more models — on a Global Collection or on selected models in Spectrum
  • GlobalScriptLauncher: 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 if emptyvalueonerror: 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 title attribute 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.from and lastDay.to
  • lastWeek.from and lastWeek.to
  • lastMonth.from and lastMonth.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