Kontakt.io

Installation and configuration of Kontakt.io App

Eliona App for Kontakt.io digital building solutions

Kontakt.io makes Smart IoT Devices, Cloud Solutions, and Powerful APIs that help transform buildings into indoor spaces that are useful for people in their daily journey to accomplish their goals, working or being cared for, in a safe & sustainable indoor environment.

Installation

The Kontakt.io App is installed via the App Store in Eliona.

Assets

The Kontakt.io App automatically creates all necessary asset types and assets that are accessible via the configured endpoints. The following asset types are created:

  • Tag: Any type of BLE smart tag that provides location.

  • Badge: A Smart Badge or Asset Tag 2 that provides location as a tag, but has a temperature sensor and two buttons (not implemented yet).

  • Beacon: Beacons collect the locations of the tags and badges, plus provide information about air quality.

  • Portal Beam: Like beacons, but counting the number of people in the room as well.

Following attributes are defined:

AttributeDescriptionTagBadgeBeaconPortal BeamFilterable

position

Position

x

x

temperature

Temperature

x

x

x

air_pressure

Air pressure

x

x

humidity

Humidity

x

x

light_intensity

Light intensity

x

x

air_quality

Air quality

x

x

people_count

People count

x

firmware

Firmware version

x

x

x

x

x

model

Model of the device

x

x

x

x

x

battery_level

Battery level

x

x

x

x

x

product

Product name

x

name

Name in Kontakt.io

x

Dashboards

The Kontakt.io App offers a dashboard with all automatically created assets. This can be created automatically via the Eliona Frontend Copy Dashboard > Kontakt.io and then customized as desired.

Configuration

For a detailed guide to configuring apps, follow the manual.

The Kontakt.io App is configured by defining one or more API tokens. Each configuration requires the following data:

AttributeDescription

apiKey

API Key

enable

Flag to enable or disable fetching from this API

refreshInterval

Interval in seconds for collecting data from API

requestTimeout

API query timeout in seconds

assetFilter

Filter for asset creation, more details can be found in app's README. Filterable fields are specified in assets table above.

projectIDs

List of Eliona project ids for which this device should collect data. For each project id, all smart devices are automatically created as an asset in Eliona. The mapping between Eliona is stored as an asset mapping in the Kontakt.io app.

The configuration is done via a corresponding JSON structure. As an example, the following JSON structure can be used to define an endpoint:

{
  "apiKey": "yourAPIKey",
  "enable": true,
  "refreshInterval": 60,
  "requestTimeout": 120,
  "assetFilter": [
    [{ "parameter": "product", "regex": ".*Tag.*" }, { "parameter": "product", "regex": ".*Beacon.*" }],
    [{ "parameter": "mac", "regex": "(70:82:0E:12:28:CC|70:56:06:12:.*)" }],
    [{ "parameter": "name", "regex": ".*Lobby.*" }]
  ],
  "projectIDs": [
    "99"
  ]
}

Endpoints can be created using this structure in Eliona under Apps > Kontakt.io > Settings. To do this, select the /configs endpoint with the PUT method.

Floors height settings

Since the Kontakt.io system provides references to rooms instead of 3D coordinates of tags, the app needs to convert internally between the two systems to display assets on a map and BIM model in Eliona. To do this, the app needs to know the height above ground of each floor (the Z coordinate).

To facilitate this setting, the app retrieves all floors set up in the Kontakt.io system and displays them in a widget on the dashboard. Here, the user can set the heights of the floors that will be used by the app from that moment on.

Once the heights are set, the widget can be removed. For later changes, the Asset Management section could be used.

Last updated