DLI EPCDC32 Object Model Reference
|
object | meter/ |
Object representing the meter server state and configuration |
This object contains the following items:
values | Measured values |
buses | Bus list |
power_status | Power status |
emergency_off_status | Emergency shutoff status |
synchronize | Synchronize meter data |
notifications | Notifications |
Sample JS request
write command:
request.put({url:"meter/",body:<...>});
Sample CLI read command:
uom get meter
⇒
...
map | meter/values/ |
Values measured by meters |
This map contains Measured value elements.
Sample uom
library read command:
print(uom.dump(uom.meter.values))
⇒
<...>
Sample curl
read command:
curl --digest -u admin:1234 -H "Accept: application/json" "http://192.168.0.100/restapi/meter/values/"
⇒
...
object | meter/values/S/ |
Value measured by meter |
The value is subject to the following constraints: not index of the value matches ^(|.*|.*)$
Removing the object from its parent collection is denied if not custom flag
This object contains the following items:
Sample requests
read command (note that _measured_value
is a variable):
print(requests.get('http://192.168.0.100/restapi/meter/values/'+_measured_value+'/',auth=auth,headers=headers).json())
⇒
Sample uom
library write command (note that _measured_value
is a variable):
uom.meter.values[_measured_value]={bus=3,data_absence_alarm_level=3,data_absence_alarm_period=null,expression="3.9",history_parameters={{300,86400},{3600,1209600},{86400,31536000}},history_subsample_count=6,history_time_step=14,in_calibration=true,internal=false,intervals={{alarm_level=null,alarm_period=2,lower_bound_bottom=8.8588588588589,lower_bound_top=9.0990990990991},{alarm_level=null,alarm_period=null,lower_bound_bottom=10.36036036036,lower_bound_top=10.750750750751},{alarm_level=null,alarm_period=null,lower_bound_bottom=11.801801801802,lower_bound_top=12.252252252252},{alarm_level=1,alarm_period=null,lower_bound_bottom=12.192192192192,lower_bound_top=12.612612612613},{alarm_level=null,alarm_period=3,lower_bound_bottom=13.183183183183,lower_bound_top=13.393393393393},{alarm_level=null,alarm_period=2,lower_bound_bottom=14.174174174174,lower_bound_top=14.474474474474}},log_history=false,lowest_interval_alarm_level=null,lowest_interval_alarm_period=null,name="Temperature",quantity="temperature",update_relative_difference=0}
See also Measured value: Value name
See also Measured value: Value, if any
See also Measured value: Minimal absolute difference for updates
See also Measured value: Minimal relative difference for updates
See also Measured value: Expression, if any
See also Measured value: Custom flag
See also Measured value: Calibration flag
See also Measured value: Calibration support flag
See also Measured value: Insert calibration point
See also Measured value: Commit calibration
See also Measured value: Quantity
See also Measured value: Bus index, if any
See also Measured value: Internal
See also Measured value: Log history
See also Measured value: History log parameters
See also Measured value: History subsample count
See also Measured value: History time step
See also Measured value: Get value history
See also Measured value: Clear value history
See also Measured value: Data absence alarm level, if any
See also Measured value: Data absence alarm period, if any
See also Measured value: Lowest interval alarm level, if any
See also Measured value: Lowest interval alarm period, if any
See also Measured value: Value interval properties
string | meter/values/S/name/ |
Name of the measured value |
Changing the value is denied if not administrative user
This string does not support direct modification if not custom flag.
This string represents a value in persistent storage.
Sample uom
library read command (note that _measured_value
is a variable):
print(uom.dump(uom.meter.values[_measured_value].name))
⇒
"Temperature"
Sample requests
read command (note that _measured_value
is a variable):
print(requests.get('http://192.168.0.100/restapi/meter/values/'+_measured_value+'/name/',auth=auth,headers=headers).json())
⇒
'Temperature'
sum (variant) | meter/values/S/value/ |
Current value measured by meter, if any |
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 can change as if by itself or indirectly because of other actions.
Changes to this sum may have an effect besides setting value.
This sum can assume the following values:
number | Value | Current value measured by meter | |
constant false | No value | Indication that measurement is currently not being carried out |
Sample requests
read command (note that _measured_value
is a variable):
print(requests.get('http://192.168.0.100/restapi/meter/values/'+_measured_value+'/value/',auth=auth,headers=headers).json())
⇒
6
Sample CLI read command (note that measured_value
is a variable):
uom get "meter/values/${measured_value}/value"
⇒
92
number | meter/values/S/update_absolute_difference/ |
Requested (advisory) minimum absolute difference for value updates |
The value represents quantity.
The value is subject to the following constraints: the value is greater or equal to 0
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
This number represents a value in persistent storage.
Sample uom
library read command (note that _measured_value
is a variable):
print(uom.dump(uom.meter.values[_measured_value].update_absolute_difference))
⇒
0.001
Sample requests
read command (note that _measured_value
is a variable):
print(requests.get('http://192.168.0.100/restapi/meter/values/'+_measured_value+'/update_absolute_difference/',auth=auth,headers=headers).json())
⇒
0.0009
number | meter/values/S/update_relative_difference/ |
Requested (advisory) minimum relative difference for value updates |
The value represents ratio, which is dimensionless.
To convert to percents, multiply by 100.
To convert from percents, divide by 100.
The value is subject to the following constraints: all of the following is true:
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
This number represents a value in persistent storage.
Sample uom
library read command (note that _measured_value
is a variable):
print(uom.dump(uom.meter.values[_measured_value].update_relative_difference))
⇒
9e-06
Sample uom
library write command (note that _measured_value
is a variable):
uom.meter.values[_measured_value].update_relative_difference=0.07
sum (optional string) | meter/values/S/expression/ |
Expression governing the value, if any |
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 not custom flag.
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 null | Variable | The value can be modified arbitrarily | |
string | Expression | Expression governing the value |
Sample uom
library write command (note that _measured_value
is a variable):
uom.meter.values[_measured_value].expression="5.1"
Sample requests
read command (note that _measured_value
is a variable):
print(requests.get('http://192.168.0.100/restapi/meter/values/'+_measured_value+'/expression/',auth=auth,headers=headers).json())
⇒
'0.6'
sum (boolean) | meter/values/S/custom/ |
Flag indicating whether the value is custom |
The value is unconditionally set to true
on creation and doesn't have to be supplied (if it is, it must match)
Retrieving the value is denied if not administrative user
This sum does not support direct modification.
This sum represents a value in persistent storage.
This sum can assume the following values:
constant true | Custom | The value is custom and can be modified freely | |
constant false | Built-in | The value is built-in and only the hardware can modify it |
Sample uom
library read command (note that _measured_value
is a variable):
print(uom.dump(uom.meter.values[_measured_value].custom))
⇒
{}
Sample curl
read command (note that :measured_value
is a URL template argument):
curl --digest -u admin:1234 -H "Accept: application/json" "http://192.168.0.100/restapi/meter/values/:measured_value/custom/"
⇒
[]
sum (boolean) | meter/values/S/in_calibration/ |
Flag indicating whether the value is being calibrated |
The value is subject to the following constraints: any of the following is true:
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 not calibration support flag.
This sum can change as if by itself or indirectly because of other actions if calibration support flag.
This sum can assume the following values:
constant true | Calibration | The value is being calibrated (it can be updated to match external reference) | |
constant false | Measurement | The value is being measured |
Sample curl
write command (note that :measured_value
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/meter/values/:measured_value/in_calibration/"
Sample requests
read command (note that _measured_value
is a variable):
print(requests.get('http://192.168.0.100/restapi/meter/values/'+_measured_value+'/in_calibration/',auth=auth,headers=headers).json())
⇒
True
sum (boolean) | meter/values/S/supports_calibration/ |
Flag indicating whether calibrating the value is supported |
Retrieving the value is denied if not administrative user
This sum does not support direct modification.
This sum represents a value in persistent storage.
This sum can assume the following values:
constant true | Supported | The value can be calibrated | |
constant false | Not supported | There is no support for calibrating the value, or it does not make sense to |
Sample uom
library read command (note that _measured_value
is a variable):
print(uom.dump(uom.meter.values[_measured_value].supports_calibration))
⇒
true
Sample JS request
read command (note that _measured_value
is a variable):
request.get({url:"meter/values/"+_measured_value+"/supports_calibration/"},function(error,response,body) {console.log(body)});
⇒
true
call | meter/values/S/insert_calibration_point/ |
Specify custom calibration point, possibly overriding measurements |
Performing the function call is denied if any of the following is true:
The call accepts the following arguments:
The call returns the following results:
Sample JS request
invocation (note that _measured_value
is a variable):
request.post({url:"meter/values/"+_measured_value+"/insert_calibration_point/",body:["standard",117,1.9,3.3,1.4]});
⇒
null
Sample curl
invocation (note that :measured_value
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 "[\"standard\",6,7.5,-3.9,5.8]" "http://192.168.0.100/restapi/meter/values/:measured_value/insert_calibration_point/"
⇒
null
sum (enumerated string) | meter/values/S/insert_calibration_point/arguments: 1/ |
Kind of calibration point |
This sum does not correspond to an actual resource.
This sum can assume the following values:
constant "standard" | Standard | The point supplies the calibrated value | |
constant "identity" | Identity | Assume the calibration function is the identity in point | |
constant "current" | Current | Assume the calibration function keeps current value in point |
number | meter/values/S/insert_calibration_point/arguments: 2/ |
Calibrated value |
The value represents quantity.
This number does not correspond to an actual resource.
number | meter/values/S/insert_calibration_point/arguments: 3/ |
Weight of the calibration point |
The value represents ratio, which is dimensionless.
To convert to percents, multiply by 100.
To convert from percents, divide by 100.
The value is subject to the following constraints: the value is greater or equal to 0
This number does not correspond to an actual resource.
number | meter/values/S/insert_calibration_point/arguments: 4/ |
Derivative value in the calibration point |
The value represents ratio, which is dimensionless.
To convert to percents, multiply by 100.
To convert from percents, divide by 100.
This number does not correspond to an actual resource.
number | meter/values/S/insert_calibration_point/arguments: 5/ |
Weight of derivative value in the calibration point |
The value represents ratio, which is dimensionless.
To convert to percents, multiply by 100.
To convert from percents, divide by 100.
The value is subject to the following constraints: the value is greater or equal to 0
This number does not correspond to an actual resource.
constant null | meter/values/S/insert_calibration_point/results: 1/ |
No additional information available |
This constant does not correspond to an actual resource.
call | meter/values/S/commit_calibration/ |
Save calibration data to persistent storage |
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:
Sample requests
invocation (note that _measured_value
is a variable):
print(requests.post('http://192.168.0.100/restapi/meter/values/'+_measured_value+'/commit_calibration/',auth=auth,headers=headers,json={}).json())
⇒
None
Sample curl
invocation (note that :measured_value
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/meter/values/:measured_value/commit_calibration/"
⇒
null
constant null | meter/values/S/commit_calibration/results: 1/ |
No additional information available |
This constant does not correspond to an actual resource.
string | meter/values/S/quantity/ |
Quantity of the value |
The value is subject to the following constraints: known quantities[the value]
Changing the value is denied if not administrative user
This string does not support direct modification if not custom flag.
This string represents a value in persistent storage.
Sample curl
write command (note that :measured_value
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 "\"voltage\"" "http://192.168.0.100/restapi/meter/values/:measured_value/quantity/"
Sample uom
library write command (note that _measured_value
is a variable):
uom.meter.values[_measured_value].quantity="voltage"
sum (optional number) | meter/values/S/bus/ |
Index of bus being measured, if any |
Changing the value is denied if not administrative user
This sum does not support direct modification if not custom flag.
This sum represents a value in persistent storage.
This sum can assume the following values:
constant null | Unspecified | The value is not related to a bus | |
number | Bus index | Index of bus being measured | buses[the value] |
Sample CLI write command (note that measured_value
is a variable):
uom set "meter/values/${measured_value}/bus" "null"
Sample JS request
read command (note that _measured_value
is a variable):
request.get({url:"meter/values/"+_measured_value+"/bus/"},function(error,response,body) {console.log(body)});
⇒
7
sum (boolean) | meter/values/S/internal/ |
Flag indicating whether this value is internal |
Changing the value is denied if not administrative user
This sum does not support direct modification if not custom flag.
This sum represents a value in persistent storage.
This sum can assume the following values:
constant true | Internal | The value is internal and should not matter to users | |
constant false | Visible | The value should be visible to users |
Sample CLI write command (note that measured_value
is a variable):
uom set "meter/values/${measured_value}/internal" "true"
Sample JS request
write command (note that _measured_value
is a variable):
request.put({url:"meter/values/"+_measured_value+"/internal/",body:false});
sum (boolean) | meter/values/S/log_history/ |
Flag indicating whether the value should be logged to the history |
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 true | Enabled | The feature is enabled | |
constant false | Disabled | The feature is disabled |
Sample requests
write command (note that _measured_value
is a variable):
requests.put('http://192.168.0.100/restapi/meter/values/'+_measured_value+'/log_history/',auth=auth,headers=headers,json=True)
Sample CLI write command (note that measured_value
is a variable):
uom set "meter/values/${measured_value}/log_history" "false"
array | meter/values/S/history_parameters/ |
Configuration of history logs sampling intervals and timespans |
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 can change as if by itself or indirectly because of other actions.
This array contains History log elements.
Sample curl
write command (note that :measured_value
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 "[[300,86400],[3600,1209600],[86400,31536000]]" "http://192.168.0.100/restapi/meter/values/:measured_value/history_parameters/"
Sample CLI read command (note that measured_value
is a variable):
uom get "meter/values/${measured_value}/history_parameters"
⇒
[[300,86400],[3600,1209600],[86400,31536000]]
tuple | meter/values/S/history_parameters/N/ |
History log settings |
This tuple is a part of a composite value which is modified as a whole.
This tuple contains the following items:
1 | Interval |
2 | Span |
Sample uom
library write command (note that _measured_value
and _history_log_index
are variables):
uom.meter.values[_measured_value].history_parameters[_history_log_index]={86400,31536000}
Sample CLI write command (note that measured_value
and history_log_index
are variables):
uom set "meter/values/${measured_value}/history_parameters/${history_log_index}" "[3600,1209600]"
number | meter/values/S/history_parameters/N/1/ |
Time interval between two consecutive history samples (changes will trigger history rebuilding and may cause adjustments to time span) |
The value represents time, the standard unit of which is the second (s).
The value is subject to the following constraints: all of the following is true:
0
0
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.
This number represents a value in persistent storage.
This number can change as if by itself or indirectly because of other actions.
Sample curl
write command (note that :measured_value
and :history_log_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 "3600" "http://192.168.0.100/restapi/meter/values/:measured_value/history_parameters/:history_log_index/0/"
Sample uom
library read command (note that _measured_value
and _history_log_index
are variables):
print(uom.dump(uom.meter.values[_measured_value].history_parameters[_history_log_index][1]))
⇒
86400
number | meter/values/S/history_parameters/N/2/ |
Time span covered by history fragment (changes will trigger history rebuilding) |
The value represents time, the standard unit of which is the second (s).
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.
This number represents a value in persistent storage.
This number can change as if by itself or indirectly because of other actions.
Sample JS request
read command (note that _measured_value
and _history_log_index
are variables):
request.get({url:"meter/values/"+_measured_value+"/history_parameters/"+_history_log_index.toString()+"/1/"},function(error,response,body) {console.log(body)});
⇒
1209600
Sample requests
write command (note that _measured_value
and _history_log_index
are variables):
requests.put('http://192.168.0.100/restapi/meter/values/'+_measured_value+'/history_parameters/'+str(_history_log_index)+'/1/',auth=auth,headers=headers,json=86400)
number | meter/values/S/history_subsample_count/ |
Number of measurements per history sample |
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 uom
library write command (note that _measured_value
is a variable):
uom.meter.values[_measured_value].history_subsample_count=8
Sample CLI read command (note that measured_value
is a variable):
uom get "meter/values/${measured_value}/history_subsample_count"
⇒
4
number | meter/values/S/history_time_step/ |
Minimal amount of time between saved history samples (changes will trigger history rebuilding and may cause adjustments to history_parameters) |
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 JS request
read command (note that _measured_value
is a variable):
request.get({url:"meter/values/"+_measured_value+"/history_time_step/"},function(error,response,body) {console.log(body)});
⇒
17
Sample uom
library read command (note that _measured_value
is a variable):
print(uom.dump(uom.meter.values[_measured_value].history_time_step))
⇒
26
array | meter/values/S/get_history/results: 1/3/ |
Historical data points |
This array does not correspond to an actual resource.
This array contains Data point, if any elements.
sum (variant) | meter/values/S/get_history/results: 1/3/N/ |
Historical data point, if any |
This sum does not correspond to an actual resource.
This sum can assume the following values:
number | Data point | Historical data point, whose corresponding time is determined by array position | |
constant false | Missing data | Indication that data for the time determined by array position could not be found |
call | meter/values/S/get_history/ |
Get history of values over a specific time range |
Performing the function call is denied if not administrative user
The call accepts the following arguments:
The call returns the following results:
Sample curl
invocation (note that :measured_value
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 "[1587934751,1587938351,900]" "http://192.168.0.100/restapi/meter/values/:measured_value/get_history/"
⇒
[1587933900,900,[false,false,false,false]]
Sample JS request
invocation (note that _measured_value
is a variable):
request.post({url:"meter/values/"+_measured_value+"/get_history/",body:[1576365765,1576452165,86400]});
⇒
[1576281600,86400,[3]]
number | meter/values/S/get_history/arguments: 1/ |
Requested timestamp of the first data point to retrieve |
The value represents time, the standard unit of which is the second (s).
This number does not correspond to an actual resource.
number | meter/values/S/get_history/arguments: 2/ |
Requested timestamp of the last data point to retrieve |
The value represents time, the standard unit of which is the second (s).
This number does not correspond to an actual resource.
number | meter/values/S/get_history/arguments: 3/ |
Requested time step between succeeding data points |
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 correspond to an actual resource.
tuple | meter/values/S/get_history/results: 1/ |
Historical measured values |
This tuple does not correspond to an actual resource.
This tuple contains the following items:
1 | Data start time |
2 | Data time step |
3 | Value history |
number | meter/values/S/get_history/results: 1/1/ |
Timestamp of the first retrieved historical data point (may differ from requested start timestamp) |
The value represents time, the standard unit of which is the second (s).
This number does not correspond to an actual resource.
number | meter/values/S/get_history/results: 1/2/ |
Time step between succeeding retrieved historical data points (may differ from requested time step) |
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 correspond to an actual resource.
See also Value history record: Value history
call | meter/values/S/clear_history/ |
Clear the complete history of values, and reset value to zero |
Performing the function call is denied if not administrative user
The call has no arguments (supply empty tuple).
The call returns the following results:
Sample curl
invocation (note that :measured_value
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/meter/values/:measured_value/clear_history/"
⇒
null
Sample requests
invocation (note that _measured_value
is a variable):
print(requests.post('http://192.168.0.100/restapi/meter/values/'+_measured_value+'/clear_history/',auth=auth,headers=headers,json={}).json())
⇒
None
constant null | meter/values/S/clear_history/results: 1/ |
No additional information available |
This constant does not correspond to an actual resource.
sum (optional number) | meter/values/S/data_absence_alarm_level/ |
Alarm level for absence of data, if any |
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 null | None | No alarm is generated on absence of data | |
number | Data absence alarm level | Alarm level for absence of data |
Sample requests
read command (note that _measured_value
is a variable):
print(requests.get('http://192.168.0.100/restapi/meter/values/'+_measured_value+'/data_absence_alarm_level/',auth=auth,headers=headers).json())
⇒
6
Sample CLI write command (note that measured_value
is a variable):
uom set "meter/values/${measured_value}/data_absence_alarm_level" "null"
sum (optional number) | meter/values/S/data_absence_alarm_period/ |
The time interval after which data absence alarm events should be repeated, if any |
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 null | None | The data absence alarm event is generated only once on data loss and is not repeated | |
number | Data absence alarm period | The time interval after which data absence alarm events should be repeated | the value is greater than 0 |
Sample JS request
write command (note that _measured_value
is a variable):
request.put({url:"meter/values/"+_measured_value+"/data_absence_alarm_period/",body:null});
Sample requests
write command (note that _measured_value
is a variable):
requests.put('http://192.168.0.100/restapi/meter/values/'+_measured_value+'/data_absence_alarm_period/',auth=auth,headers=headers,json=1)
sum (optional number) | meter/values/S/lowest_interval_alarm_level/ |
Alarm level for the lowest value interval, if any |
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 null | None | No alarm is generated for the lowest value interval | |
number | Lowest interval alarm level | Alarm level for the lowest value interval |
Sample uom
library write command (note that _measured_value
is a variable):
uom.meter.values[_measured_value].lowest_interval_alarm_level=null
Sample JS request
read command (note that _measured_value
is a variable):
request.get({url:"meter/values/"+_measured_value+"/lowest_interval_alarm_level/"},function(error,response,body) {console.log(body)});
⇒
3
sum (optional number) | meter/values/S/lowest_interval_alarm_period/ |
The time interval after which lowest interval alarm events should be repeated, if any |
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 null | None | The alarm event is generated only once at lowest interval entry and is not repeated while the value is in the interval | |
number | Lowest interval alarm period | The time interval after which lowest interval alarm events should be repeated | the value is greater than 0 |
Sample requests
write command (note that _measured_value
is a variable):
requests.put('http://192.168.0.100/restapi/meter/values/'+_measured_value+'/lowest_interval_alarm_period/',auth=auth,headers=headers,json=None)
Sample curl
read command (note that :measured_value
is a URL template argument):
curl --digest -u admin:1234 -H "Accept: application/json" "http://192.168.0.100/restapi/meter/values/:measured_value/lowest_interval_alarm_period/"
⇒
1
array | meter/values/S/intervals/ |
Properties defining intervals of the value and their alarm levels |
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 contains Interval configuration elements.
Sample uom
library interval configuration creation command (note that _measured_value
is a variable):
local composite=uom.copy(uom.meter.values[_measured_value].intervals) uom.insert(composite,7,{alarm_level=7,alarm_period=1,lower_bound_bottom=20.24024024024,lower_bound_top=20.48048048048}) uom.meter.values[_measured_value].intervals=composite
Sample JS request
interval configuration creation command (note that _measured_value
is a variable):
request.post({url:"meter/values/"+_measured_value+"/intervals/",body:{"lower_bound_bottom":15.916666666667,"alarm_level":3,"lower_bound_top":17.25,"alarm_period":null}});
object | meter/values/S/intervals/N/ |
Configuration of a value interval |
This object is a part of a composite value which is modified as a whole.
This object contains the following items:
lower_bound_bottom | Lower bound bottom |
lower_bound_top | Lower bound top |
alarm_level | Alarm level, if any |
alarm_period | Alarm period, if any |
Sample requests
deletion command (note that _measured_value
and _interval_configuration_index
are variables):
requests.delete('http://192.168.0.100/restapi/meter/values/'+_measured_value+'/intervals/'+str(_interval_configuration_index)+'/',auth=auth,headers=headers)
Sample requests
write command (note that _measured_value
and _interval_configuration_index
are variables):
requests.put('http://192.168.0.100/restapi/meter/values/'+_measured_value+'/intervals/'+str(_interval_configuration_index)+'/',auth=auth,headers=headers,json={'lower_bound_bottom': 780, 'alarm_level': None, 'lower_bound_top': 793, 'alarm_period': 4})
number | meter/values/S/intervals/N/lower_bound_bottom/ |
The bottom of the lower bound of this interval; value must be lower to be considered outside this interval |
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.
This number represents a value in persistent storage.
Sample requests
read command (note that _measured_value
and _interval_configuration_index
are variables):
print(requests.get('http://192.168.0.100/restapi/meter/values/'+_measured_value+'/intervals/'+str(_interval_configuration_index)+'/lower_bound_bottom/',auth=auth,headers=headers).json())
⇒
344.16666666667
Sample JS request
read command (note that _measured_value
and _interval_configuration_index
are variables):
request.get({url:"meter/values/"+_measured_value+"/intervals/"+_interval_configuration_index.toString()+"/lower_bound_bottom/"},function(error,response,body) {console.log(body)});
⇒
81.666666666667
number | meter/values/S/intervals/N/lower_bound_top/ |
The top of the lower bound of this interval; value must be higher to be considered inside this interval |
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.
This number represents a value in persistent storage.
Sample CLI read command (note that measured_value
and interval_configuration_index
are variables):
uom get "meter/values/${measured_value}/intervals/${interval_configuration_index}/lower_bound_top"
⇒
58.916666666667
Sample JS request
read command (note that _measured_value
and _interval_configuration_index
are variables):
request.get({url:"meter/values/"+_measured_value+"/intervals/"+_interval_configuration_index.toString()+"/lower_bound_top/"},function(error,response,body) {console.log(body)});
⇒
258.33333333333
sum (optional number) | meter/values/S/intervals/N/alarm_level/ |
The level of importance assigned to this interval, if any |
Retrieving the value is denied if not administrative user
Changing 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 represents a value in persistent storage.
This sum can assume the following values:
constant null | None | No alarm is generated for this value interval | |
number | Alarm level | The level of importance assigned to this interval |
Sample curl
write command (note that :measured_value
and :interval_configuration_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 "null" "http://192.168.0.100/restapi/meter/values/:measured_value/intervals/:interval_configuration_index/alarm_level/"
Sample uom
library write command (note that _measured_value
and _interval_configuration_index
are variables):
uom.meter.values[_measured_value].intervals[_interval_configuration_index].alarm_level=null
sum (optional number) | meter/values/S/intervals/N/alarm_period/ |
The time interval after which alarm events should be repeated, if any |
Retrieving the value is denied if not administrative user
Changing 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 represents a value in persistent storage.
This sum can assume the following values:
constant null | None | The alarm event is generated only once at interval entry and is not repeated while the value is in the interval | |
number | Alarm period | The time interval after which alarm events should be repeated | the value is greater than 0 |
Sample CLI write command (note that measured_value
and interval_configuration_index
are variables):
uom set "meter/values/${measured_value}/intervals/${interval_configuration_index}/alarm_period" "null"
Sample curl
write command (note that :measured_value
and :interval_configuration_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 "2" "http://192.168.0.100/restapi/meter/values/:measured_value/intervals/:interval_configuration_index/alarm_period/"
array | meter/buses/ |
Attributes for buses |
This array does not support direct modification.
This array contains Bus attributes elements.
Creating elements in this collection is not supported.
Sample CLI read command:
uom get "meter/buses"
⇒
[{"power_status":true,"name":"Bus A","power_factor_percent":100},{"power_status":false,"name":"Bus B","power_factor_percent":100}]
Sample JS request
read command:
request.get({url:"meter/buses/"},function(error,response,body) {console.log(body)});
⇒
[{"power_status":true,"name":"Bus A","power_factor_percent":100},{"power_status":false,"name":"Bus B","power_factor_percent":100}]
See also Bus list: Bus attributes
object | meter/buses/N/ |
Attributes for a bus |
The value is subject to the following constraints: buses[index of the value]
This object contains the following items:
name | Name |
power_status | Power status |
power_factor_percent | Power factor |
Sample curl
read command (note that :bus_attributes_index
is a URL template argument):
curl --digest -u admin:1234 -H "Accept: application/json" "http://192.168.0.100/restapi/meter/buses/:bus_attributes_index/"
⇒
{"power_status":true,"name":"Bus A","power_factor_percent":100}
Sample CLI read command (note that bus_attributes_index
is a variable):
uom get "meter/buses/${bus_attributes_index}"
⇒
{"power_status":false,"name":"Bus B","power_factor_percent":100}
string | meter/buses/N/name/ |
User-visible name of this bus |
Changing the value is denied if not administrative user
This string represents a value in persistent storage.
Sample JS request
write command (note that _bus_attributes_index
is a variable):
request.put({url:"meter/buses/"+_bus_attributes_index.toString()+"/name/",body:"Bus B"});
Sample uom
library write command (note that _bus_attributes_index
is a variable):
uom.meter.buses[_bus_attributes_index].name="Bus B"
sum (boolean) | meter/buses/N/power_status/ |
Status of bus power |
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.
This sum can change as if by itself or indirectly because of other actions.
This sum can assume the following values:
constant true | On | Bus is powered | |
constant false | Off | Bus is not powered |
Sample requests
read command (note that _bus_attributes_index
is a variable):
print(requests.get('http://192.168.0.100/restapi/meter/buses/'+str(_bus_attributes_index)+'/power_status/',auth=auth,headers=headers).json())
⇒
True
Sample curl
read command (note that :bus_attributes_index
is a URL template argument):
curl --digest -u admin:1234 -H "Accept: application/json" "http://192.168.0.100/restapi/meter/buses/:bus_attributes_index/power_status/"
⇒
true
number | meter/buses/N/power_factor_percent/ |
Power factor for this bus |
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 uom
library read command (note that _bus_attributes_index
is a variable):
print(uom.dump(uom.meter.buses[_bus_attributes_index].power_factor_percent))
⇒
100
Sample JS request
write command (note that _bus_attributes_index
is a variable):
request.put({url:"meter/buses/"+_bus_attributes_index.toString()+"/power_factor_percent/",body:100});
sum (boolean) | meter/power_status/ |
Status of unit power |
Retrieving the value is denied if not administrative user
This sum does not support direct modification.
This sum can change as if by itself or indirectly because of other actions.
This sum can assume the following values:
constant true | Mains | Unit is powered from at least one bus, outlets can be driven | |
constant false | Battery | Unit is powered from the battery only, outlets cannot be driven, unit shutdown expected |
Sample JS request
read command:
request.get({url:"meter/power_status/"},function(error,response,body) {console.log(body)});
⇒
true
Sample uom
library read command:
print(uom.dump(uom.meter.power_status))
⇒
true
sum (optional boolean) | meter/emergency_off_status/ |
Status of emergency shutoff |
Retrieving the value is denied if not administrative user
This sum does not support direct modification.
This sum can change as if by itself or indirectly because of other actions.
This sum can assume the following values:
constant true | Active | Emergency shutoff active, all outlets off | |
constant false | Inactive | Emergency shutoff inactive, normal outlet operation | |
constant null | Unknown | Emergency shutoff is in an unknown state, probably due to power failure, all outlets likely off |
Sample uom
library read command:
print(uom.dump(uom.meter.emergency_off_status))
⇒
false
Sample curl
read command:
curl --digest -u admin:1234 -H "Accept: application/json" "http://192.168.0.100/restapi/meter/emergency_off_status/"
⇒
false
call | meter/synchronize/ |
Saves meter data to persistent storage expressly (synchronization takes place periodically even without this call) |
Performing the function call is denied if not administrative user
The call has no arguments (supply empty tuple).
The call returns the following results:
Sample curl
invocation:
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/meter/synchronize/"
⇒
null
Sample JS request
invocation:
request.post({url:"meter/synchronize/",body:[]});
⇒
null
constant null | meter/synchronize/results: 1/ |
No additional information available |
This constant does not correspond to an actual resource.
object | meter/notifications/ |
Meter status notifications |
Retrieving the value is denied if not administrative user
This object does not support direct modification.
This object contains the following items:
parameter_kinds | Parameter kinds |
events | Events |
Sample requests
read command:
print(requests.get('http://192.168.0.100/restapi/meter/notifications/',auth=auth,headers=headers).json())
⇒
<...>
Sample CLI read command:
uom get "meter/notifications"
⇒
...
See also Notifications: Parameter kinds
map | meter/notifications/events/ |
Event templates |
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 CLI read command:
uom get "meter/notifications/events"
⇒
...
Sample uom
library read command:
print(uom.dump(uom.meter.notifications.events))
⇒
<...>
See also Events: Event
object | meter/notifications/parameter_kinds/ |
Kinds of event parameters |
This object does not correspond to an actual resource.
This object contains the following items:
number | meter/notifications/parameter_kinds/bus_index/ |
Index of the bus |
string | meter/notifications/parameter_kinds/bus_name/ |
Name of the bus |
sum (boolean) | meter/notifications/parameter_kinds/bus_powered/ |
Status of bus power |
This sum can assume the following values:
constant true | Powered | The bus is powered | |
constant false | Not powered | The bus is not powered |
sum (boolean) | meter/notifications/parameter_kinds/powered/ |
Status of unit power |
This sum can assume the following values:
constant true | Mains | The unit is running on mains | |
constant false | Battery | The unit is running on battery |
sum (boolean) | meter/notifications/parameter_kinds/emergency_off/ |
Status of emergency shutoff |
This sum can assume the following values:
constant true | Active | All outlets off | |
constant false | Inactive | Normal outlet operation |
string | meter/notifications/parameter_kinds/value_id/ |
Identifier of the value |
string | meter/notifications/parameter_kinds/value_name/ |
Name of the value |
number | meter/notifications/parameter_kinds/value_alarm_level/ |
Alarm level associated with the value |
sum (optional number) | meter/notifications/parameter_kinds/value_alarm_repeated/ |
Number of consecutive times this alarm has been sent, if any |
This sum can assume the following values:
constant null | Initial alarm | The value has just entered the interval | |
number | Value alarm repeat count | Number of consecutive times this alarm has been sent | all of the following is true: |
number | meter/notifications/parameter_kinds/value_alarm_duration/ |
Amount of time the value has been at this alarm level |
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
object | meter/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:
id | Identifier |
has_fixed_value | Fixed value flag |
fixed_value | Fixed value |
Sample JS request
read command (note that _event
and _event_parameter_index
are variables):
request.get({url:"meter/notifications/events/"+_event+"/parameters/"+_event_parameter_index.toString()+"/"},function(error,response,body) {console.log(body)});
⇒
{"fixed_value":false,"has_fixed_value":true,"id":"powered"}
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/meter/notifications/events/:event/parameters/:event_parameter_index/"
⇒
{"fixed_value":true,"has_fixed_value":true,"id":"powered"}
string | meter/notifications/events/S/parameters/N/id/ |
Parameter identifier |
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 uom
library read command (note that _event
and _event_parameter_index
are variables):
print(uom.dump(uom.meter.notifications.events[_event].parameters[_event_parameter_index].id))
⇒
"value_alarm_duration"
Sample JS request
read command (note that _event
and _event_parameter_index
are variables):
request.get({url:"meter/notifications/events/"+_event+"/parameters/"+_event_parameter_index.toString()+"/id/"},function(error,response,body) {console.log(body)});
⇒
"powered"
sum (boolean) | meter/notifications/events/S/parameters/N/has_fixed_value/ |
Flag indicating that the parameter's value for this event is fixed |
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 true | Fixed | The value is fixed | |
constant false | Variable | The value is variable |
Sample JS request
read command (note that _event
and _event_parameter_index
are variables):
request.get({url:"meter/notifications/events/"+_event+"/parameters/"+_event_parameter_index.toString()+"/has_fixed_value/"},function(error,response,body) {console.log(body)});
⇒
true
Sample CLI read command (note that event
and event_parameter_index
are variables):
uom get "meter/notifications/events/${event}/parameters/${event_parameter_index}/has_fixed_value"
⇒
true
sum (variant) | meter/notifications/events/S/parameters/N/fixed_value/ |
Fixed parameter value for this particular event |
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 null | Null | Null | |
constant true | True | True | |
constant false | False | False | |
string | String | This string | |
number | Number | This number |
Sample JS request
read command (note that _event
and _event_parameter_index
are variables):
request.get({url:"meter/notifications/events/"+_event+"/parameters/"+_event_parameter_index.toString()+"/fixed_value/"},function(error,response,body) {console.log(body)});
⇒
null
Sample requests
read command (note that _event
and _event_parameter_index
are variables):
print(requests.get('http://192.168.0.100/restapi/meter/notifications/events/'+_event+'/parameters/'+str(_event_parameter_index)+'/fixed_value/',auth=auth,headers=headers).json())
⇒
None
object | meter/notifications/events/S/ |
Event template |
This object is a part of a composite value which is modified as a whole.
This object contains the following items:
message_template | Message template |
severity | Severity |
parameters | Event parameters |
Sample requests
write command (note that _event
is a variable):
requests.put('http://192.168.0.100/restapi/meter/notifications/events/'+_event+'/',auth=auth,headers=headers,json={'severity': 7, 'message_template': [0, ' is at alarm level ', 1, ' for ', 2, ' seconds'], 'parameters': [{'fixed_value': None, 'has_fixed_value': False, 'id': 'value_name'}, {'fixed_value': None, 'has_fixed_value': False, 'id': 'value_alarm_level'}, {'fixed_value': None, 'has_fixed_value': False, 'id': 'value_alarm_duration'}, {'fixed_value': None, 'has_fixed_value': False, 'id': 'value_id'}, {'fixed_value': None, 'has_fixed_value': False, 'id': 'value_alarm_repeated'}]})
Sample uom
library read command (note that _event
is a variable):
print(uom.dump(uom.meter.notifications.events[_event]))
⇒
{message_template={"bus ",0," (",1,") is powered"},parameters={{fixed_value=null,has_fixed_value=false,id="bus_index"},{fixed_value=null,has_fixed_value=false,id="bus_name"},{fixed_value=true,has_fixed_value=true,id="bus_powered"}},severity=6}
array | meter/notifications/events/S/message_template/ |
Template for human-readable message generation |
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 CLI read command (note that event
is a variable):
uom get "meter/notifications/events/${event}/message_template"
⇒
["emergency shutoff deactivated, normal outlet operation"]
Sample JS request
read command (note that _event
is a variable):
request.get({url:"meter/notifications/events/"+_event+"/message_template/"},function(error,response,body) {console.log(body)});
⇒
["emergency shutoff activated, all outlets off"]
sum (variant) | meter/notifications/events/S/message_template/N/ |
Element of human-readable message template |
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:
string | String | Fixed string | |
number | Parameter | Index of message parameter to insert | event parameters[the value] |
Sample JS request
read command (note that _event
and _message_template_element_index
are variables):
request.get({url:"meter/notifications/events/"+_event+"/message_template/"+_message_template_element_index.toString()+"/"},function(error,response,body) {console.log(body)});
⇒
1
Sample CLI read command (note that event
and message_template_element_index
are variables):
uom get "meter/notifications/events/${event}/message_template/${message_template_element_index}"
⇒
"emergency shutoff activated, all outlets off"
sum (enumerated number) | meter/notifications/events/S/severity/ |
Severity rating assigned to the event |
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 1 | Emergency | Treat the event as an emergency | |
constant 2 | Alert | Treat the event as an alert | |
constant 3 | Critical | Treat the event as critical | |
constant 4 | Error | Treat the event as an error | |
constant 5 | Warning | Treat the event as a warning | |
constant 6 | Notice | Treat the event as a notice | |
constant 7 | Informational | Treat the event as informational | |
constant 8 | Debug | Treat the event as debugging-related |
Sample requests
read command (note that _event
is a variable):
print(requests.get('http://192.168.0.100/restapi/meter/notifications/events/'+_event+'/severity/',auth=auth,headers=headers).json())
⇒
5
Sample uom
library read command (note that _event
is a variable):
print(uom.dump(uom.meter.notifications.events[_event].severity))
⇒
6
array | meter/notifications/events/S/parameters/ |
Additional data associated with the event |
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 uom
library read command (note that _event
is a variable):
print(uom.dump(uom.meter.notifications.events[_event].parameters))
⇒
{{fixed_value=false,has_fixed_value=true,id="emergency_off"}}
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/meter/notifications/events/:event/parameters/"
⇒
[{"fixed_value":null,"has_fixed_value":false,"id":"bus_index"},{"fixed_value":null,"has_fixed_value":false,"id":"bus_name"},{"fixed_value":false,"has_fixed_value":true,"id":"bus_powered"}]
See also Event parameters: Event parameter