|
DLI EPCR5 Object Model Reference
|
| object | script/ |
| Object representing the scripting server state and configuration | |
Retrieving the value is denied if not administrative user
This object contains the following items:
Sample curl read command:
curl --digest -u admin:1234 -H "Accept: application/json" "http://192.168.0.100/restapi/script/"
⇒
...
Sample requests read command:
print(requests.get('http://192.168.0.100/restapi/script/',auth=auth,headers=headers).json())
⇒
<...>
| string | script/source/ |
| Source of the user script from which user functions are extracted | |
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 CLI read command:
uom get "script/source"
⇒
"function cycle_appliance(...)\n ...\nend\n"
Sample requests write command:
requests.put('http://192.168.0.100/restapi/script/source/',auth=auth,headers=headers,json='function enable_machines(...)\n ...\nend\nfunction cycle_gadgets(...)\n ...\nend\nfunction disable_appliances(...)\n ...\nend\n')
| map | script/snippets/ |
| Fragments of Lua code provided initially as samples or saved for later use | |
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.
Changes to this map cannot be tracked.
This map contains Script snippet elements.
Sample requests write command:
requests.put('http://192.168.0.100/restapi/script/snippets/',auth=auth,headers=headers,json={'toggle_router_sample': {'source': 'function cycle_machine(...)\n ...\nend\nfunction shut_down_machines(...)\n ...\nend\nfunction shut_down_heaters(...)\n ...\nend\nfunction shut_down_modem(...)\n ...\nend\n'}})
Sample curl read command:
curl --digest -u admin:1234 -H "Accept: application/json" "http://192.168.0.100/restapi/script/snippets/"
⇒
See also Script snippets: Script snippet
| object | script/snippets/S/ |
| User script snippet | |
This object contains the following items:
| source | Snippet source |
Sample uom library read command (note that _script_snippet is a variable):
print(uom.dump(uom.script.snippets[_script_snippet]))
⇒
{source="function shut_down_appliances(...)\
...\
end\
"}
Sample CLI deletion command (note that script_snippet is a variable):
uom remove "script/snippets/${script_snippet}"
| string | script/snippets/S/source/ |
| Source of the snippet | |
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.
Changes to this string cannot be tracked.
Sample JS request read command (note that _script_snippet is a variable):
request.get({url:"script/snippets/"+_script_snippet+"/source/"},function(error,response,body) {console.log(body)});
⇒
"function enable_modem(...)\n ...\nend\nfunction shut_down_modems(...)\n ...\nend\nfunction energize_machine(...)\n ...\nend\nfunction shut_down_machines(...)\n ...\nend\n"
Sample uom library write command (note that _script_snippet is a variable):
uom.script.snippets[_script_snippet].source="function toggle_engines(...)\ ...\ end\ function disable_machine(...)\ ...\ end\ "
| map | script/user_functions/ |
| Mapping of user function names to their signatures | |
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 can change as if by itself or indirectly because of other actions.
Changes to this map cannot be tracked.
This map contains User script function signature elements.
Creating elements in this collection is not supported.
Sample curl read command:
curl --digest -u admin:1234 -H "Accept: application/json" "http://192.168.0.100/restapi/script/user_functions/"
⇒
[]
Sample JS request read command:
request.get({url:"script/user_functions/"},function(error,response,body) {console.log(body)});
⇒
[]
| string | script/user_functions/S/ |
| Indicates that the map key is a user script function, and provides a signature which may serve as a hint as to the function content | |
The value is subject to the following constraints: not index of the value matches ^(|.*|.*)$
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 _user_script_function_signature is a variable):
request.get({url:"script/user_functions/"+_user_script_function_signature+"/"},function(error,response,body) {console.log(body)});
⇒
[]
Sample curl read command (note that :user_script_function_signature is a URL template argument):
curl --digest -u admin:1234 -H "Accept: application/json" "http://192.168.0.100/restapi/script/user_functions/:user_script_function_signature/"
⇒
[]
| array | script/user_function_ui_order/ |
| Preferred order of user functions when displayed to user | |
Retrieving the value is denied if not administrative user
This array is composite, i.e. is modified as a whole.
This array does not support direct modification.
This array can change as if by itself or indirectly because of other actions.
Changes to this array cannot be tracked.
This array contains User script function name for index elements.
Creating elements in this collection is not supported.
Sample requests read command:
print(requests.get('http://192.168.0.100/restapi/script/user_function_ui_order/',auth=auth,headers=headers).json())
⇒
['cycle_engine', 'shut_down_gadget']
Sample uom library read command:
print(uom.dump(uom.script.user_function_ui_order))
⇒
{"enable_gadgets","cycle_modem","enable_engines","energize_modems","cycle_engine"}
| string | script/user_function_ui_order/N/ |
| Indicates that the preferred location of this user function in a list is the index in the array; may specify a nonexistent function | |
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 _user_script_function_name_for_index_index is a variable):
request.get({url:"script/user_function_ui_order/"+_user_script_function_name_for_index_index.toString()+"/"},function(error,response,body) {console.log(body)});
⇒
"energize_appliances"
Sample CLI read command (note that user_script_function_name_for_index_index is a variable):
uom get "script/user_function_ui_order/${user_script_function_name_for_index_index}"
⇒
"toggle_gadget"
| sum (string) | script/boot_handler/ |
| User scripting function to run at startup, 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 change as if by itself or indirectly because of other actions.
This sum can assume the following values:
| string | Script to start at startup | User scripting function to run at startup, with the startup reason as argument (or only at cold boot if configured to) | user functions[the value] |
| constant "" | None | Don't run any scripting function at startup | |
Sample requests read command:
print(requests.get('http://192.168.0.100/restapi/script/boot_handler/',auth=auth,headers=headers).json())
⇒
''
Sample requests write command:
requests.put('http://192.168.0.100/restapi/script/boot_handler/',auth=auth,headers=headers,json='')
| sum (boolean) | script/boot_handler_legacy/ |
| Run startup script only on cold boot and omit the argument | |
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 uom library write command:
uom.script.boot_handler_legacy=false
Sample curl read command:
curl --digest -u admin:1234 -H "Accept: application/json" "http://192.168.0.100/restapi/script/boot_handler_legacy/"
⇒
true
| map | script/threads/ |
| Map of user scripting threads | |
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 can change as if by itself or indirectly because of other actions.
Changes to this map cannot be tracked.
This map contains Scripting thread elements.
Creating elements in this collection is not supported.
Sample uom library read command:
print(uom.dump(uom.script.threads))
⇒
{["64"]={label="label of thread #64"}}
Sample CLI read command:
uom get "script/threads"
⇒
See also Thread map: Scripting thread
| object | script/threads/S/ |
| User scripting thread status | |
This object is a part of a composite value which is modified as a whole.
This object contains the following items:
| label | Label |
Sample uom library write command (note that _scripting_thread is a variable):
uom.script.threads[_scripting_thread]={label="label of thread #45"}
Sample requests read command (note that _scripting_thread is a variable):
print(requests.get('http://192.168.0.100/restapi/script/threads/'+_scripting_thread+'/',auth=auth,headers=headers).json())
⇒
{'label': 'label of thread #22'}
| string | script/threads/S/label/ |
| User thread label | |
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 _scripting_thread is a variable):
print(uom.dump(uom.script.threads[_scripting_thread].label))
⇒
"label of thread #51"
Sample JS request read command (note that _scripting_thread is a variable):
request.get({url:"script/threads/"+_scripting_thread+"/label/"},function(error,response,body) {console.log(body)});
⇒
"label of thread #16"
| call | script/start/ |
| Start a user scripting thread | |
Performing the function call is denied if not administrative user
The call accepts the following arguments:
The call returns the following results:
Sample uom library invocation:
print(uom.dump(uom.script.start({displayed_source="Toggle modem",user_function="toggle_modem"})))
⇒
"18"
Sample JS request invocation:
request.post({url:"script/start/",body:[{"source":"fn(1,\"routers\",\"heaters\",\"machine\",\"router\")","user_function":"shut_down_contraptions"}]});
⇒
"53"
See also Start a script thread: Code source
| string | script/start/results: 1/ |
| Identifier of the started thread | |
The value is subject to the following constraints: thread map[the value]
This string does not correspond to an actual resource.
| object | script/start/arguments: 1/ |
| Source of the code to run | |
This object does not correspond to an actual resource.
This object contains the following items:
| user_function | User function, if any |
| source | User code, if any |
| displayed_source | Displayed source code, if any |
| sum (optional string) | script/start/arguments: 1/user_function/ |
| Name of user function to run, if any | |
This sum does not correspond to an actual resource.
This sum can assume the following values:
| constant null | No user function is run | The source of code is not a user function | |
| string | User function | Name of user function to run | user functions[the value] |
| sum (optional string) | script/start/arguments: 1/source/ |
| Explicit code to run as user script (if user_function is not set or is an existing user script function), if any | |
This sum does not correspond to an actual resource.
This sum can assume the following values:
| constant null | User function invocation | The user_function is invoked with no arguments | |
| string | User code | Explicit code to run as user script (if user_function is not set or is an existing user script function) | |
| sum (optional string) | script/start/arguments: 1/displayed_source/ |
| Source code describing thread overview (doesn't have to be valid code), if any | |
This sum does not correspond to an actual resource.
This sum can assume the following values:
| constant null | Use default | Display source, or user_function name | |
| string | Displayed source code | Source code describing thread overview (doesn't have to be valid code) | |
| call | script/stop/ |
| Stop a user scripting thread, or all user scripting threads | |
Performing the function call is denied if not administrative user
The call accepts the following arguments:
The call returns the following results:
Sample CLI invocation:
uom invoke "script/stop" "\"82\""
⇒
null
Sample JS request invocation:
request.post({url:"script/stop/",body:["95"]});
⇒
null
| sum (string) | script/stop/arguments: 1/ |
| Identifier of the thread to stop, or "all" to stop all threads | |
This sum does not correspond to an actual resource.
This sum can assume the following values:
| string | Thread ID | Identifier of the thread to stop | thread map[the value] |
| constant "all" | All threads | Stop all threads | |
| constant null | script/stop/results: 1/ |
| No additional information available | |
This constant does not correspond to an actual resource.
| map | script/variables/ |
| Elements of the script's external table | |
This map can change as if by itself or indirectly because of other actions.
This map contains Script external variable elements.
Sample curl read command:
curl --digest -u admin:1234 -H "Accept: application/json" "http://192.168.0.100/restapi/script/variables/"
⇒
{"contraption_state":true}
Sample JS request read command:
request.get({url:"script/variables/"},function(error,response,body) {console.log(body)});
⇒
{"heater_temperature":false,"engine_status":5,"heater_running":1,"heater_state":false}
| sum (variant) | script/variables/S/ |
| Element of the script's external table | |
This sum can change as if by itself or indirectly because of other actions.
This sum can assume the following values:
| constant true | True | True | |
| constant false | False | False | |
| string | String | This string | |
| number | Number | This number | |
Sample CLI write command (note that script_external_variable is a variable):
uom set "script/variables/${script_external_variable}" "false"
Sample uom library read command (note that _script_external_variable is a variable):
print(uom.dump(uom.script.variables[_script_external_variable]))
⇒
false
| sum (boolean) | script/traced/ |
| Perform step-by-step logging of script operation | |
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 uom library read command:
print(uom.dump(uom.script.traced))
⇒
false
Sample requests write command:
requests.put('http://192.168.0.100/restapi/script/traced/',auth=auth,headers=headers,json=False)
| number | script/step_delay/ |
| Delay after executing legacy scripting functions | |
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 write command:
uom set "script/step_delay" "1"
Sample CLI read command:
uom get "script/step_delay"
⇒
2
| number | script/step_time_limit/ |
| Maximum amount of time a scripting thread is allowed to run uninterrupted | |
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 read command:
print(requests.get('http://192.168.0.100/restapi/script/step_time_limit/',auth=auth,headers=headers).json())
⇒
15
Sample CLI read command:
uom get "script/step_time_limit"
⇒
25
| object | script/notifications/ |
| Scripting server 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 JS request read command:
request.get({url:"script/notifications/"},function(error,response,body) {console.log(body)});
⇒
<...>
Sample uom library read command:
print(uom.dump(uom.script.notifications))
⇒
<...>
| object | script/notifications/parameter_kinds/ |
| Kinds of event parameters | |
This object does not correspond to an actual resource.
This object contains the following items:
See also Parameter kinds: Script message
See also Parameter kinds: Script data
See also Parameter kinds: Thread ID
See also Parameter kinds: Thread name
See also Parameter kinds: Thread origin, if any
See also Parameter kinds: Thread start reason, if any
See also Parameter kinds: Thread stop reason
See also Parameter kinds: Thread state
See also Parameter kinds: Thread error
| map | script/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 curl read command:
curl --digest -u admin:1234 -H "Accept: application/json" "http://192.168.0.100/restapi/script/notifications/events/"
⇒
...
Sample JS request read command:
request.get({url:"script/notifications/events/"},function(error,response,body) {console.log(body)});
⇒
<...>
See also Events: Event
| string | script/notifications/parameter_kinds/script_message/ |
| Message for the script-generated event | |
| map | script/notifications/parameter_kinds/script_data/ |
| Data of the script-generated event | |
This map contains Script data element elements.
| sum (variant) | script/notifications/parameter_kinds/script_data/S/ |
| Element of script-generated event data | |
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 | |
| string | script/notifications/parameter_kinds/thread_id/ |
| Thread identifier | |
| string | script/notifications/parameter_kinds/thread_name/ |
| Thread human-readable name | |
| sum (optional string) | script/notifications/parameter_kinds/thread_origin/ |
| Origin of the thread, if any | |
This sum can assume the following values:
| constant null | Unknown origin | Origin of this thread is not known | |
| string | Thread origin | Origin of the thread | |
| sum (optional string) | script/notifications/parameter_kinds/thread_start_reason/ |
| Reason of the thread start, if any | |
This sum can assume the following values:
| constant null | Unknown start reason | Reason of the thread start is not known | |
| string | Thread start reason | Reason of the thread start | |
| string | script/notifications/parameter_kinds/thread_stop_reason/ |
| Reason of the thread stop | |
| sum (boolean) | script/notifications/parameter_kinds/thread_state/ |
| Thread execution state | |
This sum can assume the following values:
| constant true | Running | The thread is running | |
| constant false | Stopped | The thread is stopped | |
| string | script/notifications/parameter_kinds/thread_error/ |
| Thread execution error description | |
| object | script/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 uom library write command (note that _event and _event_parameter_index are variables):
uom.script.notifications.events[_event].parameters[_event_parameter_index]={fixed_value=null,has_fixed_value=false,id="thread_id"}
Sample requests write command (note that _event and _event_parameter_index are variables):
requests.put('http://192.168.0.100/restapi/script/notifications/events/'+_event+'/parameters/'+str(_event_parameter_index)+'/',auth=auth,headers=headers,json={'fixed_value': False, 'has_fixed_value': True, 'id': 'thread_state'})
| string | script/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.script.notifications.events[_event].parameters[_event_parameter_index].id))
⇒
"thread_origin"
Sample CLI read command (note that event and event_parameter_index are variables):
uom get "script/notifications/events/${event}/parameters/${event_parameter_index}/id"
⇒
"thread_name"
| sum (boolean) | script/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 CLI read command (note that event and event_parameter_index are variables):
uom get "script/notifications/events/${event}/parameters/${event_parameter_index}/has_fixed_value"
⇒
false
Sample uom library read command (note that _event and _event_parameter_index are variables):
print(uom.dump(uom.script.notifications.events[_event].parameters[_event_parameter_index].has_fixed_value))
⇒
false
| sum (variant) | script/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 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/script/notifications/events/:event/parameters/:event_parameter_index/fixed_value/"
⇒
null
Sample CLI read command (note that event and event_parameter_index are variables):
uom get "script/notifications/events/${event}/parameters/${event_parameter_index}/fixed_value"
⇒
true
| object | script/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 read command (note that _event is a variable):
print(requests.get('http://192.168.0.100/restapi/script/notifications/events/'+_event+'/',auth=auth,headers=headers).json())
⇒
{'severity': 5, 'message_template': ['no longer running a script function at boot since the function no longer exists in the script source'], 'parameters': {}}
Sample JS request read command (note that _event is a variable):
request.get({url:"script/notifications/events/"+_event+"/"},function(error,response,body) {console.log(body)});
⇒
| array | script/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 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/script/notifications/events/:event/message_template/"
⇒
[0,":",1," [",2,"] (",3,") failed: ",4]
Sample uom library read command (note that _event is a variable):
print(uom.dump(uom.script.notifications.events[_event].message_template))
⇒
{0,":",1," [",2,"] (",3,") failed: ",4}
| sum (variant) | script/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 requests read command (note that _event and _message_template_element_index are variables):
print(requests.get('http://192.168.0.100/restapi/script/notifications/events/'+_event+'/message_template/'+str(_message_template_element_index)+'/',auth=auth,headers=headers).json())
⇒
0
Sample CLI read command (note that event and message_template_element_index are variables):
uom get "script/notifications/events/${event}/message_template/${message_template_element_index}"
⇒
0
| sum (enumerated number) | script/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 CLI read command (note that event is a variable):
uom get "script/notifications/events/${event}/severity"
⇒
6
Sample requests read command (note that _event is a variable):
print(requests.get('http://192.168.0.100/restapi/script/notifications/events/'+_event+'/severity/',auth=auth,headers=headers).json())
⇒
4
| array | script/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 CLI read command (note that event is a variable):
uom get "script/notifications/events/${event}/parameters"
⇒
Sample uom library read command (note that _event is a variable):
print(uom.dump(uom.script.notifications.events[_event].parameters))
⇒
See also Event parameters: Event parameter