# Thingdust

Thingdust is a company that offers a sensor-based solution to measure the occupancy of office spaces. The sensors measure temperature, humidity, and the occupancy of spaces in real time (e.g. workstations, rooms). The Eliona app for Thingdust Spaces allows access to this data and the display of the data in Eliona.

## Installation

The Thingdust app is installed via the App Store in Eliona.

## Assets

The Thingdust app automatically creates all necessary asset templates and assets ([CAC](https://docs.buildings.ability.abb/collection/english-v14/apps/apps/broken-reference)), which are accessible via the configured endpoints. The following asset templates are created:

* **Thingdust Space**: A Thingdust area

The following attributes are defined:

<table><thead><tr><th width="222"></th><th></th></tr></thead><tbody><tr><td><code>occupancy</code></td><td>Occupancy</td></tr><tr><td><code>temperature</code></td><td>Temperature</td></tr><tr><td><code>humidity</code></td><td>Humidity</td></tr></tbody></table>

## Dashboards

The Thingdust app offers a dashboard with all automatically created spaces. This can be accessed via the Eliona frontend `Copy Dashboard > Thingdust` created automatically via the Eliona frontend and then customized as desired.

<figure><img src="https://content.gitbook.com/content/Nyvwhz1kEMXcHf4HLuZ8/blobs/S0Oe0LcKL2vuH7bd1CJ4/image.png" alt=""><figcaption></figcaption></figure>

## Configuration

{% hint style="info" %}
More information on configuring apps can be found [↗ here](https://doc.eliona.io/collection/dokumentation/einstellungen/apps).
{% endhint %}

The Thingdust app is configured by defining one or more API endpoints. Each endpoint requires the following data.

<table><thead><tr><th width="200">Attribute name</th><th>Description</th></tr></thead><tbody><tr><td><code>apiEndpoint</code></td><td>Address of the endpoint</td></tr><tr><td><code>apiKey</code></td><td>Key for the endpoint</td></tr><tr><td><code>enable</code></td><td>Flag to enable or disable the endpoint</td></tr><tr><td><code>refreshInterval</code></td><td>Interval in seconds for data collection from the endpoint</td></tr><tr><td><code>requestTimeout</code></td><td>Timeout in seconds for the endpoint</td></tr><tr><td><code>active</code></td><td>Is set by the app to <code>true</code> set when it is running, and to <code>false</code>, when the app is stopped</td></tr><tr><td><code>projIds</code></td><td>List of project IDs for which assets are automatically created (<a href="broken-reference">CAC</a>)</td></tr></tbody></table>

The configuration is done via a corresponding JSON structure. The following JSON structure can be used as an example to define an endpoint.

```json
{
  "configId": 12345,
  "apiEndpoint": "https://foo.bar.thingdust.io/api/",
  "apiKey": "FOOBARFOOBAR",
  "enable": true,
  "refreshInterval": 60,
  "requestTimeout": 120,
  "projIds": ["99"]
}
```

Endpoints can be defined in Eliona using this structure under `Apps > Thingdust > Setting` . To do this, the endpoint `/configs` with the method `PUT` must be selected.
