Thing Type and Firmware Version Registration
Thing Interaction Framework manages thing types and firmware versions.
This page covers the overview of the thing type and firmware version. See Registering Thing Capability for the information on how to use the feature when implementing your apps.
A thing type is information for identifying the capability of the thing.
Let us assume, for example, that we need to manage an "online camera" and "sensor" at the same time. The online camera has a set of capabilities like "taking a photo" and "rotating the camera," while the sensor has another set of capabilities like "sensing the temperature" and "reporting the remaining battery."
In this case, we will register thing types "online camera" and "sensor." Once these thing types are registered, we can select which type a new thing belongs when we add the thing to Thing Interaction Framework.
The firmware version of thing also plays an essential role in the capability identification. Two things with the same thing type could have different capabilities. For example, a sensor manufacturer may decide to disable some sensor features at the initial production release and later enable them by the upgraded firmware.
We can set multiple firmware versions to a thing type to accommodate such the capability difference.
Since a trait defines the capability of a thing, it must be bound to the appropriate thing type and firmware version. This association is made with Trait Alias Registration.