What's a connectable?
The concept of connectable is core to Connhex. Every connectable is the digital representation of any element that is able to connect to the infrastructure and send data of different nature (e.g. temperature, humidity, voltage, etc.) using a communication protocol supported by Connhex.
Types of connectables
There are three types of connectables: devices, edges and virtuals. The first two are digital representations of physical elements: the only difference between them is that edges are required to communicate through Connhex Edge, whereas devices aren't.
You can simply think of an edge as a device with additional capabilities. If you can install Connhex Edge, just provision an edge for every object you're going to connect.
Virtual connectables, on the other hand, don't have a physical counterpart. They are used by Connhex AI to publish forecasts and anomaly scores, while keeping track of the relationship with the associated edge or device.
Properties
Connectables are characterized by:
- an unique identifier (following the UUID standard) automatically generated during the connectable creation phase
- any field required by Connhex Manufacturing. In particular, the
serial
field is used as a human-readable identifier.
You can have multiple devices with the same serial: Connhex will still be able to distinguish them based on their IDs . As a guideline, we recommend to stick with a unique serial for each device, that maps an identifier of the physical element it represents.
For a complete list of operations over connectables, see here.
Things and channels
The following section describes an implementation detail: feel free to skip it if you're just browsing around.
If you look at the Core API, you'll find that things and channels are mentioned. What are these?
You can think of a thing
as the connectable's internal component that deals with the IoT information, in the strict sense of the word1. A connectable can communicate through one or more channels
: these vary depending on the connectable type.
Edges have two channels:
- events: the channel through which data is collected from the field
- control: the channel that allows commands to be sent from the cloud to the field
These channels are typically used in a one-way fashion, even if there's no constraint over it: for example, some of our customers use the control channel to receive acks corresponding to commands.
Devices, on the other hand, have a single channel.
At a practical level, this means you'll be reading data from a channel of the connectable's thing component.
- This field is called Internet of Things, after all.↩