A building is the most important entity within Situm's location system, because it represents any venue where Situm's indoor location platform can be configured. Buildings are created using the Situm Dashboard, and are always associated with a certain user account. In order to create a new building, the user has to fill at least the following information: name of the building and location. In addition, buildings can contain other information, such as a description of the building in plain text, a representative picture and custom fields.
Highlight, Situm SDK, by default, only uses Situm beacons. If you want to use your own beacons, add a custom field with a key called beacons_uuids, and also add the list of beacon identifiers as a value of this key in the construction information form. It is not advisable to use the uuids 000000...000 , since it is used by default in electrical household appliances (TVs, Bluetooth cars,...) and can cause the system will be saturate.
E.g. "beacons_uuids": "00000000-0000-0000-0000-000000000001,00000000-0000-0000-0000-000000000002"
Each point of interest can belong to a unique category. Situm Dashboard provides a set of predefined categories (e.g. elevator, entrance, parking, information), but the user can also define its own categories.
Key-value pairs that the user can use to extend and fully customize the information associated with each point of interest, event and building. In a key-value pair, the key describes the kind of data represented, and the value represents the actual data.
For instance, a point of interest representing a piece of art in a museum could be associated with the following key-value pairs, among any others:
"author":"Vincent van Gogh"
Note that this information allows any app built on top of Situm's Indoor Location Platform to perform advanced querying and filtering over the POIs of a building: e.g. show all the paintings of a certain author, and order them by year of creation.
An event is an entity that represents an action that will be triggered when an user enters a certain location. Events are commonly used to display geo-triggered promotions and advertisements, reminders for security guards in patrol routes, etc. The user can create events at any location and associate rich information to them (text, images, videos, custom fields, etc.), that will be shown to the user when he walks through the event area.
As you can see in the image below, the events are composed by two circular areas: the trigger area and the conversion area.
The trigger area is the location where the event or promotion will be showed. For example, when an user enters a shopping center he could receive a promotion for an article.
The conversion area is the location where the promotion or event is located. Conversion areas are not mandatory: some events will be simply informative, and will not need to direct users to certain locations. Referring to the example of an user entering a shopping mall, the conversion area would be the place containing the article with a discount.
A floor is an entity representing a certain level of a building. Each floor resource contains, among other information, the physical level of the floor, the floorplan image and its scale in pixels per meter. In order to create a floor, the user has to upload its floorplan to the Situm Dashboard and adjust it to fit the real area of the floor, like in the following image.
All the floorplans of a building occupy the same 2D area in the map, and they should have the same dimensions. As it is shown in the previous picture, the area occupied by a certain floor is defined by the coordinates of each corner of the floorplan, plus the rotation of the floorplan when placed in the map.
A geofence is a virtual geographic boundary represented in the form of a polygon. A geofence must be contained within the building area.
Geofences are useful for the extraction of stay-time and displacement through geofences reports.
Each geofence has a name, an optional code and an optional information field which holds enriched text. The code can be used as a secondary identifier in order to cross data with external databases or provide a more context-aware identifier.
This parameter can be configured in Situm Dashboard when creating or editing a certain level of a building.
Paths are graphs that represent all the navigation routes within the building. As shown in the figure, these graphs are formed by a set of nodes and archs that traverse all the navigable spaces in a venue, connecting them so that routes can be computed. Once all the navigable spaces have been defined, Situm can compute the shortest route to guide an user from point A to point B.
Paths are a very versatile tool that can be also used to connect floors (representing stairs or elevators), one-way only directions, and even navigation routes suitable for wheelchairs.
Point of interest (POIs)
A point of interest represents any entity that occupies a certain geographical location. Points of interest can be located inside the building (indoor POIs: toilets, elevators, shops, cafeterias...) or outside the building (outdoor POIs: bus stops, parkings...). The user can create an event at any location, and assign different information to it, such as a name, a category, a description with text, images and videos, and any number of custom fields.
Real time refers to a service provided by Situm that allows to retrieve the location of every user in a building in real time. As shown in the figure, this service can be visualised using the "Real Time" section in the Situm Dashboard, but it is also provided as an endpoint in Situm's REST API (link). This allow you to integrate our Real Time service with your own desktop&web applications, and even with legacy or 3rd party systems (such as ERPs or Business Analytics tools).
Refers to the orientation of the user with respect to the north. Yaw is usually measured in counter-clockwise radians with respect to the X axis of the building.
This concept is better illustrated in the following figure: