Reasoners
Contents
- 1 Reasoner by property
- 2 Reasoner by Resource
- 3 Reasoner Increment, Decrement, Set
Reasoner by property
Reasoner For Each
Create
Reasoner For each create by property :
For each entity that was returned by observer the system will create a new entity with the settings assigned
1-MainMenu/Activities/Reasoner
2-Click create
3-Select For each
3-Enter a Name
4-Once The Reasoner editor is open
5-Enter Description
6-Select the observer
7-Select Topics from where you are getting the observation
8-Select Action Create
9-Dialog Box for create will be open
10-Select type of entity you want to create
11-Enter a label to identify the action
12-On action on the right side select The Action label for Create inside will be a list of fields :
Continue on failure is a boolean true or false. User can said if he wants to continue even if there is failure.
Update if exist is a boolean or or false. If true user can update any fields
New Entity fieldsUser will fill all the required fields to Create the new Entity
12-Run the reasoner
13-Select observation from where user wants to get the info for the binding etc
Update
Reasoner for Each Update by property:
For each entity that was returned by observer the system will update the entities with the new values
Same steps as created but Action will be Update
Entity fields User will fill all the required fields to Update the Entity
-Run the reasoner
-Select observation from where user wants to get the info
Delete
Reasoner For each Delete by property
The system will delete all the entities returned by observer on the specified Tenant
Same steps as create just
-Select Action Delete
-Enter a name for the action Delete
-Click Run to run reasoner
- Select observation
Send Notifications
Reasoner for each Send Notifications by properties
The system will send the notification to the specified tenant according to the setting on media
Same steps as Create
-On Action, Select Send Notification. The dialog box to configure the action Send Notification will be open.
-Enter a name for the action Send Notification, Select the Notification template, Select by property
-On action on the right side select the Send Notification action inside user will see
Action Send Notification Fields
Destinatario where user can specify the email address of the person to receive the notification
Media
”dap” to display the notification on the screen of tenant only
”mail” notification by mail only
”dap,mail”by mail and screen both
Continue on failure is a boolean true or false. User can said if he wants to continue even if there is failure
Notification Fields User will assign values to the place holders of the notification templates
note: If the notification template does not have placeholder there will not be notification fields
-Click Run to run reasoner
- Select observation
Send Observations
Reasoner For each Send Observations by properties
For each entity that was returned the system will send a new observation with the information entered on new observation fields
Same steps as Create
-On on Action and Select Send Observation action
-Dialog box for the settings for the action will be open, select the type of observation, select by property and Enter a name for the Observation to be send
-On action on the right side select the Send Observation inside will be a list of fields :
Action Send Observation Fields
Tenant Binding where user will specify in which Tenant he wants to send the Observation
Continue on failure is a boolean true or false. User can said if he wants to continue even if there is failure
New Observation fields User will fill all the required fields to send that observation
-Run the reasoner
-Select observation from where user wants to get the info
Schedule Observations
Reasoner For each Send Schedule Observations by properties
For each entity that was returned the system will schedule to send a new observation with the information entered on the settings
-Select Action Schedule Observation
-Enter a name for the Schedule
-Select the type of Observation to be send
-On action on the right side select the Schedule Observation inside will be a list of fields :
Identifier To ID this task inside the system
Tenant Binding, where user will specify in which Tenant he wants to send the Observation
seconds definition to the level of seconds to send the observation
Minutes definition to the level of minutes to send the observation
hours definition to the level of Hours to send the observation
days months
Occurrence 0 must enter frequency like; sec, mins, hours etc If user for example enters frequency days that means observation will be send every day forever Starting on the Start date and Time
Occurrence 1 frequency will be ignore. The system will send that schedule observation on the Start Date and Time only once
Occurrence 2 or more must enter frequency. The system will send the observation according to frequency and Start Date and Time. An example if observer return two entities or things and start time is 10:22 am occurrence is 2 and frequency is 2 mins. the system will send 2 observations at 10:22 am and will send another 2 observations at 10:24 am
Years
Continue on failure is a boolean true or false. User can said if he wants to continue even if there is failure
New Observation fields User will fill all the required fields to send that observation
-Run the reasoner
-Select observation from where user wants to get the info
Reasoner At Least One
Create
1-MainMenu/Activities/Reasoner
2-Click create
3-Select At least one entity
4-Enter a Name
5-Once The Reasoner editor is open
6-Enter Description
7-Select the observer
8-Select Topic from where you are getting the observation
9-Select Action Create
10-Dialog Box for create will be open
11-Select type of entity you want to create
12-Enter a label to identify the action
13-On action on the right side select The Action label for Create inside will be a list of fields :
Tenant Binding, where user will specify in which Tenant he wants to Create the Entity
Continue on failure is a boolean true or false. User can said if he wants to continue even if there is failure
New Entity fields User will fill all the required fields to Create the new Entity
14-Run the reasoner
15-Select observation from where user wants to get the info for the binding etc
expected results
If observer return at least one entity the system will create a new entity with the settings assigned
Send Notifications
Same steps as create just Select action Send Notification and select the template for the notification
On action on the right side select the Send Notification action inside user will see:
Tenant Binding, where user will specify in which Tenant he wants to send the notification
Destinatario, where user can specify the email address of the person to receive the notification
Media has three options
-”dap” to display the notification on the screen of tenant only
-”mail” notification by mail only
-”dap,mail” by mail and screen both
Continue on failure is a boolean true or false. User can said if he wants to continue even if there is failure
Notification Fields User will assign values to the place holders of the notification templates
notes:If the notification template does not have placeholder there will not be notification fields
Click Run to run reasoner
Select observation
expected results
If observer return at least one entity The system will send the notification to the specified tenant according to the setting on media
Send Observations
Same as create just select Action send Observation, Then select the type of observation you want to send Assign values on the right side to the observation fields
-Run the reasoner
-Select observation from where user wants to get the info
expected results
If observer return at least one entity The system will send a new observation with the information entered on new observation fields
Schedule Observations
The same as send observation on Action select schedule observations user just need to specify Initiation Date and time, occurrence and frequency
Note:
Occurrence 0 must enter frequency like; sec, mins, hours etc If user for example enters frequency days that means observation will be send every day forever Starting on the Start date and Time
Occurrence 1 frequency will be ignore. The system will send that schedule observation on the Start Date and Time only once
Occurrence 2 or more must enter frequency. The system will send the observation according to frequency and Start Date and Time
Expected
If Observer return at least one entity the system will Schedule to send a new Observation
Reasoner Observation Only
Create
1-MainMenu/Activities/Reasoner
2-Click create
3-Select Only Observation
4-Enter a Name
5-Once The Reasoner editor is open
6-Enter Description
7-Select the observer
8-Select Topic from where you are getting the observation
9-Select Action Create
10-Dialog Box for create will be open
11-Select type of entity you want to create
12-Enter a label to identify the action
13-On action on the right side select Enter Info for required fileds to Create the new Entity
14-Run the reasoner
15-Select observation from where user wants to get the info for the binding etc
expected results
If Observer results is positive The system will Create a new Entity with the information entered on the settings
Send Notifications
-Enter a name for the action Send Notification
Select the notification template
-On action on the right side select the Send Notification .Enter info
-Click Run to run reasoner
- Select observation
expected results
If the run of observer is positive The system will send the notification to the specified tenant according to the setting on media
Send Observations
-Select Action Send Observation
-Enter a name for the Observation
-Select the type of Observation to be send
-On action on the right side select the Send Observation inside will be a list of fields :
- Filelds are the same for all sendObservation
-Run the reasoner
-Select observation from where user wants to get the info
expected results
If the run of observer is positive The system will send a new observation with the information entered on new observation fields
Schedule Observations
function(newobservation,observation){
newobservation._name = "ScheduleSendObserRecursoObsOnly"; newobservation.topic = observation.topic; newobservation.producer = observation.producer;
}
Expected If the run of Observer is positive the system will Send the observation
according to the schedule
Reasoner Absence of Things
Create
1-MainMenu/Activities/Reasoner
2-Click create
3-Select Observer does not return Entity
4-Enter a Name
5-Once The Reasoner editor is open
6-Enter Description
7-Select the observer
8-Select Topic from where you are getting the observation
9-Select Action Create
10-Dialog Box for create will be open
11-Select type of entity you want to create
12-Enter a label to identify the action
13-On action on the right side select The Action label for Create inside will be a list of fields :
Fields are the same for all create actions
14-Run the reasoner
15-Select observation from where user wants to get the info for the binding etc
expected results
If observer run is positive and does not return Entity the system will create a new entity with the settings assigned
Send Notifications
Same steps as create just Select action Send Notification and select the template for the notification
On action on the right side select the Send Notification action inside user will see:
Tenant Binding, where user will specify in which Tenant he wants to send the notification
Destinatario, where user can specify the email address of the person to receive the notification
Media has three options
-”dap” to display the notification on the screen of tenant only
-”mail” notification by mail only
-”dap,mail” by mail and screen both
Continue on failure is a boolean true or false. User can said if he wants to continue even if there is failure
Notification Fields User will assign values to the place holders of the notification templates
notes:If the notification template does not have placeholder there will not be notification fields
Click Run to run reasoner
Select observation
expected results
In absence of entities .The system will send the notification to the specified tenant according to the setting on media
Send Observations
Select Action Send Observation
-Enter a name for the Observation
-Select the type of Observation to be send
-On action on the right side select the Send Observation inside will be a list of fields :
Enter values for those fields
-Run the reasoner
-Select observation from where user wants to get the info
expected results
If observer run is positive and does not return Entity The system will send a new observation with the information entered on new observation fields
Schedule Observations
-Select Action Schedule Observation
-Enter a name for the Schedule
-Select the type of Observation to be send
-On action on the right side select the Schedule Observation inside will be a list of fields :
user needs to specify Initiation Date and time, occurrence and frequency
Note:
Occurrence 0 must enter frequency like; sec, mins, hours etc If user for example enters frequency days that means observation will be send every day forever Starting on the Start date and Time
Occurrence 1 frequency will be ignore. The system will send that schedule observation on the Start Date and Time only once
Occurrence 2 or more must enter frequency. The system will send the observation according to frequency and Start Date and Time
-Run the reasoner
Select observation from where user wants to get the info
Expected results
If observer run is positive and does not return Entity . The system will schedule to send a new observation with the information entered on the settings
Reasoner by Resource
Reasoner For each
Create
1-MainMenu/Activities/Reasoner
2-Click create
3-Select For Each entity
4-Enter a Name
5-Once The Reasoner editor is open
6-Enter Description
7-Select the observer
8-Select Topic from where you are getting the observation
9-Select Action Create,
10-Dialog Box for create will be open Select by recurso
11-Select type of entity you want to create
12-Enter a label to identify the action
13-On right side click on action
14-Select on right side new fields and user can see he can write the info using javascript
example :
function(newthing,observation,thing,summary){
newthing._name ="Entity77"+ new Date().getTime().toString(); newthing.DoubleData = observation.ObsDoubleData;
newthing.description ="Testing Create by recurso";
} Note: there are required fields if user does not enter them the reasoner wont run
15-Run reasoner
Expected
For each entity returned by observer system will create a new entity
Update
Same steps as Create
function(updatething,observation,thing){
updatedthing.description ="Bless be the ones who serve others. They are the ones who find heaven on earth."; updatedthing.CityPopulation = 123000123;
}
Expected The system will update each entity returned by the observer
Send Notification
same as for each send notification by properties
Delete
same as for each Delete by properties
Send Observations
function(newobservation,observation,thing){
newobservation._name = "SendObserRecurso"+ new Date().getTime().toString(); newobservation.topic = observation.topic; (Required field) newobservation.producer = observation.producer; (Required field)
}
Note: there are required fields if user does not enter them the reasoner wont run
Schedule Send Observation
The same as send observation user just need to specify Initiation Date and time, occurrence and frequency Note:
Occurrence 0 must enter frequency like; sec, mins, hours etc If user for example enters frequency days that means observation will be send every day forever Starting on the Start date and Time
Occurrence 1 frequency will be ignore. The system will send that schedule observation on the Start Date and Time only once
Occurrence 2 or more must enter frequency. The system will send the observation according to frequency and Start Date and Time
function(newobservation,observation,thing){
newobservation._name = "SendObserRecurso"+ new Date().getTime().toString(); newobservation.topic = observation.topic; (Required field) newobservation.producer = observation.producer; (Required field)
}
Note: there are required fields if user does not enter them the reasoner wont run
Expected
For each Entity returned by the observer the system will schedule to send a new observation
Reasoner At Least One
Create
1-MainMenu/Activities/Reasoner
2-Click create
3-Select At least one Entity
4-Enter a Name
5-Once The Reasoner editor is open
6-Enter Description
7-Select the observer
8-Select Topic from where you are getting the observation
9-Select Action Create,
10-Dialog Box for create will be open Select by recurso
11-Select type of entity you want to create
12-Enter a label to identify the action
13-On right side click on action
14-Select on right side new fields and user can see he can write the info using javascript
example :
function(newthing,observation,thing){
newthing._name ="Entity55"; newthing.DoubleData = observation.ObsDoubleData; newthing.description ="Testing Reasoner At least One Create by recurso";
}
Note: there are required fields if user does not enter them the reasoner wont run
15-Run reasoner
Expected If Observer return at least one Entity the system will create a new entity if observer does not return entity system won't create the new Entity
Send Notifications
same as send Notification by properties
Send Observations
function(newobservation,observation,thing){
newobservation._name = "SendObserRecurso333"; (Mandatory Field) newobservation.topic = observation.topic; (Mandatory Field) newobservation.producer = observation.producer; (Mandatory Field)
}
Schedule Send Observations
The same as send observation user just need to specify Initiation Date and time, occurrence and frequency Note:
Occurrence 0 must enter frequency like; sec, mins, hours etc If user for example enters frequency days that means observation will be send every day forever Starting on the Start date and Time
Occurrence 1 frequency will be ignore. The system will send that schedule observation on the Start Date and Time only once
Occurrence 2 or more must enter frequency. The system will send the observation according to frequency and Start Date and Time
function(newobservation,observation){ newobservation.producer = "Copertino";
}
Expected
If Observer return at least one entity the system will Schedule to send a new Observation
Reasoner Only Observations
Create
function(newthing,observation){ newthing._name ="EntityObsOnlyRecurso"; newthing.DoubleData = observation.ObsDoubleData; newthing.description ="Testing Reasoner Obs Only Create by recurso";
}
Expected
If the run of Observer is positive the system will Create a New Entity
Send Notifications
same as send notification by properties
Send Observations
function(newobservation,observation){ newobservation._name = "SendObserRecursoObsOnly"; newobservation.topic = observation.topic; (Mandatory field) newobservation.producer = observation.producer; (Mandatory field)
}
Expected
If the run of Observer is positive the system will Send the observation
Schedule Send Observations
The same as send observation on Action select schedule observations user just need to specify Initiation Date and time, occurrence and frequency
Note:
Occurrence 0 must enter frequency like; sec, mins, hours etc If user for example enters frequency days that means observation will be send every day forever Starting on the Start date and Time
Occurrence 1 frequency will be ignore. The system will send that schedule observation on the Start Date and Time only once
Occurrence 2 or more must enter frequency. The system will send the observation according to frequency and Start Date and Time
function(newobservation,observation){
newobservation._name = "ScheduleSendObserRecursoObsOnly"; newobservation.topic = observation.topic; newobservation.producer = observation.producer;
}
Expected
If the run of Observer is positive the system will Send the observation
according to the schedule
Reasoner Absence of things
Create
function(newthing,observation){ newthing._name ="EntityDoNotReturnRecurso111"; newthing.DoubleData = observation.ObsDoubleData; newthing.description ="Testing Reasoner Do not return entity Create by recurso";
} Expected
If Observer do not return an entity the system will create a new entity
Send Notifications
Send Observations
function(newobservation,observation){
newobservation._name = "SendObserRecursoNoEntity"; newobservation.topic = observation.topic; newobservation.producer = observation.producer;
}
Expected
If Observer do not return an entity the system will Send Observation
Schedule Send Observations
function(newobservation,observation){
newobservation._name = "ScheduleSendObserRecursoNoEntity"; newobservation.topic = observation.topic; newobservation.producer = observation.producer;
}
Expected
If Observer do not return an entity the system will Schedule and send observation according to schedule
Reasoner Increment, Decrement, Set
First this only works for numeric fields like integer or double when user set a supported property that is double or integer of a type of entity he has to check the check box for atomic updates Then this only works for reasoner for each by property action updates
on the right side user will be able to select from set, increment or decrement then there is an entry box to enter a numeric value on how much you want decrement or increment or set is just to set a fix value
for example Field to update is Temp max that initially was 2 then user select increment then enter 2 then user runs reasoner on temp max the result will be 4