DLI DC3 Object Model Reference
20210819T152642Z
Relay object
objectrelay/
Object representing relay state and configuration
dot_inline_dotgraph_1.png

This object contains the following items:

nameName
onlineOnline status
modelModel
versionRelay version number
outletsOutlets
set_outlet_transient_statesConfigure multiple transient states simultaneously
sequence_delayOutlet ON sequence delay
min_sequence_delayMinimal ON sequence delay
cycle_delayDefault outlet cycle delay
relatchBrown-out re-latch delay
recovery_modeRecovery mode
measurement_intervalMeasurement interval
busesBuses
portsPorts
known_port_typesPort types
pinsPins
netsNets
net_poll_intervalNet poll interval
gpio_scan_intervalGPIO scan interval, if any
scan_catch_up_limitGPIO scan interval catch-up limit
fuses_enabledEnable measurement-driven outlet control
min_relay_voltageMinimum relay voltage, if any
fuse_relatchMeasurement-driven relatch timeout, if any
keypad_enabledKeypad state
all_capsLCD all-caps filter
beep_sequenceBeep sequence
backlight_sequenceBacklight sequence
lcd_columnsLCD column count
lcd_rowsLCD row count
user_linesUser LCD lines
user_message_force_timeoutUser message force display timeout, if any
user_message_timeoutUser message display timeout, if any
notificationsNotifications

Sample JS request read command:

request.get({url:"relay/"},function(error,response,body) {console.log(body)});

<...>

Sample uom library write command:

uom.relay=<...>

Browse more samples

Name

stringrelay/name/
User-visible relay name
dot_inline_dotgraph_2.png

Changing the value is denied if not administrative user

This string represents a value in persistent storage.

Sample curl write command:

curl --digest -u admin:1234 -H "X-CSRF: x" -X PUT -H "Content-type: application/json" -H "Accept: application/json" --data-binary "\"My controller\"" "http://192.168.0.100/restapi/relay/name/"

Sample CLI write command:

uom set "relay/name" "\"My controller\""

Browse more samples

Online status

sum (variant)relay/online/
Relay module online status
dot_inline_dotgraph_3.png

Retrieving the value is denied if not administrative user

This sum does not support direct modification if agent identifier is not equal to relay.

This sum can assume the following values:

constant trueOnlineThe relay module is online and fully operational, outlets can be switched on unless emergency shutoff is activated
constant "degraded"DegradedThe relay module is online but outlets cannot be switched on due to low-power conditions
constant falseOfflineThe relay module is offline, outlets cannot be switched on

Sample curl write command:

curl --digest -u admin:1234 -H "X-CSRF: x" -X PUT -H "Content-type: application/json" -H "Accept: application/json" --data-binary "true" "http://192.168.0.100/restapi/relay/online/"

Sample curl read command:

curl --digest -u admin:1234 -H "Accept: application/json" "http://192.168.0.100/restapi/relay/online/"

true

Browse more samples

Model

stringrelay/model/
Relay model name
dot_inline_dotgraph_4.png

Retrieving the value is denied if not administrative user

This string does not support direct modification.

This string represents a value in persistent storage.

Sample uom library read command:

print(uom.dump(uom.relay.model))

"EPCR5"

Sample requests read command:

print(requests.get('http://192.168.0.100/restapi/relay/model/',auth=auth,headers=headers).json())

'EPCR5'

Browse more samples

Relay version number

stringrelay/version/
Relay core firmware version number
dot_inline_dotgraph_5.png

Retrieving the value is denied if not administrative user

This string does not support direct modification if agent identifier is not equal to relay.

Sample JS request read command:

request.get({url:"relay/version/"},function(error,response,body) {console.log(body)});

"1.8.1.0"

Sample requests read command:

print(requests.get('http://192.168.0.100/restapi/relay/version/',auth=auth,headers=headers).json())

'1.8.1.0'

Browse more samples

Outlets

arrayrelay/outlets/
Outlets controlled by the relay
dot_inline_dotgraph_6.png

This array does not support direct modification.

This array represents a value in persistent storage.

This array contains Outlet elements.

Creating elements in this collection is not supported.

Sample requests read command:

print(requests.get('http://192.168.0.100/restapi/relay/outlets/',auth=auth,headers=headers).json())

<...>

Sample curl read command:

curl --digest -u admin:1234 -H "Accept: application/json" "http://192.168.0.100/restapi/relay/outlets/"

...

Browse more samples

Outlet

objectrelay/outlets/N/
Object representing outlet state and configuration

This object contains the following items:

nameName
stateConfigured state
transient_stateTransient state
physical_statePhysical state
lockedLock state
criticalCritical
cycle_delayOutlet cycle delay, if any
cycleCycle

Sample CLI read command (note that outlet_index is a variable):

uom get "relay/outlets/${outlet_index}"

{"state":false,"critical":false,"cycle_delay":7,"locked":true,"transient_state":false,"physical_state":false,"name":"Local alarm lights"}

Sample curl write command (note that :outlet_index is a URL template argument):

curl --digest -u admin:1234 -H "X-CSRF: x" -X PUT -H "Content-type: application/json" -H "Accept: application/json" --data-binary "{\"state\":true,\"critical\":true,\"cycle_delay\":null,\"locked\":false,\"transient_state\":false,\"physical_state\":false,\"name\":\"relay #7\"}" "http://192.168.0.100/restapi/relay/outlets/:outlet_index/"

Browse more samples

See also Outlet: Name

See also Outlet: Configured state

See also Outlet: Transient state

See also Outlet: Physical state

See also Outlet: Lock state

See also Outlet: Critical

See also Outlet: Outlet cycle delay, if any

See also Outlet: Cycle

Outlet: Name

stringrelay/outlets/N/name/
User-visible outlet name
dot_inline_dotgraph_7.png

Retrieving the value is denied if any of the following is true:

Changing the value is denied if not administrative user

This string represents a value in persistent storage.

Sample CLI read command (note that outlet_index is a variable):

uom get "relay/outlets/${outlet_index}/name"

"relay #4"

Sample curl write command (note that :outlet_index is a URL template argument):

curl --digest -u admin:1234 -H "X-CSRF: x" -X PUT -H "Content-type: application/json" -H "Accept: application/json" --data-binary "\"relay #8\"" "http://192.168.0.100/restapi/relay/outlets/:outlet_index/name/"

Browse more samples

Outlet: Configured state

sum (boolean)relay/outlets/N/state/
Saved configured state of the outlet. Cannot be changed if the outlet is locked
dot_inline_dotgraph_8.png

Retrieving the value is denied if any of the following is true:

Changing the value is denied if any of the following is true:

This sum represents a value in persistent storage.

Changes to this sum may have an effect besides setting value.

This sum can assume the following values:

constant trueOnThe outlet is powered
constant falseOffThe outlet is not powered

Sample CLI write command (note that outlet_index is a variable):

uom set "relay/outlets/${outlet_index}/state" "false"

Sample CLI read command (note that outlet_index is a variable):

uom get "relay/outlets/${outlet_index}/state"

false

Browse more samples

Outlet: Transient state

sum (boolean)relay/outlets/N/transient_state/
Current expected state of the outlet. Cannot be changed if the outlet is locked
dot_inline_dotgraph_9.png

Retrieving the value is denied if any of the following is true:

Changing the value is denied if any of the following is true:

This sum can change as if by itself or indirectly because of other actions.

This sum can assume the following values:

constant trueOnThe outlet is powered
constant falseOffThe outlet is not powered

Sample requests write command (note that _outlet_index is a variable):

requests.put('http://192.168.0.100/restapi/relay/outlets/'+str(_outlet_index)+'/transient_state/',auth=auth,headers=headers,json=True)

Sample requests read command (note that _outlet_index is a variable):

print(requests.get('http://192.168.0.100/restapi/relay/outlets/'+str(_outlet_index)+'/transient_state/',auth=auth,headers=headers).json())

False

Browse more samples

Outlet: Physical state

sum (boolean)relay/outlets/N/physical_state/
Current actual state of the outlet
dot_inline_dotgraph_10.png

Retrieving the value is denied if any of the following is true:

Changing the value is denied if agent identifier is not equal to relay

This sum does not support direct modification if agent identifier is not equal to relay.

This sum can assume the following values:

constant trueOnThe outlet is powered
constant falseOffThe outlet is not powered

Sample requests read command (note that _outlet_index is a variable):

print(requests.get('http://192.168.0.100/restapi/relay/outlets/'+str(_outlet_index)+'/physical_state/',auth=auth,headers=headers).json())

True

Sample CLI read command (note that outlet_index is a variable):

uom get "relay/outlets/${outlet_index}/physical_state"

true

Browse more samples

Outlet: Lock state

sum (boolean)relay/outlets/N/locked/
Indicates whether the outlet state is locked from keypad
dot_inline_dotgraph_11.png

Retrieving the value is denied if any of the following is true:

Changing the value is denied if agent identifier is not equal to relay

This sum represents a value in persistent storage.

This sum can assume the following values:

constant trueLockedThe outlet state cannot be changed
constant falseUnlockedThe outlet state can be changed

Sample curl write command (note that :outlet_index is a URL template argument):

curl --digest -u admin:1234 -H "X-CSRF: x" -X PUT -H "Content-type: application/json" -H "Accept: application/json" --data-binary "true" "http://192.168.0.100/restapi/relay/outlets/:outlet_index/locked/"

Sample JS request read command (note that _outlet_index is a variable):

request.get({url:"relay/outlets/"+_outlet_index.toString()+"/locked/"},function(error,response,body) {console.log(body)});

true

Browse more samples

Outlet: Critical

sum (boolean)relay/outlets/N/critical/
Flag indicating whether the outlet is critical, and turning it off should ask for confirmation
dot_inline_dotgraph_12.png

Retrieving the value is denied if any of the following is true:

Changing the value is denied if not administrative user

This sum represents a value in persistent storage.

This sum can assume the following values:

constant trueCriticalConfirmation requested to change the outlet state
constant falseNoncriticalNo confirmation is needed to change the outlet state

Sample JS request read command (note that _outlet_index is a variable):

request.get({url:"relay/outlets/"+_outlet_index.toString()+"/critical/"},function(error,response,body) {console.log(body)});

true

Sample uom library read command (note that _outlet_index is a variable):

print(uom.dump(uom.relay.outlets[_outlet_index].critical))

false

Browse more samples

Outlet: Outlet cycle delay, if any

sum (optional number)relay/outlets/N/cycle_delay/
Outlet cycle delay, in seconds, if any
dot_inline_dotgraph_13.png

Retrieving the value is denied if any of the following is true:

Changing the value is denied if not administrative user

This sum represents a value in persistent storage.

This sum can assume the following values:

constant nullUse default cycle delayUse unit default cycle delay
numberOutlet cycle delayOutlet cycle delay, in secondsthe value is greater than 0

Sample JS request read command (note that _outlet_index is a variable):

request.get({url:"relay/outlets/"+_outlet_index.toString()+"/cycle_delay/"},function(error,response,body) {console.log(body)});

null

Sample uom library read command (note that _outlet_index is a variable):

print(uom.dump(uom.relay.outlets[_outlet_index].cycle_delay))

7

Browse more samples

Outlet: Cycle

callrelay/outlets/N/cycle/
Turns the outlet off, then on again after the cycle delay passes. Has no effect when the outlet is already off. Signals an error if the outlet is locked. Does not turn the outlet back on if it becomes locked
dot_inline_dotgraph_14.png

Performing the function call is denied if any of the following is true:

The call has no arguments (supply empty tuple).

The call returns the following results:

  1. Action performed: Started or No action taken

Sample JS request invocation (note that _outlet_index is a variable):

request.post({url:"relay/outlets/"+_outlet_index.toString()+"/cycle/",body:[]});

true

Sample uom library invocation (note that _outlet_index is a variable):

print(uom.dump(uom.relay.outlets[_outlet_index].cycle()))

false

Browse more samples

Action performed

sum (boolean)relay/outlets/N/cycle/results: 1/
Flag indicating whether the call affected the outlet state

This sum does not correspond to an actual resource.

This sum can assume the following values:

constant trueStartedThe outlet was on and the cycle has started
constant falseNo action takenThe outlet was off or already in a cycle, so the call had no effect

Configure multiple transient states simultaneously

callrelay/set_outlet_transient_states/
Change transient states of multiple outlets as simultaneously as possible, failing if one of them is not accessible
dot_inline_dotgraph_15.png

Performing the function call is denied if outlet access permissions is equal to false

The call accepts the following arguments:

  1. Pin transient state configurations: array of "(number,On or Off)"

The call returns the following results:

  1. Empty result: null

Sample requests invocation:

requests.post('http://192.168.0.100/restapi/relay/set_outlet_transient_states/',auth=auth,headers=headers,json=[[[5, False], [6, False]]])

(no output)

Sample JS request invocation:

request.post({url:"relay/set_outlet_transient_states/",body:[[[3,false],[4,true]]]});

(no output)

Browse more samples

Pin transient state configurations

arrayrelay/set_outlet_transient_states/arguments: 1/
Desired pin transient state configurations
dot_inline_dotgraph_16.png

The value is subject to the following constraints: 0 elements of all values of the value are distinct

This array does not correspond to an actual resource.

This array contains Pin transient state configuration elements.

See also Pin transient state configurations: Pin transient state configuration

Empty result

constant nullrelay/set_outlet_transient_states/results: 1/
No additional information available

This constant does not correspond to an actual resource.

Pin transient state configurations: Pin transient state configuration

tuplerelay/set_outlet_transient_states/arguments: 1/N/
Desired pin transient state configuration

This tuple does not correspond to an actual resource.

This tuple contains the following items:

1Outlet index
2Transient state

Outlet index

numberrelay/set_outlet_transient_states/arguments: 1/N/1/
Index of the outlet to be configured
dot_inline_dotgraph_17.png

The value is subject to the following constraints: all of the following is true:

This number does not correspond to an actual resource.

Transient state

sum (boolean)relay/set_outlet_transient_states/arguments: 1/N/2/
Desired actual state of the outlet

This sum does not correspond to an actual resource.

This sum can assume the following values:

constant trueOnThe outlet is powered
constant falseOffThe outlet is not powered

Outlet ON sequence delay

numberrelay/sequence_delay/
Time after switching an outlet on during which switching outlets on is delayed to prevent simultaneous inrush currents on power-on
dot_inline_dotgraph_18.png

The value represents time, the standard unit of which is the second (s).

The value is subject to the following constraints: the value is greater or equal to minimal ON sequence delay

Changing the value is denied if not administrative user

This number represents a value in persistent storage.

Sample uom library write command:

uom.relay.sequence_delay=5

Sample CLI write command:

uom set "relay/sequence_delay" "1"

Browse more samples

Minimal ON sequence delay

numberrelay/min_sequence_delay/
The minimal time after switching an outlet on during which switching outlets on is delayed

The value represents time, the standard unit of which is the second (s).

The value is subject to the following constraints: the value is greater or equal to 0

This number does not support direct modification.

This number represents a value in persistent storage.

Sample curl read command:

curl --digest -u admin:1234 -H "Accept: application/json" "http://192.168.0.100/restapi/relay/min_sequence_delay/"

1

Sample CLI read command:

uom get "relay/min_sequence_delay"

1

Browse more samples

Default outlet cycle delay

numberrelay/cycle_delay/
Time between switching an outlet off and turning it back on during cycling, which allows the controlled device to really power down
dot_inline_dotgraph_19.png

The value represents time, the standard unit of which is the second (s).

The value is subject to the following constraints: the value is greater than 0

Changing the value is denied if not administrative user

This number represents a value in persistent storage.

Sample CLI write command:

uom set "relay/cycle_delay" "5"

Sample curl read command:

curl --digest -u admin:1234 -H "Accept: application/json" "http://192.168.0.100/restapi/relay/cycle_delay/"

10

Browse more samples

Brown-out re-latch delay

numberrelay/relatch/
Time to wait before relatching relays on brown-out
dot_inline_dotgraph_20.png

The value represents time, the standard unit of which is the second (s).

The value is subject to the following constraints: the value is greater than 0

Retrieving the value is denied if not administrative user

Changing the value is denied if not administrative user

This number represents a value in persistent storage.

Sample CLI read command:

uom get "relay/relatch"

6

Sample curl read command:

curl --digest -u admin:1234 -H "Accept: application/json" "http://192.168.0.100/restapi/relay/relatch/"

5

Browse more samples

Recovery mode

sum (enumerated number)relay/recovery_mode/
Outlet power-off recovery state policy
dot_inline_dotgraph_21.png

Retrieving the value is denied if not administrative user

Changing the value is denied if not administrative user

This sum represents a value in persistent storage.

This sum can assume the following values:

constant 0All outlets offAll outlets remain powered off at power-up
constant 1All outlets onAll outlets are switched on in sequence during power-up
constant 2Pre-powerloss stateOutlets are returned to configured pre-powerloss state during power-up

Sample JS request read command:

request.get({url:"relay/recovery_mode/"},function(error,response,body) {console.log(body)});

1

Sample CLI read command:

uom get "relay/recovery_mode"

0

Browse more samples

Measurement interval

numberrelay/measurement_interval/
Time between meter value fetches
dot_inline_dotgraph_22.png

The value represents time, the standard unit of which is the second (s).

The value is subject to the following constraints: the value is greater than 0

Retrieving the value is denied if not administrative user

Changing the value is denied if not administrative user

This number represents a value in persistent storage.

Sample curl write command:

curl --digest -u admin:1234 -H "X-CSRF: x" -X PUT -H "Content-type: application/json" -H "Accept: application/json" --data-binary "8" "http://192.168.0.100/restapi/relay/measurement_interval/"

Sample requests read command:

print(requests.get('http://192.168.0.100/restapi/relay/measurement_interval/',auth=auth,headers=headers).json())

6

Browse more samples

Buses

arrayrelay/buses/
Buses powering the relay
dot_inline_dotgraph_23.png

This array does not support direct modification.

This array represents a value in persistent storage.

This array contains Bus elements.

Creating elements in this collection is not supported.

Sample requests read command:

print(requests.get('http://192.168.0.100/restapi/relay/buses/',auth=auth,headers=headers).json())

Sample CLI read command:

uom get "relay/buses"

Browse more samples

Bus

objectrelay/buses/N/
Object representing bus state and configuration
dot_inline_dotgraph_24.png

This object contains the following items:

outlet_indicesOutlet list
voltage_affects_outletsVoltage-affected outlets
min_voltageMinimum voltage, if any
max_voltageMaximum voltage, if any
current_affects_outletsCurrent-affected outlets
max_currentMaximum current, if any

Sample curl write command (note that :bus_index is a URL template argument):

curl --digest -u admin:1234 -H "X-CSRF: x" -X PUT -H "Content-type: application/json" -H "Accept: application/json" --data-binary "{\"outlet_indices\":[0,1,2,3],\"voltage_affects_outlets\":[1,2,3],\"max_current\":5,\"current_affects_outlets\":[0],\"max_voltage\":null,\"min_voltage\":60}" "http://192.168.0.100/restapi/relay/buses/:bus_index/"

Sample uom library write command (note that _bus_index is a variable):

uom.relay.buses[_bus_index]={current_affects_outlets={0},max_current=5,max_voltage=null,min_voltage=60,outlet_indices={0,1,2,3},voltage_affects_outlets={1,2,3}}

Browse more samples

See also Bus: Outlet list

See also Bus: Voltage-affected outlets

See also Bus: Minimum voltage, if any

See also Bus: Maximum voltage, if any

See also Bus: Current-affected outlets

See also Bus: Maximum current, if any

Bus: Outlet list

arrayrelay/buses/N/outlet_indices/
List of outlets connected to the bus

This array is composite, i.e. is modified as a whole.

This array does not support direct modification.

This array represents a value in persistent storage.

This array represents an unordered set (order of its elements doesn't matter, and each value should not be supplied more than once).

This array contains Outlet index elements.

Creating elements in this collection is not supported.

Sample uom library read command (note that _bus_index is a variable):

print(uom.dump(uom.relay.buses[_bus_index].outlet_indices))

{4,5,6,7}

Sample requests read command (note that _bus_index is a variable):

print(requests.get('http://192.168.0.100/restapi/relay/buses/'+str(_bus_index)+'/outlet_indices/',auth=auth,headers=headers).json())

[4, 5, 6, 7]

Browse more samples

Outlet index

numberrelay/buses/N/outlet_indices/N/
Index of outlet connected to the bus
dot_inline_dotgraph_25.png

The value is subject to the following constraints: all of the following is true:

This number is a part of a composite value which is modified as a whole.

This number does not support direct modification.

This number represents a value in persistent storage.

Sample requests read command (note that _bus_index and _outlet_index_index are variables):

print(requests.get('http://192.168.0.100/restapi/relay/buses/'+str(_bus_index)+'/outlet_indices/'+str(_outlet_index_index)+'/',auth=auth,headers=headers).json())

4

Sample curl read command (note that :bus_index and :outlet_index_index are URL template arguments):

curl --digest -u admin:1234 -H "Accept: application/json" "http://192.168.0.100/restapi/relay/buses/:bus_index/outlet_indices/:outlet_index_index/"

1

Browse more samples

Bus: Voltage-affected outlets

arrayrelay/buses/N/voltage_affects_outlets/
List of outlets affected by over/undervoltage
dot_inline_dotgraph_26.png

Retrieving the value is denied if not administrative user

Changing the value is denied if not administrative user

This array is composite, i.e. is modified as a whole.

This array represents a value in persistent storage.

This array represents an unordered set (order of its elements doesn't matter, and each value should not be supplied more than once).

This array contains Outlet list index elements.

Sample requests write command (note that _bus_index is a variable):

requests.put('http://192.168.0.100/restapi/relay/buses/'+str(_bus_index)+'/voltage_affects_outlets/',auth=auth,headers=headers,json=[1, 2, 3])

Sample curl outlet list index creation command (note that :bus_index is a URL template argument):

curl --digest -u admin:1234 -H "X-CSRF: x" -H "Content-type: application/json" -H "Accept: application/json" --data-binary "3" "http://192.168.0.100/restapi/relay/buses/:bus_index/voltage_affects_outlets/"

Browse more samples

Outlet list index

numberrelay/buses/N/voltage_affects_outlets/N/
Index of outlet in the bus outlet list
dot_inline_dotgraph_27.png

The value is subject to the following constraints: all of the following is true:

Retrieving the value is denied if not administrative user

Changing the value is denied if not administrative user

This number is a part of a composite value which is modified as a whole.

Sample JS request write command (note that _bus_index and _outlet_list_index_index are variables):

request.put({url:"relay/buses/"+_bus_index.toString()+"/voltage_affects_outlets/"+_outlet_list_index_index.toString()+"/",body:1});

Sample requests write command (note that _bus_index and _outlet_list_index_index are variables):

requests.put('http://192.168.0.100/restapi/relay/buses/'+str(_bus_index)+'/voltage_affects_outlets/'+str(_outlet_list_index_index)+'/',auth=auth,headers=headers,json=0)

Browse more samples

Bus: Minimum voltage, if any

sum (optional number)relay/buses/N/min_voltage/
The minimum voltage, below which the affected bus outlets are switched off, if any
dot_inline_dotgraph_28.png

Retrieving the value is denied if not administrative user

Changing the value is denied if not administrative user

This sum represents a value in persistent storage.

This sum can assume the following values:

constant nullNo minimum voltageUndervoltage doesn't affect any outlets
numberMinimum voltageThe minimum voltage, below which the affected bus outlets are switched offthe value is greater or equal to 0

Sample JS request read command (note that _bus_index is a variable):

request.get({url:"relay/buses/"+_bus_index.toString()+"/min_voltage/"},function(error,response,body) {console.log(body)});

60

Sample CLI write command (note that bus_index is a variable):

uom set "relay/buses/${bus_index}/min_voltage" "60"

Browse more samples

Bus: Maximum voltage, if any

sum (optional number)relay/buses/N/max_voltage/
The maximum voltage, above which the affected bus outlets are switched off, if any
dot_inline_dotgraph_29.png

Retrieving the value is denied if not administrative user

Changing the value is denied if not administrative user

This sum represents a value in persistent storage.

This sum can assume the following values:

constant nullNo maximum voltageOvervoltage doesn't affect any outlets
numberMaximum voltageThe maximum voltage, above which the affected bus outlets are switched offthe value is greater or equal to 0

Sample uom library read command (note that _bus_index is a variable):

print(uom.dump(uom.relay.buses[_bus_index].max_voltage))

null

Sample CLI write command (note that bus_index is a variable):

uom set "relay/buses/${bus_index}/max_voltage" "null"

Browse more samples

Bus: Current-affected outlets

arrayrelay/buses/N/current_affects_outlets/
List of outlets affected by overcurrent
dot_inline_dotgraph_30.png

Retrieving the value is denied if not administrative user

Changing the value is denied if not administrative user

This array is composite, i.e. is modified as a whole.

This array represents a value in persistent storage.

This array represents an unordered set (order of its elements doesn't matter, and each value should not be supplied more than once).

This array contains Outlet list index elements.

Sample uom library outlet list index creation command (note that _bus_index is a variable):

local composite=uom.copy(uom.relay.buses[_bus_index].current_affects_outlets)
uom.insert(composite,1,0)
uom.relay.buses[_bus_index].current_affects_outlets=composite

Sample CLI read command (note that bus_index is a variable):

uom get "relay/buses/${bus_index}/current_affects_outlets"

[0,1,2,3]

Browse more samples

Outlet list index

numberrelay/buses/N/current_affects_outlets/N/
Index of outlet in the bus outlet list
dot_inline_dotgraph_31.png

The value is subject to the following constraints: all of the following is true:

Retrieving the value is denied if not administrative user

Changing the value is denied if not administrative user

This number is a part of a composite value which is modified as a whole.

Sample curl write command (note that :bus_index and :outlet_list_index_index are URL template arguments):

curl --digest -u admin:1234 -H "X-CSRF: x" -X PUT -H "Content-type: application/json" -H "Accept: application/json" --data-binary "0" "http://192.168.0.100/restapi/relay/buses/:bus_index/current_affects_outlets/:outlet_list_index_index/"

Sample uom library read command (note that _bus_index and _outlet_list_index_index are variables):

print(uom.dump(uom.relay.buses[_bus_index].current_affects_outlets[_outlet_list_index_index]))

3

Browse more samples

Bus: Maximum current, if any

sum (optional number)relay/buses/N/max_current/
The maximum current, above which the affected bus outlets are switched off, if any
dot_inline_dotgraph_32.png

Retrieving the value is denied if not administrative user

Changing the value is denied if not administrative user

This sum represents a value in persistent storage.

This sum can assume the following values:

constant nullNo maximum currentOvercurrent doesn't affect any outlets
numberMaximum currentThe maximum current, above which the affected bus outlets are switched offthe value is greater or equal to 0

Sample CLI read command (note that bus_index is a variable):

uom get "relay/buses/${bus_index}/max_current"

14

Sample uom library write command (note that _bus_index is a variable):

uom.relay.buses[_bus_index].max_current=14

Browse more samples

Ports

maprelay/ports/
I/O ports attached to the relay
dot_inline_dotgraph_33.png

Retrieving the value is denied if not administrative user

Changing the value is denied if not administrative user

This map does not support direct modification if agent identifier is not equal to relay.

This map contains I/O port elements.

Sample JS request write command:

request.put({url:"relay/ports/",body:{"uart_gx8p":{"latest_received":{"d":"7CDEFA57"},"type":"uart","name":"uart_gx8p","accept":[],"configuration":{"char_size":"5"}},"uart_6":{"latest_received":{"d":"B4EEC5E8"},"type":"uart","name":"uart_6","accept":[],"configuration":{"parity":"S"}}}});

Sample curl write command:

curl --digest -u admin:1234 -H "X-CSRF: x" -X PUT -H "Content-type: application/json" -H "Accept: application/json" --data-binary "{\"uart_f752is7\":{\"latest_received\":{\"d\":\"4EF358\"},\"type\":\"uart\",\"name\":\"uart_f752is7\",\"accept\":[],\"configuration\":{\"char_size\":\"6\"}},\"uart_39\":{\"latest_received\":{\"d\":\"\"},\"type\":\"uart\",\"name\":\"uart_39\",\"accept\":[],\"configuration\":{\"baudrate\":\"4\",\"char_size\":\"6\",\"stop_bits\":\"1.5\"}},\"uart_0\":{\"latest_received\":{\"d\":\"173C31BA\"},\"type\":\"uart\",\"name\":\"uart_0\",\"accept\":[],\"configuration\":{\"baudrate\":\"3\",\"stop_bits\":\"1\"}},\"uart_d\":{\"latest_received\":{\"d\":\"\"},\"type\":\"uart\",\"name\":\"uart_d\",\"accept\":{\"d\":true},\"configuration\":{\"stop_bits\":\"1.5\",\"char_size\":\"6\"}}}" "http://192.168.0.100/restapi/relay/ports/"

Browse more samples

I/O port

objectrelay/ports/S/
Object representing an I/O port and its channels
dot_inline_dotgraph_34.png

This object contains the following items:

nameName
typeType
configurationConfiguration
acceptData reception mask
sendSend data
latest_receivedLatest received data
get_receive_historyGet receive history
clear_receive_historyClear received data history

Sample uom library deletion command (note that _i_o_port is a variable):

uom.remove(uom.relay.ports,_i_o_port)

Sample JS request deletion command (note that _i_o_port is a variable):

request.delete({url:"relay/ports/"+_i_o_port+"/"});

Browse more samples

See also I/O port: Name

See also I/O port: Type

See also I/O port: Configuration

See also I/O port: Data reception mask

See also I/O port: Send data

See also I/O port: Latest received data

See also I/O port: Get receive history

See also I/O port: Clear received data history

I/O port: Name

stringrelay/ports/S/name/
User-visible port name
dot_inline_dotgraph_35.png

Retrieving the value is denied if not administrative user

Changing the value is denied if not administrative user

This string represents a value in persistent storage.

Sample uom library write command (note that _i_o_port is a variable):

uom.relay.ports[_i_o_port].name="uart_tf"

Sample curl write command (note that :i_o_port is a URL template argument):

curl --digest -u admin:1234 -H "X-CSRF: x" -X PUT -H "Content-type: application/json" -H "Accept: application/json" --data-binary "\"uart_t\"" "http://192.168.0.100/restapi/relay/ports/:i_o_port/name/"

Browse more samples

I/O port: Type

stringrelay/ports/S/type/
Port type
dot_inline_dotgraph_36.png

The value is subject to the following constraints: port types[the value]

Retrieving the value is denied if not administrative user

Changing the value is denied if not administrative user

This string does not support direct modification if agent identifier is not equal to relay.

Sample uom library read command (note that _i_o_port is a variable):

print(uom.dump(uom.relay.ports[_i_o_port].type))

"uart"

Sample uom library write command (note that _i_o_port is a variable):

uom.relay.ports[_i_o_port].type="uart"

Browse more samples

I/O port: Configuration

maprelay/ports/S/configuration/
Port configuration
dot_inline_dotgraph_37.png

Retrieving the value is denied if not administrative user

Changing the value is denied if not administrative user

This map represents a value in persistent storage.

This map can change as if by itself or indirectly because of other actions.

This map contains Configuration value elements.

Sample JS request write command (note that _i_o_port is a variable):

request.put({url:"relay/ports/"+_i_o_port+"/configuration/",body:{"baudrate":"35","char_size":"8","stop_bits":"1","parity":"S"}});

Sample curl write command (note that :i_o_port is a URL template argument):

curl --digest -u admin:1234 -H "X-CSRF: x" -X PUT -H "Content-type: application/json" -H "Accept: application/json" --data-binary "{\"parity\":\"M\",\"char_size\":\"6\",\"stop_bits\":\"1.5\"}" "http://192.168.0.100/restapi/relay/ports/:i_o_port/configuration/"

Browse more samples

Configuration value

stringrelay/ports/S/configuration/S/
Value of a configuration item
dot_inline_dotgraph_38.png

The value is subject to the following constraints: the value matches port types[type].data_items[index of the value].regexp

Retrieving the value is denied if not administrative user

Changing the value is denied if not administrative user

Sample requests write command (note that _i_o_port and _configuration_value are variables):

requests.put('http://192.168.0.100/restapi/relay/ports/'+_i_o_port+'/configuration/'+_configuration_value+'/',auth=auth,headers=headers,json='N')

Sample uom library write command (note that _i_o_port and _configuration_value are variables):

uom.relay.ports[_i_o_port].configuration[_configuration_value]="899480212621"

Browse more samples

I/O port: Data reception mask

maprelay/ports/S/accept/
Mask of channels to receive data from
dot_inline_dotgraph_39.png

Retrieving the value is denied if not administrative user

Changing the value is denied if not administrative user

This map represents a value in persistent storage.

This map contains Enable elements.

Sample uom library enable creation command (note that _i_o_port is a variable):

uom.insert(uom.relay.ports[_i_o_port].accept,"d",true)

Sample requests enable creation command (note that _i_o_port is a variable):

requests.put('http://192.168.0.100/restapi/relay/ports/'+_i_o_port+'/accept/d/',auth=auth,headers=headers,json=True)

Browse more samples

Enable

constant truerelay/ports/S/accept/S/
Enable reception from this channel
dot_inline_dotgraph_40.png

The value is subject to the following constraints: port types[type].channels[index of the value]

Sample uom library deletion command (note that _i_o_port and _enable are variables):

uom.remove(uom.relay.ports[_i_o_port].accept,_enable)

Sample CLI deletion command (note that i_o_port and enable are variables):

uom remove "relay/ports/${i_o_port}/accept/${enable}"

Browse more samples

I/O port: Send data

callrelay/ports/S/send/
Write data to port's channels
dot_inline_dotgraph_41.png

Performing the function call is denied if not administrative user

The call accepts the following arguments:

  1. Data: map of "string"

The call returns the following results:

  1. Empty result: null

Sample curl invocation (note that :i_o_port is a URL template argument):

curl --digest -u admin:1234 -H "X-CSRF: x" -H "Content-type: application/json" -H "Accept: application/json" --data-binary "[]" "http://192.168.0.100/restapi/relay/ports/:i_o_port/send/"

null

Sample CLI invocation (note that i_o_port is a variable):

uom invoke "relay/ports/${i_o_port}/send"

(no output)

Browse more samples

Data

maprelay/ports/S/send/arguments: 1/
Data to write, indexed by channel

This map does not correspond to an actual resource.

This map contains Data string elements.

Data string

stringrelay/ports/S/send/arguments: 1/S/
Channel send data, hex-encoded
dot_inline_dotgraph_42.png

The value is subject to the following constraints: all of the following is true:

This string does not correspond to an actual resource.

Empty result

constant nullrelay/ports/S/send/results: 1/
No additional information available

This constant does not correspond to an actual resource.

I/O port: Latest received data

maprelay/ports/S/latest_received/
Latest data received, indexed by channel
dot_inline_dotgraph_43.png

Retrieving the value is denied if not administrative user

Changing the value is denied if not administrative user

This map is composite, i.e. is modified as a whole.

This map does not support direct modification if agent identifier is not equal to relay.

Changes to this map may have an effect besides setting value.

This map contains Data string elements.

Sample CLI data string creation command (note that i_o_port is a variable):

uom insert "relay/ports/${i_o_port}/latest_received/d" "\"A64A\""

Sample JS request data string creation command (note that _i_o_port is a variable):

request.put({url:"relay/ports/"+_i_o_port+"/latest_received/d/",body:""});

Browse more samples

Data string

stringrelay/ports/S/latest_received/S/
Channel received data, hex-encoded
dot_inline_dotgraph_44.png

The value is subject to the following constraints: all of the following is true:

Retrieving the value is denied if not administrative user

Changing the value is denied if not administrative user

This string is a part of a composite value which is modified as a whole.

This string does not support direct modification if agent identifier is not equal to relay.

Changes to this string may have an effect besides setting value.

Sample curl read command (note that :i_o_port and :data_string are URL template arguments):

curl --digest -u admin:1234 -H "Accept: application/json" "http://192.168.0.100/restapi/relay/ports/:i_o_port/latest_received/:data_string/"

"5A1F"

Sample CLI write command (note that i_o_port and data_string are variables):

uom set "relay/ports/${i_o_port}/latest_received/${data_string}" "[]"

Browse more samples

Received data element: Reception time

numberrelay/ports/S/get_receive_history/results: 1/N/1/
Timestamp of the received data

The value represents time, the standard unit of which is the second (s).

This number does not correspond to an actual resource.

Received data element: Received data

maprelay/ports/S/get_receive_history/results: 1/N/2/
Historical data received, indexed by channel

This map does not correspond to an actual resource.

This map contains Data string elements.

Data string

stringrelay/ports/S/get_receive_history/results: 1/N/2/S/
Channel received data, hex-encoded
dot_inline_dotgraph_45.png

The value is subject to the following constraints: all of the following is true:

This string does not correspond to an actual resource.

This string does not support direct modification if agent identifier is not equal to relay.

Changes to this string may have an effect besides setting value.

I/O port: Get receive history

callrelay/ports/S/get_receive_history/
Get history of data received over a specific time range
dot_inline_dotgraph_46.png

Performing the function call is denied if not administrative user

The call accepts the following arguments:

  1. Data start time, if any: Beginning of time or Data start time
  2. Data end time, if any: Now or Data end time

The call returns the following results:

  1. Data history: array of "(number,map of "string")"

Sample JS request invocation (note that _i_o_port is a variable):

request.post({url:"relay/ports/"+_i_o_port+"/get_receive_history/",body:[null,null]});

Sample requests invocation (note that _i_o_port is a variable):

print(requests.post('http://192.168.0.100/restapi/relay/ports/'+_i_o_port+'/get_receive_history/',auth=auth,headers=headers,json=[1234499818, 1234640937]).json())

Browse more samples

Data start time, if any

sum (optional number)relay/ports/S/get_receive_history/arguments: 1/
Requested timestamp of the first data element to retrieve, if any

This sum does not correspond to an actual resource.

This sum can assume the following values:

constant nullBeginning of timeReturn data starting from the oldest available
numberData start timeRequested timestamp of the first data element to retrieve

Data end time, if any

sum (optional number)relay/ports/S/get_receive_history/arguments: 2/
Requested timestamp of the last data element to retrieve, if any

This sum does not correspond to an actual resource.

This sum can assume the following values:

constant nullNowReturn data up to the most recent available
numberData end timeRequested timestamp of the last data element to retrieve

Data history

arrayrelay/ports/S/get_receive_history/results: 1/
Historical received data elements
dot_inline_dotgraph_47.png

This array does not correspond to an actual resource.

This array contains Received data element elements.

Received data element

tuplerelay/ports/S/get_receive_history/results: 1/N/
Historical data element received
dot_inline_dotgraph_48.png

This tuple does not correspond to an actual resource.

This tuple contains the following items:

1Reception time
2Received data

See also Received data element: Reception time

See also Received data element: Received data

I/O port: Clear received data history

callrelay/ports/S/clear_receive_history/
Clear the complete history of received data
dot_inline_dotgraph_49.png

Performing the function call is denied if not administrative user

The call has no arguments (supply empty tuple).

The call returns the following results:

  1. Empty result: null

Sample CLI invocation (note that i_o_port is a variable):

uom invoke "relay/ports/${i_o_port}/clear_receive_history"

(no output)

Sample curl invocation (note that :i_o_port is a URL template argument):

curl --digest -u admin:1234 -H "X-CSRF: x" -H "Content-type: application/json" -H "Accept: application/json" --data-binary "[]" "http://192.168.0.100/restapi/relay/ports/:i_o_port/clear_receive_history/"

null

Browse more samples

Empty result

constant nullrelay/ports/S/clear_receive_history/results: 1/
No additional information available

This constant does not correspond to an actual resource.

Port types

maprelay/known_port_types/
Known I/O port types
dot_inline_dotgraph_50.png

Retrieving the value is denied if not administrative user

Changing the value is denied if not administrative user

This map is composite, i.e. is modified as a whole.

This map does not support direct modification if agent identifier is not equal to relay.

This map contains I/O port type elements.

Sample curl write command:

curl --digest -u admin:1234 -H "X-CSRF: x" -X PUT -H "Content-type: application/json" -H "Accept: application/json" --data-binary "{\"uart\":{\"data_items\":{\"baudrate\":{\"name\":\"Baud rate\",\"regexp\":\"^[1-9][0-9]*$\"},\"char_size\":{\"name\":\"Character size in bits\",\"regexp\":\"^(5|6|7|8)$\"},\"stop_bits\":{\"name\":\"Number of stop bits\",\"regexp\":\"^(1|2|1\\\\.5)$\"},\"parity\":{\"name\":\"Parity setting: N for none, E for even, O for odd, M for mark, S for space\",\"regexp\":\"^(N|E|O|M|S)$\"}},\"channels\":{\"d\":\"Data\"}}}" "http://192.168.0.100/restapi/relay/known_port_types/"

Sample requests write command:

requests.put('http://192.168.0.100/restapi/relay/known_port_types/',auth=auth,headers=headers,json={'uart': {'data_items': {'baudrate': {'name': 'Baud rate', 'regexp': '^[1-9][0-9]*$'}, 'char_size': {'name': 'Character size in bits', 'regexp': '^(5|6|7|8)$'}, 'stop_bits': {'name': 'Number of stop bits', 'regexp': '^(1|2|1\\.5)$'}, 'parity': {'name': 'Parity setting: N for none, E for even, O for odd, M for mark, S for space', 'regexp': '^(N|E|O|M|S)$'}}, 'channels': {'d': 'Data'}}})

Browse more samples

I/O port type

objectrelay/known_port_types/S/
Object representing a supported type of I/O ports
dot_inline_dotgraph_51.png

This object is a part of a composite value which is modified as a whole.

This object contains the following items:

data_itemsConfiguration structure
channelsChannel map

Sample curl write command (note that :i_o_port_type is a URL template argument):

curl --digest -u admin:1234 -H "X-CSRF: x" -X PUT -H "Content-type: application/json" -H "Accept: application/json" --data-binary "{\"data_items\":{\"baudrate\":{\"name\":\"Baud rate\",\"regexp\":\"^[1-9][0-9]*$\"},\"char_size\":{\"name\":\"Character size in bits\",\"regexp\":\"^(5|6|7|8)$\"},\"stop_bits\":{\"name\":\"Number of stop bits\",\"regexp\":\"^(1|2|1\\\\.5)$\"},\"parity\":{\"name\":\"Parity setting: N for none, E for even, O for odd, M for mark, S for space\",\"regexp\":\"^(N|E|O|M|S)$\"}},\"channels\":{\"d\":\"Data\"}}" "http://192.168.0.100/restapi/relay/known_port_types/:i_o_port_type/"

Sample uom library read command (note that _i_o_port_type is a variable):

print(uom.dump(uom.relay.known_port_types[_i_o_port_type]))

Browse more samples

See also I/O port type: Configuration structure

See also I/O port type: Channel map

I/O port type: Configuration structure

maprelay/known_port_types/S/data_items/
Port configuration structure
dot_inline_dotgraph_52.png

Retrieving the value is denied if not administrative user

This map is a part of a composite value which is modified as a whole.

This map does not support direct modification.

This map contains Configuration item properties elements.

Creating elements in this collection is not supported.

Sample CLI read command (note that i_o_port_type is a variable):

uom get "relay/known_port_types/${i_o_port_type}/data_items"

Sample requests read command (note that _i_o_port_type is a variable):

print(requests.get('http://192.168.0.100/restapi/relay/known_port_types/'+_i_o_port_type+'/data_items/',auth=auth,headers=headers).json())

Browse more samples

Configuration item properties

objectrelay/known_port_types/S/data_items/S/
Properties of a configuration item

This object is a part of a composite value which is modified as a whole.

This object contains the following items:

nameName
regexpRegular expression

Sample JS request read command (note that _i_o_port_type and _configuration_item_properties are variables):

request.get({url:"relay/known_port_types/"+_i_o_port_type+"/data_items/"+_configuration_item_properties+"/"},function(error,response,body) {console.log(body)});

{"name":"Character size in bits","regexp":"^(5|6|7|8)$"}

Sample curl read command (note that :i_o_port_type and :configuration_item_properties are URL template arguments):

curl --digest -u admin:1234 -H "Accept: application/json" "http://192.168.0.100/restapi/relay/known_port_types/:i_o_port_type/data_items/:configuration_item_properties/"

{"name":"Number of stop bits","regexp":"^(1|2|1\\.5)$"}

Browse more samples

Name

stringrelay/known_port_types/S/data_items/S/name/
Name of the data item
dot_inline_dotgraph_53.png

Retrieving the value is denied if not administrative user

This string is a part of a composite value which is modified as a whole.

This string does not support direct modification.

Sample CLI read command (note that i_o_port_type and configuration_item_properties are variables):

uom get "relay/known_port_types/${i_o_port_type}/data_items/${configuration_item_properties}/name"

"Number of stop bits"

Sample uom library read command (note that _i_o_port_type and _configuration_item_properties are variables):

print(uom.dump(uom.relay.known_port_types[_i_o_port_type].data_items[_configuration_item_properties].name))

"Character size in bits"

Browse more samples

Regular expression

stringrelay/known_port_types/S/data_items/S/regexp/
Regular expression which the data item must match
dot_inline_dotgraph_54.png

Retrieving the value is denied if not administrative user

This string is a part of a composite value which is modified as a whole.

This string does not support direct modification.

Sample curl read command (note that :i_o_port_type and :configuration_item_properties are URL template arguments):

curl --digest -u admin:1234 -H "Accept: application/json" "http://192.168.0.100/restapi/relay/known_port_types/:i_o_port_type/data_items/:configuration_item_properties/regexp/"

"^(5|6|7|8)$"

Sample CLI read command (note that i_o_port_type and configuration_item_properties are variables):

uom get "relay/known_port_types/${i_o_port_type}/data_items/${configuration_item_properties}/regexp"

"^(5|6|7|8)$"

Browse more samples

I/O port type: Channel map

maprelay/known_port_types/S/channels/
Map of channels supported by the port
dot_inline_dotgraph_55.png

Retrieving the value is denied if not administrative user

This map is a part of a composite value which is modified as a whole.

This map does not support direct modification.

This map contains Channel name elements.

Creating elements in this collection is not supported.

Sample CLI read command (note that i_o_port_type is a variable):

uom get "relay/known_port_types/${i_o_port_type}/channels"

{"d":"Data"}

Sample JS request read command (note that _i_o_port_type is a variable):

request.get({url:"relay/known_port_types/"+_i_o_port_type+"/channels/"},function(error,response,body) {console.log(body)});

{"d":"Data"}

Browse more samples

Channel name

stringrelay/known_port_types/S/channels/S/
Description of the channel
dot_inline_dotgraph_56.png

Retrieving the value is denied if not administrative user

This string is a part of a composite value which is modified as a whole.

This string does not support direct modification.

Sample JS request read command (note that _i_o_port_type and _channel_name are variables):

request.get({url:"relay/known_port_types/"+_i_o_port_type+"/channels/"+_channel_name+"/"},function(error,response,body) {console.log(body)});

"Data"

Sample uom library read command (note that _i_o_port_type and _channel_name are variables):

print(uom.dump(uom.relay.known_port_types[_i_o_port_type].channels[_channel_name]))

"Data"

Browse more samples

Pins

maprelay/pins/
GPIO pins attached to the relay
dot_inline_dotgraph_57.png

Retrieving the value is denied if not administrative user

Changing the value is denied if not administrative user

This map does not support direct modification if agent identifier is not equal to relay.

This map contains GPIO pin elements.

Sample curl write command:

curl --digest -u admin:1234 -H "X-CSRF: x" -X PUT -H "Content-type: application/json" -H "Accept: application/json" --data-binary "..." "http://192.168.0.100/restapi/relay/pins/"

Sample uom library read command:

print(uom.dump(uom.relay.pins))

{dout31={drive_logic_mapping={"Z","Z","Z","Z"},input_bits=1,latest_input_value=null,level_bits=0,level_driver="xeluw78",mode_bits=16,mode_driver=true,name="dout31"}}

Browse more samples

GPIO pin

objectrelay/pins/S/
Object representing state and configuration of a GPIO pin
dot_inline_dotgraph_58.png

This object contains the following items:

nameName
input_bitsInput bits
mode_bitsMode bits
level_bitsLevel bits
mode_driverMode driver
level_driverLevel driver
drive_logic_mappingPin drive mapping
latest_input_valueLatest input value, if any
configure_input_trackingConfigure tracking
configure_mode_driverConfigure mode driver
configure_level_driverConfigure level driver

Sample curl write command (note that :gpio_pin is a URL template argument):

curl --digest -u admin:1234 -H "X-CSRF: x" -X PUT -H "Content-type: application/json" -H "Accept: application/json" --data-binary "{\"level_bits\":0,\"latest_input_value\":null,\"name\":\"ain9\",\"drive_logic_mapping\":[\"Z\",\"H\",\"0\",\"1\"],\"mode_driver\":\"sremwl74\",\"mode_bits\":0,\"level_driver\":true,\"input_bits\":0}" "http://192.168.0.100/restapi/relay/pins/:gpio_pin/"

Sample JS request write command (note that _gpio_pin is a variable):

request.put({url:"relay/pins/"+_gpio_pin+"/",body:{"level_bits":16,"latest_input_value":null,"name":"dout5","drive_logic_mapping":["Z","Z","0","0"],"mode_driver":true,"mode_bits":2,"level_driver":true,"input_bits":1}});

Browse more samples

See also GPIO pin: Name

See also GPIO pin: Input bits

See also GPIO pin: Mode bits

See also GPIO pin: Level bits

See also GPIO pin: Mode driver

See also GPIO pin: Level driver

See also GPIO pin: Pin drive mapping

See also GPIO pin: Latest input value, if any

See also GPIO pin: Configure tracking

See also GPIO pin: Configure mode driver

See also GPIO pin: Configure level driver

GPIO pin: Name

stringrelay/pins/S/name/
User-visible pin name
dot_inline_dotgraph_59.png

Retrieving the value is denied if not administrative user

Changing the value is denied if not administrative user

This string represents a value in persistent storage.

Sample uom library read command (note that _gpio_pin is a variable):

print(uom.dump(uom.relay.pins[_gpio_pin].name))

"dio6"

Sample requests write command (note that _gpio_pin is a variable):

requests.put('http://192.168.0.100/restapi/relay/pins/'+_gpio_pin+'/name/',auth=auth,headers=headers,json='aio2')

Browse more samples

GPIO pin: Input bits

numberrelay/pins/S/input_bits/
Number of bits in pin input value
dot_inline_dotgraph_60.png

The value represents count, the standard unit of which is the time (times).

The value is subject to the following constraints: all of the following is true:

Retrieving the value is denied if not administrative user

This number does not support direct modification if agent identifier is not equal to relay.

This number represents a value in persistent storage.

Sample curl write command (note that :gpio_pin is a URL template argument):

curl --digest -u admin:1234 -H "X-CSRF: x" -X PUT -H "Content-type: application/json" -H "Accept: application/json" --data-binary "16" "http://192.168.0.100/restapi/relay/pins/:gpio_pin/input_bits/"

Sample requests read command (note that _gpio_pin is a variable):

print(requests.get('http://192.168.0.100/restapi/relay/pins/'+_gpio_pin+'/input_bits/',auth=auth,headers=headers).json())

4

Browse more samples

GPIO pin: Mode bits

numberrelay/pins/S/mode_bits/
Number of bits in pin mode value
dot_inline_dotgraph_61.png

The value represents count, the standard unit of which is the time (times).

The value is subject to the following constraints: all of the following is true:

Retrieving the value is denied if not administrative user

This number does not support direct modification if agent identifier is not equal to relay.

This number represents a value in persistent storage.

Sample requests read command (note that _gpio_pin is a variable):

print(requests.get('http://192.168.0.100/restapi/relay/pins/'+_gpio_pin+'/mode_bits/',auth=auth,headers=headers).json())

16

Sample JS request read command (note that _gpio_pin is a variable):

request.get({url:"relay/pins/"+_gpio_pin+"/mode_bits/"},function(error,response,body) {console.log(body)});

0

Browse more samples

GPIO pin: Level bits

numberrelay/pins/S/level_bits/
Number of bits in pin level value
dot_inline_dotgraph_62.png

The value represents count, the standard unit of which is the time (times).

The value is subject to the following constraints: all of the following is true:

Retrieving the value is denied if not administrative user

This number does not support direct modification if agent identifier is not equal to relay.

This number represents a value in persistent storage.

Sample curl write command (note that :gpio_pin is a URL template argument):

curl --digest -u admin:1234 -H "X-CSRF: x" -X PUT -H "Content-type: application/json" -H "Accept: application/json" --data-binary "0" "http://192.168.0.100/restapi/relay/pins/:gpio_pin/level_bits/"

Sample curl read command (note that :gpio_pin is a URL template argument):

curl --digest -u admin:1234 -H "Accept: application/json" "http://192.168.0.100/restapi/relay/pins/:gpio_pin/level_bits/"

0

Browse more samples

GPIO pin: Mode driver

sum (variant)relay/pins/S/mode_driver/
Configured signal driving the pin's mode (input or output)
dot_inline_dotgraph_63.png

Retrieving the value is denied if not administrative user

Changing the value is denied if not administrative user

This sum does not support direct modification if all of the following is true:

This sum represents a value in persistent storage.

This sum can change as if by itself or indirectly because of other actions.

This sum can assume the following values:

constant trueActiveThe pin is as active (output) as possible
constant falseTristatedThe pin is as inactive (input, hi-Z state) as possible
stringNet nameName of the net providing the driving value

all of the following is true:

stringInvalid net placeholderA placeholder for a net that has been deleted or renamed (and always has the logical value false)the value matches ^​net_deleted:.*$

Sample uom library read command (note that _gpio_pin is a variable):

print(uom.dump(uom.relay.pins[_gpio_pin].mode_driver))

"eqivu1"

Sample curl write command (note that :gpio_pin is a URL template argument):

curl --digest -u admin:1234 -H "X-CSRF: x" -X PUT -H "Content-type: application/json" -H "Accept: application/json" --data-binary "true" "http://192.168.0.100/restapi/relay/pins/:gpio_pin/mode_driver/"

Browse more samples

GPIO pin: Level driver

sum (variant)relay/pins/S/level_driver/
Configured signal driving the pin's output level
dot_inline_dotgraph_64.png

Retrieving the value is denied if not administrative user

Changing the value is denied if not administrative user

This sum does not support direct modification if all of the following is true:

This sum represents a value in persistent storage.

This sum can change as if by itself or indirectly because of other actions.

This sum can assume the following values:

constant trueHighThe pin is driven as high as possible given the current mode
constant falseLowThe pin is driven as low as possible given the current mode
stringNet nameName of the net providing the driving value

all of the following is true:

stringInvalid net placeholderA placeholder for a net that has been deleted or renamed (and always has the logical value false)the value matches ^​net_deleted:.*$

Sample requests write command (note that _gpio_pin is a variable):

requests.put('http://192.168.0.100/restapi/relay/pins/'+_gpio_pin+'/level_driver/',auth=auth,headers=headers,json=True)

Sample requests read command (note that _gpio_pin is a variable):

print(requests.get('http://192.168.0.100/restapi/relay/pins/'+_gpio_pin+'/level_driver/',auth=auth,headers=headers).json())

False

Browse more samples

GPIO pin: Pin drive mapping

tuplerelay/pins/S/drive_logic_mapping/
Mapping of pin mode and level combinations to resulting pin IEEE1164 logic levels
dot_inline_dotgraph_65.png

Retrieving the value is denied if not administrative user

This tuple is composite, i.e. is modified as a whole.

This tuple does not support direct modification if agent identifier is not equal to relay.

This tuple represents a value in persistent storage.

This tuple contains the following items:

1Low mode, low level
2Low mode, high level
3High mode, low level
4High mode, high level

Sample uom library write command (note that _gpio_pin is a variable):

uom.relay.pins[_gpio_pin].drive_logic_mapping={"Z","Z","0","0"}

Sample requests write command (note that _gpio_pin is a variable):

requests.put('http://192.168.0.100/restapi/relay/pins/'+_gpio_pin+'/drive_logic_mapping/',auth=auth,headers=headers,json=['Z', 'Z', 'Z', 'Z'])

Browse more samples

Low mode, low level

sum (enumerated string)relay/pins/S/drive_logic_mapping/1/
IEEE1164 logic level when pin is in the minimum mode, minimum level configuration
dot_inline_dotgraph_66.png

Retrieving the value is denied if not administrative user

This sum is a part of a composite value which is modified as a whole.

This sum does not support direct modification if agent identifier is not equal to relay.

This sum represents a value in persistent storage.

This sum can assume the following values:

constant "0"Forcing 0Strong low signal as good as ground
constant "1"Forcing 1Strong high signal as good as power supply voltage
constant "L"Weak 0Low signal which is logically 0 but weak (e.g. from a pull-down resistor)
constant "H"Weak 1High signal which is logically 1 but weak (e.g. from a pull-up resistor)
constant "Z"High impedancePin pulled neither up nor down, signal defined by external circuitry

Sample CLI read command (note that gpio_pin is a variable):

uom get "relay/pins/${gpio_pin}/drive_logic_mapping/0"

"0"

Sample CLI write command (note that gpio_pin is a variable):

uom set "relay/pins/${gpio_pin}/drive_logic_mapping/0" "\"Z\""

Browse more samples

Low mode, high level

sum (enumerated string)relay/pins/S/drive_logic_mapping/2/
IEEE1164 logic level when pin is in the minimum mode, maximum level configuration
dot_inline_dotgraph_67.png

Retrieving the value is denied if not administrative user

This sum is a part of a composite value which is modified as a whole.

This sum does not support direct modification if agent identifier is not equal to relay.

This sum represents a value in persistent storage.

This sum can assume the following values:

constant "0"Forcing 0Strong low signal as good as ground
constant "1"Forcing 1Strong high signal as good as power supply voltage
constant "L"Weak 0Low signal which is logically 0 but weak (e.g. from a pull-down resistor)
constant "H"Weak 1High signal which is logically 1 but weak (e.g. from a pull-up resistor)
constant "Z"High impedancePin pulled neither up nor down, signal defined by external circuitry

Sample curl read command (note that :gpio_pin is a URL template argument):

curl --digest -u admin:1234 -H "Accept: application/json" "http://192.168.0.100/restapi/relay/pins/:gpio_pin/drive_logic_mapping/1/"

"Z"

Sample requests read command (note that _gpio_pin is a variable):

print(requests.get('http://192.168.0.100/restapi/relay/pins/'+_gpio_pin+'/drive_logic_mapping/1/',auth=auth,headers=headers).json())

'1'

Browse more samples

High mode, low level

sum (enumerated string)relay/pins/S/drive_logic_mapping/3/
IEEE1164 logic level when pin is in the maximum mode, minimum level configuration
dot_inline_dotgraph_68.png

Retrieving the value is denied if not administrative user

This sum is a part of a composite value which is modified as a whole.

This sum does not support direct modification if agent identifier is not equal to relay.

This sum represents a value in persistent storage.

This sum can assume the following values:

constant "0"Forcing 0Strong low signal as good as ground
constant "1"Forcing 1Strong high signal as good as power supply voltage
constant "L"Weak 0Low signal which is logically 0 but weak (e.g. from a pull-down resistor)
constant "H"Weak 1High signal which is logically 1 but weak (e.g. from a pull-up resistor)
constant "Z"High impedancePin pulled neither up nor down, signal defined by external circuitry

Sample uom library write command (note that _gpio_pin is a variable):

uom.relay.pins[_gpio_pin].drive_logic_mapping[3]="0"

Sample curl write command (note that :gpio_pin is a URL template argument):

curl --digest -u admin:1234 -H "X-CSRF: x" -X PUT -H "Content-type: application/json" -H "Accept: application/json" --data-binary "\"0\"" "http://192.168.0.100/restapi/relay/pins/:gpio_pin/drive_logic_mapping/2/"

Browse more samples

High mode, high level

sum (enumerated string)relay/pins/S/drive_logic_mapping/4/
IEEE1164 logic level when pin is in the maximum mode, maximum level configuration
dot_inline_dotgraph_69.png

Retrieving the value is denied if not administrative user

This sum is a part of a composite value which is modified as a whole.

This sum does not support direct modification if agent identifier is not equal to relay.

This sum represents a value in persistent storage.

This sum can assume the following values:

constant "0"Forcing 0Strong low signal as good as ground
constant "1"Forcing 1Strong high signal as good as power supply voltage
constant "L"Weak 0Low signal which is logically 0 but weak (e.g. from a pull-down resistor)
constant "H"Weak 1High signal which is logically 1 but weak (e.g. from a pull-up resistor)
constant "Z"High impedancePin pulled neither up nor down, signal defined by external circuitry

Sample JS request read command (note that _gpio_pin is a variable):

request.get({url:"relay/pins/"+_gpio_pin+"/drive_logic_mapping/3/"},function(error,response,body) {console.log(body)});

"0"

Sample CLI write command (note that gpio_pin is a variable):

uom set "relay/pins/${gpio_pin}/drive_logic_mapping/3" "\"0\""

Browse more samples

GPIO pin: Latest input value, if any

sum (optional number)relay/pins/S/latest_input_value/
Latest pin input value as reported by a net, if any
dot_inline_dotgraph_70.png

Retrieving the value is denied if not administrative user

Changing the value is denied if not administrative user

Using the sum as a field for indexing into the grandparent collection is denied

This sum does not support direct modification if agent identifier is not equal to relay.

This sum can change as if by itself or indirectly because of other actions.

This sum can assume the following values:

constant nullNo latest input valueInput value not monitored so no latest value available
numberLatest input valueLatest pin input value as reported by a net

Sample uom library write command (note that _gpio_pin is a variable):

uom.relay.pins[_gpio_pin].latest_input_value=null

Sample JS request write command (note that _gpio_pin is a variable):

request.put({url:"relay/pins/"+_gpio_pin+"/latest_input_value/",body:null});

Browse more samples

Net changes: Removed nets

arrayrelay/pins/S/configure_input_tracking/results: 1/1/
List of nets removed to fulfill the configuration result

This array does not correspond to an actual resource.

This array contains Removed net elements.

Removed net

stringrelay/pins/S/configure_input_tracking/results: 1/1/N/
Identifier of the removed net

This string does not correspond to an actual resource.

Net changes: Added nets

arrayrelay/pins/S/configure_input_tracking/results: 1/2/
List of nets added to fulfill the configuration result

This array does not correspond to an actual resource.

This array contains Added net elements.

Added net

stringrelay/pins/S/configure_input_tracking/results: 1/2/N/
Identifier of the added net

This string does not correspond to an actual resource.

GPIO pin: Configure tracking

callrelay/pins/S/configure_input_tracking/
Set method of reporting the pin's value
dot_inline_dotgraph_71.png

Performing the function call is denied if any of the following is true:

The call accepts the following arguments:

  1. Pin tracking configuration mode: None, Pull or Push

The call returns the following results:

  1. Net changes: (array of "string",array of "string")

Sample CLI invocation (note that gpio_pin is a variable):

uom invoke "relay/pins/${gpio_pin}/configure_input_tracking" "\"pull\""

["jv95"]

Sample uom library invocation (note that _gpio_pin is a variable):

print(uom.dump(uom.relay.pins[_gpio_pin].configure_input_tracking("push")))

{"wiocfqffqt9"}

Browse more samples

Pin tracking configuration mode

sum (optional enumerated string)relay/pins/S/configure_input_tracking/arguments: 1/
Desired pin tracking configuration mode

This sum does not correspond to an actual resource.

This sum can assume the following values:

constant nullNoneLatest pin value is not updated
constant "pull"PullLatest pin value is updated periodically
constant "push"PushLatest pin value is reported when changed

Net changes

tuplerelay/pins/S/configure_input_tracking/results: 1/
Changes in net structure performed by the call
dot_inline_dotgraph_72.png

This tuple does not correspond to an actual resource.

This tuple contains the following items:

1Removed nets
2Added nets

See also Net changes: Removed nets

See also Net changes: Added nets

Net changes: Removed nets

arrayrelay/pins/S/configure_mode_driver/results: 1/1/
List of nets removed to fulfill the configuration result

This array does not correspond to an actual resource.

This array contains Removed net elements.

Removed net

stringrelay/pins/S/configure_mode_driver/results: 1/1/N/
Identifier of the removed net

This string does not correspond to an actual resource.

Net changes: Added nets

arrayrelay/pins/S/configure_mode_driver/results: 1/2/
List of nets added to fulfill the configuration result

This array does not correspond to an actual resource.

This array contains Added net elements.

Added net

stringrelay/pins/S/configure_mode_driver/results: 1/2/N/
Identifier of the added net

This string does not correspond to an actual resource.

GPIO pin: Configure mode driver

callrelay/pins/S/configure_mode_driver/
Set pin's mode (input or output) driver
dot_inline_dotgraph_73.png

Performing the function call is denied if any of the following is true:

The call accepts the following arguments:

  1. Desired mode driver: High, Low or Net code

The call returns the following results:

  1. Net changes: (array of "string",array of "string")

Sample uom library invocation (note that _gpio_pin is a variable):

print(uom.dump(uom.relay.pins[_gpio_pin].configure_mode_driver(true)))

{}

Sample JS request invocation (note that _gpio_pin is a variable):

request.post({url:"relay/pins/"+_gpio_pin+"/configure_mode_driver/",body:[true]});

[]

Browse more samples

Desired mode driver

sum (variant)relay/pins/S/configure_mode_driver/arguments: 1/
Desired signal driving the pin's mode (input or output)

This sum does not correspond to an actual resource.

This sum can assume the following values:

constant trueHighThe pin is driven as high as possible given the current mode
constant falseLowThe pin is driven as low as possible given the current mode
stringNet codeCode of the net providing the driving value

Net changes

tuplerelay/pins/S/configure_mode_driver/results: 1/
Changes in net structure performed by the call
dot_inline_dotgraph_74.png

This tuple does not correspond to an actual resource.

This tuple contains the following items:

1Removed nets
2Added nets

See also Net changes: Removed nets

See also Net changes: Added nets

Net changes: Removed nets

arrayrelay/pins/S/configure_level_driver/results: 1/1/
List of nets removed to fulfill the configuration result

This array does not correspond to an actual resource.

This array contains Removed net elements.

Removed net

stringrelay/pins/S/configure_level_driver/results: 1/1/N/
Identifier of the removed net

This string does not correspond to an actual resource.

Net changes: Added nets

arrayrelay/pins/S/configure_level_driver/results: 1/2/
List of nets added to fulfill the configuration result

This array does not correspond to an actual resource.

This array contains Added net elements.

Added net

stringrelay/pins/S/configure_level_driver/results: 1/2/N/
Identifier of the added net

This string does not correspond to an actual resource.

GPIO pin: Configure level driver

callrelay/pins/S/configure_level_driver/
Set pin's output level driver
dot_inline_dotgraph_75.png

Performing the function call is denied if any of the following is true:

The call accepts the following arguments:

  1. Desired level driver: High, Low or Net code

The call returns the following results:

  1. Net changes: (array of "string",array of "string")

Sample uom library invocation (note that _gpio_pin is a variable):

print(uom.dump(uom.relay.pins[_gpio_pin].configure_level_driver("qwc42")))

{"mp65"}

Sample curl invocation (note that :gpio_pin is a URL template argument):

curl --digest -u admin:1234 -H "X-CSRF: x" -H "Content-type: application/json" -H "Accept: application/json" --data-binary "[true]" "http://192.168.0.100/restapi/relay/pins/:gpio_pin/configure_level_driver/"

[]

Browse more samples

Desired level driver

sum (variant)relay/pins/S/configure_level_driver/arguments: 1/
Desired signal driving the pin's output level

This sum does not correspond to an actual resource.

This sum can assume the following values:

constant trueHighThe pin is driven as high as possible given the current mode
constant falseLowThe pin is driven as low as possible given the current mode
stringNet codeCode of the net providing the driving value

Net changes

tuplerelay/pins/S/configure_level_driver/results: 1/
Changes in net structure performed by the call
dot_inline_dotgraph_76.png

This tuple does not correspond to an actual resource.

This tuple contains the following items:

1Removed nets
2Added nets

See also Net changes: Removed nets

See also Net changes: Added nets

Nets

maprelay/nets/
Nets controlling the GPIO pins
dot_inline_dotgraph_77.png

Retrieving the value is denied if not administrative user

Changing the value is denied if not administrative user

This map represents a value in persistent storage.

This map contains GPIO net elements.

Sample curl write command:

curl --digest -u admin:1234 -H "X-CSRF: x" -X PUT -H "Content-type: application/json" -H "Accept: application/json" --data-binary "{\"m9\":{\"name\":\"m9\",\"scale\":1,\"tracking\":null,\"expression\":true}}" "http://192.168.0.100/restapi/relay/nets/"

Sample JS request GPIO net creation command:

request.put({url:"relay/nets/lef86/",body:{"name":"lef86","tracking":"pull","expression":false}});

Browse more samples

See also Nets: GPIO net

Nets: GPIO net

objectrelay/nets/S/
Object representing a state of a GPIO net signal

This object contains the following items:

nameName
expressionExpression
trackingTracking
latest_valueLatest value
scaleValue scale factor

Sample requests write command (note that _gpio_net is a variable):

requests.put('http://192.168.0.100/restapi/relay/nets/'+_gpio_net+'/',auth=auth,headers=headers,json={'name': 'bxjli7', 'tracking': 'pull', 'expression': '(not ((not anet["f28"]) and apin["dout71"]))'})

Sample uom library read command (note that _gpio_net is a variable):

print(uom.dump(uom.relay.nets[_gpio_net]))

{expression="(not pin[\"aout98\"])",latest_value=2,name="uzbrss43",scale=4,tracking="pull"}

Browse more samples

Name

stringrelay/nets/S/name/
User-visible net name
dot_inline_dotgraph_78.png

Retrieving the value is denied if not administrative user

Changing the value is denied if not administrative user

This string represents a value in persistent storage.

Sample curl write command (note that :gpio_net is a URL template argument):

curl --digest -u admin:1234 -H "X-CSRF: x" -X PUT -H "Content-type: application/json" -H "Accept: application/json" --data-binary "\"l79\"" "http://192.168.0.100/restapi/relay/nets/:gpio_net/name/"

Sample JS request read command (note that _gpio_net is a variable):

request.get({url:"relay/nets/"+_gpio_net+"/name/"},function(error,response,body) {console.log(body)});

"ws51"

Browse more samples

Expression

stringrelay/nets/S/expression/
Expression governing the net's value
dot_inline_dotgraph_79.png

The value contains Lua source (has native MIME type text/x-lua).

Retrieving the value is denied if not administrative user

Changing the value is denied if not administrative user

This string represents a value in persistent storage.

Sample curl write command (note that :gpio_net is a URL template argument):

curl --digest -u admin:1234 -H "X-CSRF: x" -X PUT -H "Content-type: application/json" -H "Accept: application/json" --data-binary "\"net[\\\"gyu64\\\"]\"" "http://192.168.0.100/restapi/relay/nets/:gpio_net/expression/"

Sample JS request write command (note that _gpio_net is a variable):

request.put({url:"relay/nets/"+_gpio_net+"/expression/",body:false});

Browse more samples

Tracking

sum (optional enumerated string)relay/nets/S/tracking/
Method of reporting the net's value
dot_inline_dotgraph_80.png

Retrieving the value is denied if not administrative user

Changing the value is denied if not administrative user

This sum represents a value in persistent storage.

This sum can assume the following values:

constant nullNoneNet value is not updated
constant "pull"PullNet value is updated periodically
constant "push"PushNet value is reported when changed

Sample CLI write command (note that gpio_net is a variable):

uom set "relay/nets/${gpio_net}/tracking" "\"pull\""

Sample requests read command (note that _gpio_net is a variable):

print(requests.get('http://192.168.0.100/restapi/relay/nets/'+_gpio_net+'/tracking/',auth=auth,headers=headers).json())

'push'

Browse more samples

Latest value

numberrelay/nets/S/latest_value/
Latest net value
dot_inline_dotgraph_81.png

The value is unconditionally set to 0 on creation and doesn't have to be supplied (if it is, it must match)

Retrieving the value is denied if not administrative user

Changing the value is denied if not administrative user

Using the number as a field for indexing into the grandparent collection is denied

This number does not support direct modification if agent identifier is not equal to relay.

Sample CLI write command (note that gpio_net is a variable):

uom set "relay/nets/${gpio_net}/latest_value" "6"

Sample requests write command (note that _gpio_net is a variable):

requests.put('http://192.168.0.100/restapi/relay/nets/'+_gpio_net+'/latest_value/',auth=auth,headers=headers,json=13)

Browse more samples

Value scale factor

numberrelay/nets/S/scale/
The factor by which the latest value must be divided to obtain the corresponding numeric value
dot_inline_dotgraph_82.png

The value is unconditionally set to 1 on creation and doesn't have to be supplied (if it is, it must match)

Retrieving the value is denied if not administrative user

Changing the value is denied if not administrative user

Using the number as a field for indexing into the grandparent collection is denied

This number does not support direct modification if agent identifier is not equal to relay.

Sample requests write command (note that _gpio_net is a variable):

requests.put('http://192.168.0.100/restapi/relay/nets/'+_gpio_net+'/scale/',auth=auth,headers=headers,json=256)

Sample requests read command (note that _gpio_net is a variable):

print(requests.get('http://192.168.0.100/restapi/relay/nets/'+_gpio_net+'/scale/',auth=auth,headers=headers).json())

65536

Browse more samples

Net poll interval

numberrelay/net_poll_interval/
Time between net value fetches (for nets configured for periodic polling)
dot_inline_dotgraph_83.png

The value represents time, the standard unit of which is the second (s).

The value is subject to the following constraints: the value is greater than 0

Retrieving the value is denied if not administrative user

Changing the value is denied if not administrative user

This number represents a value in persistent storage.

Sample requests write command:

requests.put('http://192.168.0.100/restapi/relay/net_poll_interval/',auth=auth,headers=headers,json=1)

Sample uom library read command:

print(uom.dump(uom.relay.net_poll_interval))

3

Browse more samples

GPIO scan interval, if any

sum (number)relay/gpio_scan_interval/
Target time between GPIO scans, if any
dot_inline_dotgraph_84.png

Retrieving the value is denied if not administrative user

Changing the value is denied if not administrative user

This sum represents a value in persistent storage.

This sum can assume the following values:

constant 0Asynchronous GPIO scanningGPIO scans occur not at a particular interval, but rather as often as possible
numberGPIO scan intervalTarget time between GPIO scansthe value is greater than 0

Sample curl read command:

curl --digest -u admin:1234 -H "Accept: application/json" "http://192.168.0.100/restapi/relay/gpio_scan_interval/"

0.0025

Sample requests write command:

requests.put('http://192.168.0.100/restapi/relay/gpio_scan_interval/',auth=auth,headers=headers,json=0.0125)

Browse more samples

GPIO scan interval catch-up limit

numberrelay/scan_catch_up_limit/
The maximum number of end-to-end-consecutive scans to catch up with the desired interval (has no effect if GPIO scanning is asynchronous)
dot_inline_dotgraph_85.png

The value represents count, the standard unit of which is the time (times).

The value is subject to the following constraints: all of the following is true:

Retrieving the value is denied if not administrative user

Changing the value is denied if not administrative user

This number represents a value in persistent storage.

Sample requests write command:

requests.put('http://192.168.0.100/restapi/relay/scan_catch_up_limit/',auth=auth,headers=headers,json=9)

Sample CLI read command:

uom get "relay/scan_catch_up_limit"

7

Browse more samples

Enable measurement-driven outlet control

sum (boolean)relay/fuses_enabled/
Allow use of measurement results to conditionally switch off outlets, enabling safety shutdown and correct power loss operation
dot_inline_dotgraph_86.png

Retrieving the value is denied if not administrative user

Changing the value is denied if not administrative user

This sum represents a value in persistent storage.

This sum is expected to be visible to advanced users only.

This sum can assume the following values:

constant trueEnabledThe feature is enabled
constant falseDisabledThe feature is disabled

Sample uom library write command:

uom.relay.fuses_enabled=false

Sample JS request read command:

request.get({url:"relay/fuses_enabled/"},function(error,response,body) {console.log(body)});

true

Browse more samples

Minimum relay voltage, if any

sum (optional number)relay/min_relay_voltage/
Minimum relay voltage below which it cannot drive outlets and they must be considered off, if any
dot_inline_dotgraph_87.png

Retrieving the value is denied if not administrative user

Changing the value is denied if not administrative user

This sum represents a value in persistent storage.

This sum is expected to be visible to advanced users only.

This sum can assume the following values:

constant nullDisable relay undervoltage handlingIgnore relay undervoltage. This is unsafe!
numberMinimum relay voltageMinimum relay voltage below which it cannot drive outlets and they must be considered offthe value is greater than 0

Sample requests write command:

requests.put('http://192.168.0.100/restapi/relay/min_relay_voltage/',auth=auth,headers=headers,json=8)

Sample CLI write command:

uom set "relay/min_relay_voltage" "8"

Browse more samples

Measurement-driven relatch timeout, if any

sum (optional number)relay/fuse_relatch/
Time to hold outlets off after switching them off due to measurement limits being hit, if any
dot_inline_dotgraph_88.png

Retrieving the value is denied if not administrative user

Changing the value is denied if not administrative user

This sum represents a value in persistent storage.

This sum can assume the following values:

constant nullLatch OFFSwitch outlets off until the user takes action
numberMeasurement-driven relatch timeoutTime to hold outlets off after switching them off due to measurement limits being hitthe value is greater than 0

Sample curl read command:

curl --digest -u admin:1234 -H "Accept: application/json" "http://192.168.0.100/restapi/relay/fuse_relatch/"

null

Sample uom library write command:

uom.relay.fuse_relatch=8

Browse more samples

Keypad state

sum (boolean)relay/keypad_enabled/
Flag indicating whether keypad is enabled or disabled
dot_inline_dotgraph_89.png

Retrieving the value is denied if not administrative user

Changing the value is denied if not administrative user

This sum represents a value in persistent storage.

This sum can assume the following values:

constant trueEnabledThe feature is enabled
constant falseDisabledThe feature is disabled

Sample JS request read command:

request.get({url:"relay/keypad_enabled/"},function(error,response,body) {console.log(body)});

false

Sample curl read command:

curl --digest -u admin:1234 -H "Accept: application/json" "http://192.168.0.100/restapi/relay/keypad_enabled/"

true

Browse more samples

LCD all-caps filter

sum (boolean)relay/all_caps/
Flag enabling all-caps display of text
dot_inline_dotgraph_90.png

Retrieving the value is denied if not administrative user

Changing the value is denied if not administrative user

This sum represents a value in persistent storage.

This sum can assume the following values:

constant trueAll CAPSAll LCD strings are displayed in capital letters
constant falseStandard modeLCD strings are displayed as configured without capitalization

Sample uom library write command:

uom.relay.all_caps=false

Sample JS request write command:

request.put({url:"relay/all_caps/",body:false});

Browse more samples

Beep sequence

stringrelay/beep_sequence/
Signal sequence for beeper activation
dot_inline_dotgraph_91.png

The value is subject to the following constraints: the value matches ^[01. _-]*$

Retrieving the value is denied if not administrative user

Changing the value is denied if not administrative user

Sample requests read command:

print(requests.get('http://192.168.0.100/restapi/relay/beep_sequence/',auth=auth,headers=headers).json())

'0'

Sample CLI read command:

uom get "relay/beep_sequence"

"0"

Browse more samples

Backlight sequence

stringrelay/backlight_sequence/
Signal sequence for backlight blinking
dot_inline_dotgraph_92.png

The value is subject to the following constraints: the value matches ^[01. _-]*$

Retrieving the value is denied if not administrative user

Changing the value is denied if not administrative user

Sample CLI read command:

uom get "relay/backlight_sequence"

"0"

Sample JS request read command:

request.get({url:"relay/backlight_sequence/"},function(error,response,body) {console.log(body)});

"0"

Browse more samples

LCD column count

numberrelay/lcd_columns/
Number of LCD columns

The value represents count, the standard unit of which is the time (times).

The value is subject to the following constraints: all of the following is true:

This number does not support direct modification.

This number represents a value in persistent storage.

Sample curl read command:

curl --digest -u admin:1234 -H "Accept: application/json" "http://192.168.0.100/restapi/relay/lcd_columns/"

16

Sample JS request read command:

request.get({url:"relay/lcd_columns/"},function(error,response,body) {console.log(body)});

16

Browse more samples

LCD row count

numberrelay/lcd_rows/
Number of LCD rows

The value represents count, the standard unit of which is the time (times).

The value is subject to the following constraints: all of the following is true:

This number does not support direct modification.

This number represents a value in persistent storage.

Sample requests read command:

print(requests.get('http://192.168.0.100/restapi/relay/lcd_rows/',auth=auth,headers=headers).json())

2

Sample CLI read command:

uom get "relay/lcd_rows"

2

Browse more samples

User LCD lines

arrayrelay/user_lines/
Array of strings to override LCD lines with, from top to bottom
dot_inline_dotgraph_93.png

The value is subject to the following constraints: length of the value is equal to LCD row count

Retrieving the value is denied if not administrative user

Changing the value is denied if not administrative user

This array contains User LCD line, if any elements.

Sample requests user LCD line, if any creation command:

requests.post('http://192.168.0.100/restapi/relay/user_lines/',auth=auth,headers=headers,json=None)

Sample curl user LCD line, if any creation command:

curl --digest -u admin:1234 -H "X-CSRF: x" -H "Content-type: application/json" -H "Accept: application/json" --data-binary "null" "http://192.168.0.100/restapi/relay/user_lines/"

Browse more samples

User LCD line, if any

sum (optional string)relay/user_lines/N/
The line to override the corresponding line of the LCD output with, if any
dot_inline_dotgraph_94.png

Retrieving the value is denied if not administrative user

Changing the value is denied if not administrative user

Changes to this sum may have an effect besides setting value.

This sum can assume the following values:

constant nullNo user LCD lineDo not override the corresponding line of the ordinary LCD output
stringUser LCD lineThe line to override the corresponding line of the LCD output with

Sample CLI write command (note that user_lcd_line__if_any_index is a variable):

uom set "relay/user_lines/${user_lcd_line__if_any_index}" "null"

Sample requests write command (note that _user_lcd_line__if_any_index is a variable):

requests.put('http://192.168.0.100/restapi/relay/user_lines/'+str(_user_lcd_line__if_any_index)+'/',auth=auth,headers=headers,json=None)

Browse more samples

User message force display timeout, if any

sum (optional number)relay/user_message_force_timeout/
Time during which the user script LCD message always overrides ordinary LCD output, if any
dot_inline_dotgraph_95.png

Retrieving the value is denied if not administrative user

Changing the value is denied if not administrative user

This sum represents a value in persistent storage.

This sum can assume the following values:

constant nullAlways force user messageThe user message always overrides ordinary LCD output
numberUser message force display timeoutTime during which the user script LCD message always overrides ordinary LCD outputthe value is greater or equal to 0

Sample uom library read command:

print(uom.dump(uom.relay.user_message_force_timeout))

0

Sample requests write command:

requests.put('http://192.168.0.100/restapi/relay/user_message_force_timeout/',auth=auth,headers=headers,json=0)

Browse more samples

User message display timeout, if any

sum (optional number)relay/user_message_timeout/
Time after which the user script LCD message is replaced by ordinary LCD output even if nothing else happens, if any
dot_inline_dotgraph_96.png

Retrieving the value is denied if not administrative user

Changing the value is denied if not administrative user

This sum represents a value in persistent storage.

This sum can assume the following values:

constant nullShow user message indefinitelyThe user message stays on LCD until ordinary LCD output changes
numberUser message display timeoutTime after which the user script LCD message is replaced by ordinary LCD output even if nothing else happensthe value is greater or equal to 0

Sample CLI read command:

uom get "relay/user_message_timeout"

1

Sample requests read command:

print(requests.get('http://192.168.0.100/restapi/relay/user_message_timeout/',auth=auth,headers=headers).json())

None

Browse more samples

Notifications

objectrelay/notifications/
Relay-state-related notifications
dot_inline_dotgraph_97.png

Retrieving the value is denied if not administrative user

This object does not support direct modification.

This object contains the following items:

parameter_kindsParameter kinds
eventsEvents

Sample curl read command:

curl --digest -u admin:1234 -H "Accept: application/json" "http://192.168.0.100/restapi/relay/notifications/"

...

Sample CLI read command:

uom get "relay/notifications"

...

Browse more samples

See also Notifications: Parameter kinds

Events

maprelay/notifications/events/
Event templates
dot_inline_dotgraph_98.png

Retrieving the value is denied if not administrative user

This map is composite, i.e. is modified as a whole.

This map does not support direct modification.

This map contains Event elements.

Creating elements in this collection is not supported.

Sample uom library read command:

print(uom.dump(uom.relay.notifications.events))

<...>

Sample CLI read command:

uom get "relay/notifications/events"

...

Browse more samples

See also Events: Event

Notifications: Parameter kinds

objectrelay/notifications/parameter_kinds/
Kinds of event parameters

This object does not correspond to an actual resource.

This object contains the following items:

outletOutlet
stateConfigured state
transient_stateTransient state
physical_statePhysical state
lockedLock state

Outlet

numberrelay/notifications/parameter_kinds/outlet/
Outlet index
dot_inline_dotgraph_99.png

The value is subject to the following constraints: outlets[the value]

Configured state

sum (boolean)relay/notifications/parameter_kinds/state/
Saved configured state of the outlet

This sum can assume the following values:

constant trueOnThe outlet is powered
constant falseOffThe outlet is not powered

Transient state

sum (boolean)relay/notifications/parameter_kinds/transient_state/
Current expected state of the outlet

This sum can assume the following values:

constant trueOnThe outlet is powered
constant falseOffThe outlet is not powered

Physical state

sum (boolean)relay/notifications/parameter_kinds/physical_state/
Current actual state of the outlet

This sum can assume the following values:

constant trueOnThe outlet is powered
constant falseOffThe outlet is not powered

Lock state

sum (boolean)relay/notifications/parameter_kinds/locked/
Indicates whether the outlet state is locked from keypad

This sum can assume the following values:

constant trueLockedThe outlet state cannot be changed
constant falseUnlockedThe outlet state can be changed

Event parameters: Event parameter

objectrelay/notifications/events/S/parameters/N/
Properties of a parameter associated with the event

This object is a part of a composite value which is modified as a whole.

This object contains the following items:

idIdentifier
has_fixed_valueFixed value flag
fixed_valueFixed value

Sample CLI write command (note that event and event_parameter_index are variables):

uom set "relay/notifications/events/${event}/parameters/${event_parameter_index}" "{\"fixed_value\":false,\"has_fixed_value\":true,\"id\":\"physical_state\"}"

Sample curl write command (note that :event and :event_parameter_index are URL template arguments):

curl --digest -u admin:1234 -H "X-CSRF: x" -X PUT -H "Content-type: application/json" -H "Accept: application/json" --data-binary "{\"fixed_value\":null,\"has_fixed_value\":false,\"id\":\"outlet\"}" "http://192.168.0.100/restapi/relay/notifications/events/:event/parameters/:event_parameter_index/"

Browse more samples

Identifier

stringrelay/notifications/events/S/parameters/N/id/
Parameter identifier
dot_inline_dotgraph_100.png

The value is subject to the following constraints: parameter kinds[the value]

Retrieving the value is denied if not administrative user

This string is a part of a composite value which is modified as a whole.

This string does not support direct modification.

Sample requests read command (note that _event and _event_parameter_index are variables):

print(requests.get('http://192.168.0.100/restapi/relay/notifications/events/'+_event+'/parameters/'+str(_event_parameter_index)+'/id/',auth=auth,headers=headers).json())

'outlet'

Sample CLI read command (note that event and event_parameter_index are variables):

uom get "relay/notifications/events/${event}/parameters/${event_parameter_index}/id"

"state"

Browse more samples

Fixed value flag

sum (boolean)relay/notifications/events/S/parameters/N/has_fixed_value/
Flag indicating that the parameter's value for this event is fixed
dot_inline_dotgraph_101.png

Retrieving the value is denied if not administrative user

This sum is a part of a composite value which is modified as a whole.

This sum does not support direct modification.

This sum can assume the following values:

constant trueFixedThe value is fixed
constant falseVariableThe value is variable

Sample requests read command (note that _event and _event_parameter_index are variables):

print(requests.get('http://192.168.0.100/restapi/relay/notifications/events/'+_event+'/parameters/'+str(_event_parameter_index)+'/has_fixed_value/',auth=auth,headers=headers).json())

True

Sample curl read command (note that :event and :event_parameter_index are URL template arguments):

curl --digest -u admin:1234 -H "Accept: application/json" "http://192.168.0.100/restapi/relay/notifications/events/:event/parameters/:event_parameter_index/has_fixed_value/"

false

Browse more samples

Fixed value

sum (variant)relay/notifications/events/S/parameters/N/fixed_value/
Fixed parameter value for this particular event
dot_inline_dotgraph_102.png

Retrieving the value is denied if not administrative user

This sum is a part of a composite value which is modified as a whole.

This sum does not support direct modification.

This sum can assume the following values:

constant nullNullNull
constant trueTrueTrue
constant falseFalseFalse
stringStringThis string
numberNumberThis number

Sample curl read command (note that :event and :event_parameter_index are URL template arguments):

curl --digest -u admin:1234 -H "Accept: application/json" "http://192.168.0.100/restapi/relay/notifications/events/:event/parameters/:event_parameter_index/fixed_value/"

true

Sample CLI read command (note that event and event_parameter_index are variables):

uom get "relay/notifications/events/${event}/parameters/${event_parameter_index}/fixed_value"

null

Browse more samples

Events: Event

objectrelay/notifications/events/S/
Event template
dot_inline_dotgraph_103.png

This object is a part of a composite value which is modified as a whole.

This object contains the following items:

message_templateMessage template
severitySeverity
parametersEvent parameters

Sample requests read command (note that _event is a variable):

print(requests.get('http://192.168.0.100/restapi/relay/notifications/events/'+_event+'/',auth=auth,headers=headers).json())

{'severity': 6, 'message_template': ['outlet ', 0, ' configured to be OFF at power-up'], 'parameters': [{'fixed_value': None, 'has_fixed_value': False, 'id': 'outlet'}, {'fixed_value': False, 'has_fixed_value': True, 'id': 'state'}]}

Sample CLI read command (note that event is a variable):

uom get "relay/notifications/events/${event}"

{"severity":7,"message_template":["outlet ",0," expected to be ON"],"parameters":[{"fixed_value":null,"has_fixed_value":false,"id":"outlet"},{"fixed_value":true,"has_fixed_value":true,"id":"transient_state"}]}

Browse more samples

Message template

arrayrelay/notifications/events/S/message_template/
Template for human-readable message generation
dot_inline_dotgraph_104.png

Retrieving the value is denied if not administrative user

This array is a part of a composite value which is modified as a whole.

This array does not support direct modification.

This array contains Message template element elements.

Creating elements in this collection is not supported.

Sample uom library read command (note that _event is a variable):

print(uom.dump(uom.relay.notifications.events[_event].message_template))

{"outlet ",0," is ON"}

Sample curl read command (note that :event is a URL template argument):

curl --digest -u admin:1234 -H "Accept: application/json" "http://192.168.0.100/restapi/relay/notifications/events/:event/message_template/"

["outlet ",0," expected to be OFF"]

Browse more samples

Message template element

sum (variant)relay/notifications/events/S/message_template/N/
Element of human-readable message template
dot_inline_dotgraph_105.png

Retrieving the value is denied if not administrative user

This sum is a part of a composite value which is modified as a whole.

This sum does not support direct modification.

This sum can assume the following values:

stringStringFixed string
numberParameterIndex of message parameter to insertevent parameters[the value]

Sample requests read command (note that _event and _message_template_element_index are variables):

print(requests.get('http://192.168.0.100/restapi/relay/notifications/events/'+_event+'/message_template/'+str(_message_template_element_index)+'/',auth=auth,headers=headers).json())

' remains OFF at power-up'

Sample curl read command (note that :event and :message_template_element_index are URL template arguments):

curl --digest -u admin:1234 -H "Accept: application/json" "http://192.168.0.100/restapi/relay/notifications/events/:event/message_template/:message_template_element_index/"

0

Browse more samples

Severity

sum (enumerated number)relay/notifications/events/S/severity/
Severity rating assigned to the event
dot_inline_dotgraph_106.png

Retrieving the value is denied if not administrative user

This sum is a part of a composite value which is modified as a whole.

This sum does not support direct modification.

This sum can assume the following values:

constant 1EmergencyTreat the event as an emergency
constant 2AlertTreat the event as an alert
constant 3CriticalTreat the event as critical
constant 4ErrorTreat the event as an error
constant 5WarningTreat the event as a warning
constant 6NoticeTreat the event as a notice
constant 7InformationalTreat the event as informational
constant 8DebugTreat the event as debugging-related

Sample requests read command (note that _event is a variable):

print(requests.get('http://192.168.0.100/restapi/relay/notifications/events/'+_event+'/severity/',auth=auth,headers=headers).json())

7

Sample JS request read command (note that _event is a variable):

request.get({url:"relay/notifications/events/"+_event+"/severity/"},function(error,response,body) {console.log(body)});

6

Browse more samples

Event parameters

arrayrelay/notifications/events/S/parameters/
Additional data associated with the event
dot_inline_dotgraph_107.png

Retrieving the value is denied if not administrative user

This array is a part of a composite value which is modified as a whole.

This array does not support direct modification.

This array contains Event parameter elements.

Creating elements in this collection is not supported.

Sample JS request read command (note that _event is a variable):

request.get({url:"relay/notifications/events/"+_event+"/parameters/"},function(error,response,body) {console.log(body)});

[{"fixed_value":null,"has_fixed_value":false,"id":"outlet"},{"fixed_value":true,"has_fixed_value":true,"id":"state"}]

Sample uom library read command (note that _event is a variable):

print(uom.dump(uom.relay.notifications.events[_event].parameters))

{{fixed_value=null,has_fixed_value=false,id="outlet"},{fixed_value=false,has_fixed_value=true,id="state"}}

Browse more samples

See also Event parameters: Event parameter