# Zevvy

### Übersicht

Dieser Leitfaden enthält Anweisungen zum Konfigurieren, Installieren und Verwenden der Zevvy-App, um Ressourcen zu verwalten und Daten zwischen BuildingPro Suites und den Zevvy-Diensten zu synchronisieren.

### Installation

Installieren Sie die Zevvy-App über den BuildingPro Suites App Store.

### Konfiguration

Die Zevvy-App erfordert eine Konfiguration über die Einstellungsoberfläche von BuildingPro Suites. Die allgemeinen Schritte und die Details, die für eine effektive Konfiguration der App erforderlich sind, sind unten aufgeführt.

#### Registrierung der App beim Zevvy-Dienst

Erstellen Sie Anmeldedaten im Zevvy-Dienst, um die Zevvy-Dienste von BuildingPro Suites zu verbinden. Alle erforderlichen Anmeldedaten sind unten im Konfigurationsabschnitt aufgeführt.

Melden Sie sich bei der Zevvy-Konsole an und gehen Sie zur Einstellungsseite. Erstellen Sie eine neue Client-ID und ein Secret.

#### Konfigurieren der Zevvy-App

Konfigurationen können in BuildingPro Suites unter `Apps > Zevvy > Einstellungen`, wodurch die [generische Schnittstelle](https://doc.eliona.io/collection/v/eliona-english/manuals/settings/apps). Hier können Sie den entsprechenden Endpunkt mit der POST-Methode verwenden. Jede Konfiguration erfordert die folgenden Daten:

| Attribut          | Beschreibung                                                       |
| ----------------- | ------------------------------------------------------------------ |
| `authRootUrl`     | Stamm-URL für den Authentifizierungsprozess.                       |
| `apiRootUrl`      | Stamm-URL für den API-Zugriff.                                     |
| `clientId`        | In der Zevvy-Konsole für den API-Zugriff erstellte Client-ID.      |
| `clientSecret`    | In der Zevvy-Konsole für den API-Zugriff erstelltes Secret.        |
| `enable`          | Kennzeichen zum Aktivieren oder Deaktivieren dieser Konfiguration. |
| `refreshInterval` | Intervall in Sekunden für die Datensynchronisierung.               |
| `requestTimeout`  | Zeitüberschreitung für API-Abfragen in Sekunden.                   |

Beispiel für eine JSON-Konfiguration:

```json
{
  "authRootUrl": "[https://iam.zevvy.org/realms/zevvy-prod](https://iam.zevvy.org/realms/zevvy-prod)",
  "apiRootUrl": "[https://api.zevvy.org](https://api.zevvy.org)",
  "clientId": "123abc",
  "clientSecret": "s3cr3t",
  "enable": true,
  "refreshInterval": 60,
  "requestTimeout": 120
}
```

Nachdem die grundlegende technische Konfiguration der App abgeschlossen ist, benötigt die App weitere Informationen dazu, welche Messwerte an Zevvy gemeldet werden sollen. Dafür ist es notwendig, die Assets und das entsprechende Messattribut zu konfigurieren.

Dies kann mit dem entsprechenden Endpunkt und der POST-Methode erfolgen. Jede Asset-Definition erfordert die folgenden Daten:

| Attribut            | Beschreibung                                                                                                             |
| ------------------- | ------------------------------------------------------------------------------------------------------------------------ |
| `configId`          | Die Messung wird mit dieser Konfiguration gesendet.                                                                      |
| `assetId`           | Die Messung wird von diesem Asset erfasst.                                                                               |
| `subtype`           | Messdaten haben diesen Untertyp.                                                                                         |
| `attributeName`     | Name des Messattributs.                                                                                                  |
| `deviceReference`   | Name der Geräte-Referenz für die Messung in Zevvy. (Optional, die standardmäßige Geräte-Referenz ist die GAI des Assets) |
| `registerReference` | Name der Register-Referenz für die Messung in Zevvy. (Optional, die Register-Referenz ist der Attributname)              |

Beispiel-JSON zur Konfiguration eines Messdatensatzes für Zevvy

```json
{
  "configId": 1,
  "assetId": 4711,
  "subtype": "input",
  "attributeName": "power"
}
```

### Zevvy

Sobald die Konfiguration abgeschlossen ist, beginnt die App, regelmäßig Messwerte von den konfigurierten Assets und Attributen an Zevvy zu senden.
