SemBeacon helps to describe environments and the Physical Things within. Once a list is created of all Things that should be described, grouping can be performed.
Physical things, environments and beacons should be grouped on a spatial level. However, as all grouped instances will be fetched at the same time, developers are free to decide to split up the spatial grouping when needed. In general, spatial grouping should be performed on floors or buildings. If users are expected to navigate over multiple floors (e.g. in a hospital) then the spatial grouping can be performed on the whole building.
In addition to the Physical Things that need to be described, multiple beacons need to cover the spatial area so nearby SemBeacon scanners can pick up the advertisements.
After analyzing the environment and performing spatial grouping, a semantic description of the environment(s) should be created. We will make use of the SemBeacon vocabulary along with POSO and M3 Lite.
The beacon implementation is similar to existing Eddystone, iBeacon or AltBeacon implementations. On our GitHub page we offer an ESP32 library for creating a beacon.
namespaces
it encounters and the associated resource URIs
. Each namespace
keeps track of the beacons and physical things located within those namespaces.namespace
identifier).namespace
and instance
identifier. The application checks if it has knowledge about the namespace
identifier in its local state. If the namespace
was not previously discovered, an active scan is performed. If the namespace
was previously discovered and no cache timeout occurs, the passive scanning is continued.