Zum Inhalt

Nutzerverwaltung

Jede Person, die mit Hannah spricht oder die WebUI benutzt, ist ein Nutzer — in der WebUI und im Rest dieser Doku auch "Roomie" genannt. Nutzer regeln zwei Dinge: wer darf was (Trust-Level) und wer ist gerade zuhause (Anwesenheit, siehe Presence-Quellen).

Trust-Level

Jeder Nutzer hat ein Trust-Level von 0 bis 10. Es ist keine Alters- oder Rollenbezeichnung, sondern eine reine Zahl, die an genau zwei Stellen wirkt:

  1. Berechtigung — viele Aktionen in der WebUI (und ein paar Sprachbefehle) sind erst ab einem bestimmten Trust-Level sichtbar bzw. ausführbar.
  2. Gesprächskontext — Hannahs LLM bekommt das Trust-Level der sprechenden Person als Teil des System-Prompts mit (Vertrauenslevel: X/10). Es beeinflusst also potenziell auch, wie Hannah antwortet, nicht nur, was sie zulässt.

Neue Nutzer bekommen standardmäßig Trust-Level 5. Ändern kannst du das unter Nutzerverwaltung → Bearbeiten (nur mit eigenem Trust-Level ≥ 10 sichtbar).

Die wichtigsten Schwellenwerte in der WebUI:

Aktion Ab Trust-Level
Räume sehen 3
Satelliten sehen (nur eigene, falls < 10) 5
Trigger ansehen 5
Eigenen Satelliten umbenennen/verschieben 5 (nur eigene, außer schon ≥ 10)
Trigger anlegen/bearbeiten/löschen 7
Nutzer verwalten, Satelliten löschen/Besitzer ändern, Firmware-Updates anstoßen 10
Fahrzeuge, Gruppen, BLE-Tags, Core-Einstellungen (NLU/LLM-Prompt) verwalten 10
Voiceprint für eine andere Person aufnehmen 10
Aktivitätslog/Postfach einer anderen Person einsehen 10
Verknüpftes Konto einer anderen Person trennen 10

Wecker sind eine Ausnahme

Wecker sind bewusst nicht trust-gated — Details dazu auf der Wecker-Seite.

Für unbekannte oder nicht angemeldete Anfragen (z. B. Systemprozesse) gilt intern kein Trust-Level-Check — das betrifft nur Hannah selbst, nicht reguläre Nutzer.

Nutzer anlegen und bearbeiten

Unter Nutzerverwaltung (Trust-Level ≥ 10 nötig) legst du neue Nutzer an oder bearbeitest bestehende:

  • Username, Anzeigename, E-Mail, Passwort — Anzeigename ist optional und fällt sonst auf den Username zurück.
  • Typ: roomie (echter Bewohner), guest (Gast) oder pet (Haustier — z. B. für eigene Presence-Quellen wie einen BLE-Tag am Halsband, ohne dass ein Tier als "Bewohner" zählt).
  • Trust-Level (siehe oben).
  • Aktiv — deaktivierte Nutzer verschwinden aus den meisten Listen und Auswahlfeldern, ohne dass ihre Daten gelöscht werden.
  • System-Benachrichtigungen — ob diese Person wichtige/dringende Meldungen erhält (siehe "Hannah sagen" auf der ioBroker-Adapter-Nutzungsseite).

Es gibt daneben noch einen internen, unsichtbaren Mood-Level — beeinflusst Formulierungen, ist keine von dir zu pflegende Einstellung.

Nutzerliste mit Trust-Level und Resident-Verknüpfung

Löschen ist endgültig

Einen Nutzer zu löschen entfernt auch alle seine Wecker, verknüpften Konten und Presence-Quellen. Satelliten und BLE-Tags, die ihm gehörten, werden nicht gelöscht, verlieren aber ihren Besitzer (musst du danach neu zuweisen).

Verknüpfte Konten

Ein Hannah-Nutzer kann mit externen Konten verknüpft werden. Das läuft an zwei unterschiedlichen Stellen, je nachdem worum es geht:

  • Residents (ioBroker-Anwesenheit) — wird admin-seitig auf der Nutzerliste verknüpft: pro Nutzer ein Dropdown mit den vom Residents-Adapter gemeldeten Personen + "Verknüpfen"-Button. Ein Resident taucht dort erst auf, sobald ioBroker mindestens einmal ein Anwesenheits-Update für ihn geschickt hat.
  • Telegram (aktuell der einzige verfügbare Anbieter — weitere sind technisch vorbereitet, aber noch nicht in der Oberfläche freigeschaltet) — läuft nicht über die Nutzerverwaltung, sondern Self-Service: jeder Nutzer verknüpft sein eigenes Telegram-Konto selbst, auf seiner eigenen Profilseite (Mein Konto → "Verknüpfte Konten" → "Verbinden"). Das startet den offiziellen Telegram-Login-Widget-Flow. Ist die Telegram-Komponente serverseitig nicht eingerichtet, taucht der Button gar nicht erst auf.

Wichtig: Domain + HTTPS nötig

Der "Verbinden"-Button funktioniert nur, wenn du die WebUI über eine Domain aufrufst (nicht per IP-Adresse) und die Verbindung HTTPS nutzt — beides verlangt Telegram für den Login-Widget-Flow. Bei einer frischen Installation ist das meist noch nicht eingerichtet. Schritt-für-Schritt-Anleitung: Telegram-Verknüpfung einrichten.

Verknüpfte Konten auf „Mein Konto" mit einem verbundenen Telegram-Account

Ein externes Konto lässt sich immer nur mit einem Hannah-Nutzer verknüpfen. Sein eigenes Konto trennt jeder selbst; ein fremdes zu trennen braucht Trust-Level ≥ 10.

Presence-Quellen (Anwesenheit)

Damit Hannah weiß, ob jemand zuhause, unterwegs oder schon eingeschlafen ist, wertet sie pro Nutzer eine oder mehrere Presence-Quellen aus (Nutzerverwaltung → Nutzer bearbeiten → "Presence-Quellen verwalten"). Jede Quelle hat:

  • einen Typ (z. B. ein roher ioBroker-State, oder ein BLE-Tag — siehe Erweiterte Einstellungen → BLE-Tags)
  • eine Referenz (die konkrete State-ID bzw. bei BLE-Tags eine Auswahl aus den Tags dieses Nutzers)
  • eine Home- und Away-Konfidenz (0–1) — wie stark diese einzelne Quelle für "zuhause" bzw. "weg" spricht, falls sich mehrere Quellen widersprechen
  • ob sie aktiv ist

Mehrere Quellen pro Nutzer sind der Normalfall (z. B. ioBroker-Präsenzmelder und BLE-Tag) — Hannah kombiniert sie, statt sich auf eine einzelne Quelle zu verlassen.