DLI DC3 Object Model Reference
|
object | notification/ |
Object representing the event notification server configuration |
Retrieving the value is denied if not administrative user
This object contains the following items:
sinks | Sinks |
rules | Rules |
known_sink_types | Sink types |
sink_data_item_groups | Sink data item groups |
Sample JS request
write command:
request.put({url:"notification/",body:<...>});
Sample requests
read command:
print(requests.get('http://192.168.0.100/restapi/notification/',auth=auth,headers=headers).json())
⇒
<...>
array | notification/sinks/ |
Sink array |
Retrieving the value is denied if not administrative user
Changing the value is denied if any of the following is true:
This array represents a value in persistent storage.
This array contains Sink elements.
Sample requests
read command:
print(requests.get('http://192.168.0.100/restapi/notification/sinks/',auth=auth,headers=headers).json())
⇒
Sample CLI sink creation command:
uom insert "notification/sinks/0" "{\"test\":{\"1\":{\"value\":\"function\"},\"results\":[\"Sink handler indicates notification failure, check log for errors\"],\"arguments\":[]},\"type\":\"snmpv1\",\"name\":\"steven\",\"data\":{\"community\":\"L\",\"specific_trap_type\":\"2640\",\"generic_trap_type\":\"2\",\"enterprise_oid\":\"1.0,,,,,,,\",\"server\":\"3tyuc.jf7urw.9cmbgz.example.com\"}}"
object | notification/sinks/N/ |
Event sink |
Retrieving the value is denied if not administrative user
This object represents a value in persistent storage.
This object contains the following items:
name | Name |
type | Type |
data | Data |
test | Test |
Sample uom
library deletion command (note that _sink_index
is a variable):
uom.remove(uom.notification.sinks,_sink_index)
Sample CLI write command (note that sink_index
is a variable):
uom set "notification/sinks/${sink_index}" "{\"test\":{\"1\":{\"value\":\"function\"},\"results\":[true],\"arguments\":[]},\"type\":\"snmpv2ci\",\"name\":\"christopher\",\"data\":{\"trap_oid\":\"2.343097923811,,\",\"server\":\"djvkx.w926.9l46t.example.com\",\"community\":\"t]<\"}}"
See also Sink: Name
See also Sink: Type
See also Sink: Data
See also Sink: Test
string | notification/sinks/N/name/ |
Sink name (can be shared between sinks) |
Retrieving the value is denied if not administrative user
Changing the value is denied if any of the following is true:
This string represents a value in persistent storage.
Sample JS request
read command (note that _sink_index
is a variable):
request.get({url:"notification/sinks/"+_sink_index.toString()+"/name/"},function(error,response,body) {console.log(body)});
⇒
"edward"
Sample curl
write command (note that :sink_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 "\"robert\"" "http://192.168.0.100/restapi/notification/sinks/:sink_index/name/"
string | notification/sinks/N/type/ |
Sink type |
The value is subject to the following constraints: sink types[the value]
Retrieving the value is denied if not administrative user
Changing the value is denied if any of the following is true:
This string represents a value in persistent storage.
Sample CLI read command (note that sink_index
is a variable):
uom get "notification/sinks/${sink_index}/type"
⇒
"email"
Sample CLI write command (note that sink_index
is a variable):
uom set "notification/sinks/${sink_index}/type" "\"snmpv2c\""
map | notification/sinks/N/data/ |
Sink-type-specific data |
Retrieving the value is denied if not administrative user
Changing the value is denied if any of the following is true:
This map represents a value in persistent storage.
This map contains Data item elements.
Sample curl
write command (note that :sink_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 "{\"password\":\"q;\",\"sender\":\"richard@bn47.duyr.c5p80.example.com\",\"recipient\":\"james@jgak-.qxsx13.example.com\"}" "http://192.168.0.100/restapi/notification/sinks/:sink_index/data/"
Sample JS request
data item creation command (note that _sink_index
is a variable):
request.put({url:"notification/sinks/"+_sink_index.toString()+"/data/sender/",body:"jason@3osyra.zkcho.sx6a.example.com"});
string | notification/sinks/N/data/S/ |
Item of sink-type-specific data |
The value is subject to the following constraints: the value matches sink types[type].data_items[index of the value].regexp
Retrieving the value is denied if any of the following is true:
Changing the value is denied if any of the following is true:
Using the string as a field for indexing into the grandparent collection is denied if any of the following is true:
This string represents a value in persistent storage.
This string should be displayed in a secure manner if all of the following is true:
Sample requests
write command (note that _sink_index
and _data_item
are variables):
requests.put('http://192.168.0.100/restapi/notification/sinks/'+str(_sink_index)+'/data/'+_data_item+'/',auth=auth,headers=headers,json='kevin')
Sample curl
write command (note that :sink_index
and :data_item
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 "\"KKTJv&[1E$,!Vm}'\"" "http://192.168.0.100/restapi/notification/sinks/:sink_index/data/:data_item/"
call | notification/sinks/N/test/ |
Send a test notification using this sink |
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 JS request
invocation (note that _sink_index
is a variable):
request.post({url:"notification/sinks/"+_sink_index.toString()+"/test/",body:[]});
⇒
true
Sample CLI invocation (note that sink_index
is a variable):
uom invoke "notification/sinks/${sink_index}/test"
⇒
true
sum (variant) | notification/sinks/N/test/results: 1/ |
Notification success or failure message |
This sum does not correspond to an actual resource.
This sum can assume the following values:
constant true | Success | The notification has succeeded | |
string | Failure | The notification has failed with the following error |
array | notification/rules/ |
Event processing rule list |
Retrieving the value is denied if not administrative user
Changing the value is denied if any of the following is true:
This array represents a value in persistent storage.
This array contains Rule elements.
Sample CLI write command:
uom set "notification/rules" "[{\"condition\":\"severity>=INFO\",\"action\":\"notify(\\\"daniel\\\")\"}]"
Sample requests
write command:
requests.put('http://192.168.0.100/restapi/notification/rules/',auth=auth,headers=headers,json=[{'condition': 'severity>=CRITICAL', 'action': 'notify("richard")'}])
See also Rules: Rule
object | notification/rules/N/ |
Event processing rule |
Retrieving the value is denied if not administrative user
This object represents a value in persistent storage.
This object contains the following items:
condition | Rule condition |
action | Rule action |
Sample CLI deletion command (note that rule_index
is a variable):
uom remove "notification/rules/${rule_index}"
Sample JS request
deletion command (note that _rule_index
is a variable):
request.delete({url:"notification/rules/"+_rule_index.toString()+"/"});
string | notification/rules/N/condition/ |
Lua expression to evaluate for events to be matched |
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 any of the following is true:
This string represents a value in persistent storage.
Sample curl
read command (note that :rule_index
is a URL template argument):
curl --digest -u admin:1234 -H "Accept: application/json" "http://192.168.0.100/restapi/notification/rules/:rule_index/condition/"
⇒
"severity>=DEBUG"
Sample CLI read command (note that rule_index
is a variable):
uom get "notification/rules/${rule_index}/condition"
⇒
"severity>=DEBUG"
string | notification/rules/N/action/ |
Lua code to evaluate for matching events |
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 any of the following is true:
This string represents a value in persistent storage.
Sample requests
read command (note that _rule_index
is a variable):
print(requests.get('http://192.168.0.100/restapi/notification/rules/'+str(_rule_index)+'/action/',auth=auth,headers=headers).json())
⇒
'notify("william")'
Sample requests
write command (note that _rule_index
is a variable):
requests.put('http://192.168.0.100/restapi/notification/rules/'+str(_rule_index)+'/action/',auth=auth,headers=headers,json='notify("james")')
map | notification/known_sink_types/ |
Known sink types |
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 Sink type elements.
Creating elements in this collection is not supported.
Sample CLI read command:
uom get "notification/known_sink_types"
⇒
...
Sample curl
read command:
curl --digest -u admin:1234 -H "Accept: application/json" "http://192.168.0.100/restapi/notification/known_sink_types/"
⇒
...
object | notification/known_sink_types/S/ |
Type of sink |
Retrieving the value is denied if not administrative user
This object is a part of a composite value which is modified as a whole.
This object contains the following items:
name | Name |
data_items | Supported data items |
Sample requests
read command (note that _sink_type
is a variable):
print(requests.get('http://192.168.0.100/restapi/notification/known_sink_types/'+_sink_type+'/',auth=auth,headers=headers).json())
⇒
Sample CLI read command (note that sink_type
is a variable):
uom get "notification/known_sink_types/${sink_type}"
⇒
See also Sink type: Name
See also Sink type: Supported data items
string | notification/known_sink_types/S/name/ |
Sink type name |
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 sink_type
is a variable):
uom get "notification/known_sink_types/${sink_type}/name"
⇒
"Email"
Sample uom
library read command (note that _sink_type
is a variable):
print(uom.dump(uom.notification.known_sink_types[_sink_type].name))
⇒
"WebHook"
map | notification/known_sink_types/S/data_items/ |
Properties of supported data items |
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 Data item properties elements.
Creating elements in this collection is not supported.
Sample CLI read command (note that sink_type
is a variable):
uom get "notification/known_sink_types/${sink_type}/data_items"
⇒
{"password":{"regexp":"^.*$","name":"Password","group":"sndrkey"},"sender":{"group":"sndr","name":"Sender XMPP ID","regexp":"^..*@[0-9A-Za-z.-]{1,}$"},"recipient":{"group":"rcpt","name":"Recipient XMPP ID","regexp":"^..*@[0-9A-Za-z.-]{1,}$"}}
Sample requests
read command (note that _sink_type
is a variable):
print(requests.get('http://192.168.0.100/restapi/notification/known_sink_types/'+_sink_type+'/data_items/',auth=auth,headers=headers).json())
⇒
object | notification/known_sink_types/S/data_items/S/ |
Properties of data item |
This object is a part of a composite value which is modified as a whole.
This object contains the following items:
name | Name |
group | Data item group |
regexp | Regular expression |
Sample JS request
read command (note that _sink_type
and _data_item_properties
are variables):
request.get({url:"notification/known_sink_types/"+_sink_type+"/data_items/"+_data_item_properties+"/"},function(error,response,body) {console.log(body)});
⇒
{"regexp":"^.*$","name":"Security name","group":"msg"}
Sample JS request
write command (note that _sink_type
and _data_item_properties
are variables):
request.put({url:"notification/known_sink_types/"+_sink_type+"/data_items/"+_data_item_properties+"/",body:{"group":"rcpt","name":"Recipient subnets","regexp":"^(|(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])(/([0-9]|1[0-9]|2[0-9]|3[0-2]))?(,(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])(/([0-9]|1[0-9]|2[0-9]|3[0-2]))?)*)$"}});
string | notification/known_sink_types/S/data_items/S/name/ |
Data item name |
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 _sink_type
and _data_item_properties
are variables):
print(requests.get('http://192.168.0.100/restapi/notification/known_sink_types/'+_sink_type+'/data_items/'+_data_item_properties+'/name/',auth=auth,headers=headers).json())
⇒
'Server port'
Sample JS request
read command (note that _sink_type
and _data_item_properties
are variables):
request.get({url:"notification/known_sink_types/"+_sink_type+"/data_items/"+_data_item_properties+"/name/"},function(error,response,body) {console.log(body)});
⇒
"Community string"
string | notification/known_sink_types/S/data_items/S/group/ |
The group of data items to which this one belongs |
The value is subject to the following constraints: sink data item groups[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 CLI read command (note that sink_type
and data_item_properties
are variables):
uom get "notification/known_sink_types/${sink_type}/data_items/${data_item_properties}/group"
⇒
"rcpt"
Sample requests
read command (note that _sink_type
and _data_item_properties
are variables):
print(requests.get('http://192.168.0.100/restapi/notification/known_sink_types/'+_sink_type+'/data_items/'+_data_item_properties+'/group/',auth=auth,headers=headers).json())
⇒
'msgkey'
string | notification/known_sink_types/S/data_items/S/regexp/ |
Regular expression which the data item must match |
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 _sink_type
and _data_item_properties
are variables):
print(requests.get('http://192.168.0.100/restapi/notification/known_sink_types/'+_sink_type+'/data_items/'+_data_item_properties+'/regexp/',auth=auth,headers=headers).json())
⇒
'^(|.{8,})$'
Sample curl
read command (note that :sink_type
and :data_item_properties
are URL template arguments):
curl --digest -u admin:1234 -H "Accept: application/json" "http://192.168.0.100/restapi/notification/known_sink_types/:sink_type/data_items/:data_item_properties/regexp/"
⇒
"^[0-9A-Za-z.-]{1,}$"
map | notification/sink_data_item_groups/ |
Properties of groups of sink data items |
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 Sink data item group elements.
Creating elements in this collection is not supported.
Sample CLI read command:
uom get "notification/sink_data_item_groups"
⇒
Sample requests
read command:
print(requests.get('http://192.168.0.100/restapi/notification/sink_data_item_groups/',auth=auth,headers=headers).json())
⇒
See also Sink data item groups: Sink data item group
object | notification/sink_data_item_groups/S/ |
Properties of a group of sink data items |
Retrieving the value is denied if not administrative user
This object is a part of a composite value which is modified as a whole.
This object contains the following items:
name | Name |
secret | Secret |
immutable | Immutable |
unreadable | Unreadable |
Sample CLI read command (note that sink_data_item_group
is a variable):
uom get "notification/sink_data_item_groups/${sink_data_item_group}"
⇒
{"immutable":false,"unreadable":false,"name":"Sender attribute","secret":false}
Sample requests
write command (note that _sink_data_item_group
is a variable):
requests.put('http://192.168.0.100/restapi/notification/sink_data_item_groups/'+_sink_data_item_group+'/',auth=auth,headers=headers,json={'immutable': False, 'unreadable': False, 'name': 'Message key', 'secret': True})
string | notification/sink_data_item_groups/S/name/ |
Data item group name |
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 sink_data_item_group
is a variable):
uom get "notification/sink_data_item_groups/${sink_data_item_group}/name"
⇒
"Sender key"
Sample curl
read command (note that :sink_data_item_group
is a URL template argument):
curl --digest -u admin:1234 -H "Accept: application/json" "http://192.168.0.100/restapi/notification/sink_data_item_groups/:sink_data_item_group/name/"
⇒
"Recipient attribute"
sum (boolean) | notification/sink_data_item_groups/S/secret/ |
Flag indicating whether the data item can contain private information |
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 | Secret | The data item can contain private information | |
constant false | Not secret | The data item contains only public information |
Sample requests
read command (note that _sink_data_item_group
is a variable):
print(requests.get('http://192.168.0.100/restapi/notification/sink_data_item_groups/'+_sink_data_item_group+'/secret/',auth=auth,headers=headers).json())
⇒
True
Sample CLI read command (note that sink_data_item_group
is a variable):
uom get "notification/sink_data_item_groups/${sink_data_item_group}/secret"
⇒
false
sum (boolean) | notification/sink_data_item_groups/S/immutable/ |
Flag indicating whether the data item is not permitted to be changed |
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 | Immutable | The data item is not permitted to be changed | |
constant false | Not immutable | The data item can be changed |
Sample JS request
read command (note that _sink_data_item_group
is a variable):
request.get({url:"notification/sink_data_item_groups/"+_sink_data_item_group+"/immutable/"},function(error,response,body) {console.log(body)});
⇒
false
Sample requests
read command (note that _sink_data_item_group
is a variable):
print(requests.get('http://192.168.0.100/restapi/notification/sink_data_item_groups/'+_sink_data_item_group+'/immutable/',auth=auth,headers=headers).json())
⇒
False
sum (boolean) | notification/sink_data_item_groups/S/unreadable/ |
Flag indicating whether the data item is not permitted to be read |
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 | Unreadable | The data item is not permitted to be read | |
constant false | Not unreadable | The data item can be read |
Sample CLI read command (note that sink_data_item_group
is a variable):
uom get "notification/sink_data_item_groups/${sink_data_item_group}/unreadable"
⇒
false
Sample requests
read command (note that _sink_data_item_group
is a variable):
print(requests.get('http://192.168.0.100/restapi/notification/sink_data_item_groups/'+_sink_data_item_group+'/unreadable/',auth=auth,headers=headers).json())
⇒
False