Skip to content

Domains

Differentiating objects is often simple in many cases. For example, a digital switch that opens or closes a door has a completely different function from a lighting controller that adjusts light levels in a space. Their purposes are easy to distinguish.

But the case becomes more complex when objects belong to the same category but fulfill different functions. For example, sensors:

  • Temperature sensor: Measures ambient heat.
  • Humidity sensor: Detects the amount of water vapor in the air.
  • Motion sensor: Identifies presence in an area.

Although they are all "sensors", each has a specific utility and provides different data. To organize and differentiate them efficiently, Netsocs uses a classification system called Domains.

What is a Domain?

A domain is an organizational label that groups objects based not only on their general category but also on their specific functionality. It is the method Netsocs uses to logically and precisely classify each tool in your digital arsenal.

Let's imagine a practical example: an advanced security camera. This single physical device can house multiple capabilities that in Netsocs are represented as individual objects:

  • An integrated motion sensor.
  • Three virtual line counters, which record each time a person or object crosses a predefined line in the camera's image.

In this scenario, you would have a total of four "sensor" type objects coming from a single device. If you wanted to apply a specific rule only to the line counters (for example, "send an alert if the count exceeds 100"), but not to the motion sensor, you would need a clear way to distinguish them. This is where domains demonstrate their value, allowing you to group the three line counters separately from the motion sensor.

Thanks to domains, you can manage objects by their type and function.

The Structure of a Domain

To ensure consistency and facilitate searching, domains in Netsocs follow a simple and predictable naming structure, composed of three parts separated by a dot:

device_brand.object_type.functionality

Let's analyze each component:

Device Brand (device_brand)

Identifies the manufacturer, platform, or hardware/software brand. This helps differentiate objects from different ecosystems.

Examples: netsocs_camera, randombrand_panel, generic_device

Object Type (object_type)

Describes the general category to which the object belongs.

Examples: sensor, switch, light, alarm_panel, button.

Functionality (functionality)

This is the most descriptive part. It defines the specific task that the object performs.

Examples: motion, line_counter, temperature, humidity, on_off, level, open_close.

Domain Examples in Practice

  • For the motion sensor of our "Netsocs" camera:

    netsocs_camera.sensor.motion
    
  • For the line counters of that same camera:

    netsocs_camera.sensor.line_counter
    
  • For a simple light switch from a generic manufacturer:

    generic.switch.on_off
    
  • For a controller that adjusts the intensity of that light:

    generic.light.level
    
  • For an opening sensor on a door from an access panel:

    randombrand_panel.sensor.open_close
    

The Utility of Domains: Grouping, Filtering, and Searching

Domains are the backbone for efficient object management in Netsocs. Their purpose is to simplify your work by allowing you to:

Group

Logically organize all objects with similar functionalities. For example, you could visualize all your "climate" related sensors (_.sensor.temperature, _.sensor.humidity) in one place, regardless of the device brand.

Filter

When managing hundreds of objects, you can isolate your view to show only those that interest you. For example, you could filter to see only objects with the motion functionality from all your cameras.

Find any object instantly. If you need to locate the temperature sensor in a specific area, a simple search for the domain containing .sensor.temperature will take you directly to it.

Automate

Domains are fundamental for creating automatic rules and actions. You could, for example, design a rule that activates for any object within the _.sensor.motion domain (regardless of brand), or a specific alert that is sent only when an object in the _.lock.status domain reports an "open" state.

By understanding and using domains, you'll make the most of Netsocs' ability to build an intelligent, orderly, and highly automated management system.