Manage your Things from Datonis

From Datonis
Jump to: navigation, search
Datonis Documentation Home > Managing your Things

Managing Thing Templates and Things

Now that you have learned how to visualise Thing data, it is important to know how to manage your Thing Templates and your Things. Here's a short video that demonstrates how to do that.

Some additional details about managing Thing Templates (TTs) and Things.

  • Audit Trails are extremely useful to track changes in TTs and Things. It tells you which users have changed what.
  • Once a Thing belongs to a TT, that association cannot be changed.
  • Deleting a TT will delete every Thing that belongs to that TT.

Dynamically Grouping Things

Datonis allows you to organise your Things better by grouping them. Groups are dynamic. Things can be members of multiple groups.

Groups based on Tags

Datonis allows you to create a group that consists of all Things tagged with a label. Here is a video that demonstrates how this works.

  • A Thing can have multiple tags and can be a part of multiple tagged groups.
  • Tagged groups allow you to specify a Scope that can be 'All' or 'Any'
    • If the scope is All, then the Thing must have all the tags specified in the group definition to be a member of that group.
    • If the scope is Any, then the Thing is a part of the group as long as it has any tag specified in the group definition.
  • Tags are case sensitive. Datonis considers 'Tag1' and 'tag1' as different tags.

Groups based on an Expression

You can use Expression based groups If you need more flexibility in creating groups than what Tagged groups provide. Here is a video that demonstrates how you can create expression based groups. 

Some additional detail about Expression based groups:

  • These groups are based on Thing User Defined Properties (UDPs). A UDP consists of a property name and a property value. A property can be a String, a Number or a Boolean.
  • Expression based groups use a Javascript based expression syntax for its definition. You can access a UDP using the syntax this.user_defined_properties[<Property Name>]. You can use standard operators like &&, ||, >, < and so on in the expression.
    • For example, in the video, here was the expression that would ensure that all Red Ford and Honda cars were a part of the group. Note the use of operators and brackets to ensure that the expression evaluates correctly.
      • (this.user_defined_properties['make'] == 'Honda' || this.user_defined_properties['make'] == 'Ford') && this.user_defined_properties['colour'] == 'Red'
    • You can also use mathematical operators for UDPs that are numbers. For instance, this.user_defined_properties.Speed >= 100 
  • If the expression is incorrect, the UI will flash an invalid expression error.
  • Expression based groups are dynamic and evaluated when the group is accessed.