Weiter zum Inhalt
  • Home
  • Aktuell
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • GitHub
  • Docu
  • Hilfe
Skins
  • Hell
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dunkel
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Standard: (Kein Skin)
  • Kein Skin
Einklappen
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Praktische Anwendungen (Showcase)
  4. Hannah — Open Source Smart-Home-Sprachassistentin

NEWS

  • NEWS: Neu im Admin, zentrale Verwaltung für Passwörter und Schlüssel
    BluefoxB
    Bluefox
    13
    1
    145

  • Neue Adresse: die ioBroker-Webseite liegt jetzt auf iobroker.com
    BluefoxB
    Bluefox
    3
    1
    216

  • Die neue ioBroker Webseite ist online!
    BluefoxB
    Bluefox
    11
    1
    232

Hannah — Open Source Smart-Home-Sprachassistentin

Geplant Angeheftet Gesperrt Verschoben Praktische Anwendungen (Showcase)
239 Beiträge 24 Kommentatoren 14.9k Aufrufe 36 Beobachtet
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • M
    M
    McBeath
    schrieb am zuletzt editiert von McBeath
    #215

    Dann bin ich ja beruhigt, 😉 das

    @Leonie sagte:
    Inhaltsverzeichnis würde dem Thread gut tun

    passt schon eher zu meiner Frage der Zusammenfassung.

    @Leonie sagte:
    Ich weiß nur was ich wann geschrieben habe :D

    Das freut mich für dich, wird aber mit zunehmendem alter nachlassen 😂

    1 Antwort Letzte Antwort
    0
    • L
      L
      Leonie
      schrieb am zuletzt editiert von
      #216

      @mcbeath Ich habe mal die KI meines Vertrauens angeworfen:

      Inhaltsverzeichnis — Hannah-Thread (#84378)

      215 Beiträge, 23.04.2026 – 19.09.2026. Links zeigen jeweils auf den ersten Beitrag der Sektion.

      Grundlagen & Vorstellung

      • #1 — Eröffnungspost: Was ist Hannah, Architektur, Features, Roadmap (wird laufend aktualisiert)
      • #2 — Erste Nachfrage: RPi nötig? Aufteilung Core/Satellit
      • #5 — Kritik am ersten Adapter-Stand, Umbau zu einem "richtigen" Adapter, Willkommen in der Community

      Frühe Entwicklung (Mai–Juli)

      • #10 — Update: Trigger-Engine, Loslösung der State-Logik von MQTT, neuer Alpha-Adapter
      • #11 — Instanz-Einrichtung, Pi-Satelliten-Hardware (RPi 3b + USB-Mikro/Klinke oder ReSpeaker HAT)
      • #16 — Monats-Update Juni: WebUI eingeführt (Ablösung der YAML-Handbearbeitung)
      • #17 — Frage nach Projekt-Zukunft/Nachhaltigkeit — Leonies Antwort: aktive Weiterentwicklung, öffentliches Repo als Absicherung
      • #19 — Ein-Befehl-Installation (curl-Installer) für alle Komponenten
      • #21 — Pi-Satelliten offiziell eingefroren/nicht mehr supportet, zugunsten ESP32-S3
      • #22 — Begriffsklärung Satellit vs. Access Point / Hardware-Anforderungen eines Satelliten

      Mehrsprachigkeit (Diskussion, nicht umgesetzt)

      • #27 — Anfrage: Unterstützung weiterer Sprachen (aktuell hartkodiert Deutsch)
      • #33 — Konzeptidee "getLanguage"-Schnittstelle, Diskussion Wakeword-pro-Sprache vs. automatische Erkennung, Whisper-Sprachdetektion — bleibt auf der Roadmap, nicht umgesetzt

      Hardware-Vorschau & erste PCB-Bilder

      • #31 — Erstes PCB-Bild + Gehäuse-Bild (88mm, 4-Layer)
      • #38 — Audio-Demo-Anfrage, Hinweis auf Piper-Stimmen (Hugging Face)
      • #40 — Anfrage zu ESPHome-Kompatibilität/Alternativ-Hardware — abgelehnt (eigene ESP-IDF-Firmware nötig wegen Audio-Pipeline/Wakeword)

      großer Fragenkatalog

      • #42 — Vorstellung, Fragen zu Selbstbau-Platine, Telegram, Adapter-Verfügbarkeit im Beta-Repo
      • #43 — Ausführliche Antwort: Selbstbau-Optionen (DevKit + Breakouts vs. eigenes PCB)
      • #44 — Monats-Update August: Activity Log, Nachrichten-Mailbox, überarbeitete Wecker/Timer

      Installation mit systemd Teil 1 & Docker/Compose-Marathon

      • #45 — Installationsprobleme (leere Instanz)
      • #53 — Docker/Synology-Diskussion beginnt: systemd im Container, Image-pro-Komponente
      • #63 — Leonie veröffentlicht vollständiges docker-compose.yml für alle Komponenten
      • #64 — Telegram-Domain-Problem ("Bot domain invalid") taucht erstmals auf
      • #67 — Ausführliche Anleitung: Telegram-Konto-Verknüpfung, Domain-Anforderungen
      • #76 — ffmpeg-Bug im Core-Container gemeldet und gefixt (v0.75.8)
      • #78 — Piper-TTS-Modell-Datei fehlt im Container (Volume-Problem)

      Hardware-Freigabe & Bestellungen (PCBWay)

      • #79 — 🎉 Hannah Satellite Rev. 5 offiziell freigegeben (PCBWay Shared Project)
      • #83 — Erstes Bestellinteresse (duemchen), Sammelbestellungs-Idee entsteht
      • #87 — Wie bestellt man (PCB+Assembly bei PCBWay)
      • #92 — Stückpreis-Transparenz (~50€/Stück bestückt, Materialkosten)
      • #109 — Erste reale Bestell-/Preis-Rückmeldung
      • #114 — Konkretes PCBWay-Angebot für 1 Stück (117,82$), Diskussion Mengenrabatt
      • #116 — AliExpress/Waveshare-ESP32-Audioboards als Alternative vorgeschlagen
      • #120 — Sammelbestellungs-Interesse wird eingesammelt (mehrere Nutzer melden Stückzahlen)
      • #125 — Frage: rechteckige statt runde Platine (Kostenersparnis)? / JLCPCB vs. PCBWay
      • #126 — Ausführliche Begründung PCBWay-Wahl (Shared-Projects-Feature)
      • #128 — Frage nach Gehäuse

      Sprechererkennung, State-Mapping & Bugfixes

      • #130 — Voice-Enrollment erfolgreich, Fragen zu Test/Doku
      • #132 — Bugreport: Rolladen-States (Homematic LEVEL/STATE) werden nicht erkannt
      • #135 — Erklärung der kanonischen State-Keys (on/level/color/current/…)

      RAG/LLM-Integration & Skill-System (Zukunftsdiskussion)

      • #137 — Idee: Objektbaum per RAG dem LLM zugänglich machen statt Regel-NLU
      • #138 — Antwort: NLU ist bewusst regelbasiert, LLM nur Fallback-Pfad
      • #188 — WebChat-Idee (gRPC SubmitText), offen für Community-Beitrag
      • #190 — Ausführliche Antwort zu RAG/E-Mail-Integration: Weg über Skill-System (gRPC-Skill-Server)
      • #196 — vertiefte Architektur-Diskussion (LLM-Internetzugriff als Backend-Eigenschaft)

      Installation mit systemd Teil 2 — Config, Passwort, WebUI, gRPC, TLS

      • #140 — WebUI-Login-Problem beginnt (admin-Passwort, Core nicht erreichbar)
      • #146 — config.yaml wird nicht gefunden (Pfad-/Rechteproblem)
      • #158 — Manueller Passwort-Reset per sqlite-Kommando
      • #164 — WebUI-Core-Verbindung: eigene WebUI-Config nötig (/etc/hannah-webui/config.yaml)
      • #171 — Root Cause gefunden: gRPC-Host muss auf 0.0.0.0 stehen
      • #189 — Nächstes Thema: Telegram-Domain-Einbindung mit eigener Domain
      • #207 — Root Cause: IP-Adresse funktioniert bei Telegram nicht, Domain (z.B. DuckDNS) nötig
      • #208 — WebUI bekommt natives HTTPS/TLS-Support (Update-Anleitung)

      Community-Ton & Ausblick

      • #198 — Frust über "zu viele Detaildiskussionen" ohne zentrale Sammelbestellung
      • #199 — Klarstellung: kein kommerzielles Produkt, PCBWay Shared Project ist Selbstbedienung
      • #209 — McBeath fragt nach einer finalen Zusammenfassung/Anleitung
      • #214 — Vorschlag Inhaltsverzeichnis — Ursprung dieser Anfrage

      Für alle die Statistiken mögen:
      Für Hannah sind aktuell noch 38 Issues offen und 290 sind geschlossen. Insgesamt habe ich aktuell knapp 330 Issues angelegt und die meisten bearbeitet.

      1 Antwort Letzte Antwort
      1
      • M
        M
        McBeath
        schrieb zuletzt editiert von
        #217

        Und schon geht es los :(
        Die Syno arbeite ja mit dem Container Manager.
        Wenn ich hier nun ein Projekt erstelle und die "docker-compose.yml" angebe, fehlt mir die Möglichkeit den Befehl "docker compose up -d" anzugeben.
        Wenn ich nun auf Erstellen klicke, erhalte ich nur die Meldung im log: "no such service: mysql-db"
        @manne01
        Wie bzw. wo hast du den Befehl "docker compose up -d" angeben?

        1 Antwort Letzte Antwort
        0
        • L
          L
          Leonie
          schrieb zuletzt editiert von Leonie
          #218

          Tja, wie die synology das macht, habe ich keine Ahnung. Die Anleitung ist quasi für bare docker mit CLI.

          Ich hab mir mal eben eine synology mit Container Station gesucht. Ich verstehe die nicht :D

          1 Antwort Letzte Antwort
          0
          • M
            M
            McBeath
            schrieb zuletzt editiert von
            #219

            Was ich so auf die schnelle gefunden habe, führt der Container Manager wohl bei "Erstellen"
            folgenden Befehl aus "docker-compose up --build --no-start"
            Hat es eventuell damit zu tun?

            1 Antwort Letzte Antwort
            0
            • L
              L
              Leonie
              schrieb zuletzt editiert von Leonie
              #220

              ja schon. Das Composefile verwendet Profile. Der compose Befehl den die Synology offenbar verwendet, gibt aber keine Profile an. Ohne Angabe von Profilen, wird nur Hannah-Core und Hannah-WebUI deployt. Der Container mysql fehlt dann, was auch deine Meldung erklärt

              @McBeath sagte:

              "no such service: mysql-db"

              Du kannst einen anderen mysql-Host/Container nutzen oder du entfernst in der Compose Datei beim MySQL-Service diese Zeile:

              profiles: ["full", "with-db"]
              

              Dann sollte das klappen.

              Du kannst aber auch den mysql-server weglassen. Dann hast du keinen Activity Log, aber sonst sollte Hannah funktionieren. Die Meldung ist meine ich dann egal.
              Das kannst du überprüfen wenn du mir bspw. einen Screenshot der laufenden Container zeigst. Würde dir ja einen Befehl dafür geben, aber das scheint bei der Synology nicht zu funktionieren.

              1 Antwort Letzte Antwort
              0
              • M
                M
                McBeath
                schrieb zuletzt editiert von McBeath
                #221

                Ich habe die compose mal etwas gekürzt und alles optional verwies gelöscht.

                services:
                  hannah-core:
                    image: quay.io/m1kad0/hannah-core:latest
                    container_name: hannah-core
                    restart: unless-stopped
                    pull_policy: always      
                    ports:
                      - "50051:50051"
                    networks:
                      - hannah_network
                    volumes:
                      - core_activity_audio:/app/activity_audio
                      - core_audio_dumps:/app/audio_dumps
                      - core_data:/app/data
                      - ./core-config.yaml:/etc/hannah/config.yaml:ro
                
                  hannah-webui:
                    image: quay.io/m1kad0/hannah-webui:latest
                    container_name: hannah-webui
                    restart: unless-stopped
                    pull_policy: always
                    depends_on:
                      - hannah-core
                    networks:
                      - hannah_network
                    ports:
                      - "5000:5000"
                    volumes:
                      - webui_data:/data
                    environment:
                      HANNAH_WEBUI_SECRET_KEY: "Hannah"
                      HANNAH_WEBUI_GRPC_HOST: "hannah-core"
                      HANNAH_WEBUI_GRPC_PORT: "50051"
                      # Optional: natives TLS fürs Telegram-Login-Widget, siehe
                      # Telegram-Verknüpfung einrichten (WebUI-Komponente)
                      # HANNAH_WEBUI_TLS_ENABLED: "true"
                
                  
                volumes:
                  core_data:
                  core_activity_audio:
                  core_audio_dumps:
                  webui_data:
                  timer_data:
                  mysql_data:
                  mosquitto_data:
                  mosquitto_log:
                  hannah_mem:
                
                networks:
                  hannah_network:
                    driver: bridge
                

                Damit lies sich der Download starten.
                Endet allerdings mit Exit1 und einer Fehlermeldung, welche im Terminal nicht
                komplett zu sehen ist.
                Meldung lässt sich blöderweise nicht kopieren.
                Screenshot 2026-09-20 151019.png
                Screenshot 2026-09-20 151233.png

                1 Antwort Letzte Antwort
                0
                • M
                  M
                  McBeath
                  schrieb zuletzt editiert von
                  #222

                  Hab den Port mal auf 5003 geängert, Fehlermeldung ist weg....
                  Bitte warten....

                  1 Antwort Letzte Antwort
                  0
                  • L
                    L
                    Leonie
                    schrieb zuletzt editiert von
                    #223

                    Du hast bereits einen anderen Container oder Anwendung laufen der den Port 5000 nutzt. Den Port möchte aber gerne die WebUI nutzen

                    1 Antwort Letzte Antwort
                    0
                    • M
                      M
                      McBeath
                      schrieb zuletzt editiert von McBeath
                      #224

                      Ja das war mir auch aufgefallen.
                      Jetzt startet zwar der Core und wird nach 3 sec. beendet.
                      Hier das Log:

                      2026/09/20 15:17:38	stderr	AttributeError: 'str' object has no attribute 'get'
                      2026/09/20 15:17:38	stderr	                       ^^^^^^^
                      2026/09/20 15:17:38	stderr	    activity_log_cfg = cfg.get("activity_log", {})
                      2026/09/20 15:17:38	stderr	  File "/app/main.py", line 148, in main
                      2026/09/20 15:17:38	stderr	    ~~~~^^
                      2026/09/20 15:17:38	stderr	    main()
                      2026/09/20 15:17:38	stderr	  File "/app/main.py", line 2693, in <module>
                      2026/09/20 15:17:38	stderr	Traceback (most recent call last):
                      2026/09/20 15:17:38	stderr	13:17:38 [INFO] hannah.main: Hannah Core dev
                      2026/09/20 15:16:33	stderr	AttributeError: 'str' object has no attribute 'get'
                      2026/09/20 15:16:33	stderr	                       ^^^^^^^
                      2026/09/20 15:16:33	stderr	    activity_log_cfg = cfg.get("activity_log", {})
                      2026/09/20 15:16:33	stderr	  File "/app/main.py", line 148, in main
                      2026/09/20 15:16:33	stderr	    ~~~~^^
                      2026/09/20 15:16:33	stderr	    main()
                      2026/09/20 15:16:33	stderr	  File "/app/main.py", line 2693, in <module>
                      2026/09/20 15:16:33	stderr	Traceback (most recent call last):
                      2026/09/20 15:16:33	stderr	13:16:33 [INFO] hannah.main: Hannah Core dev
                      2026/09/20 15:15:29	stderr	AttributeError: 'str' object has no attribute 'get'
                      2026/09/20 15:15:29	stderr	                       ^^^^^^^
                      2026/09/20 15:15:29	stderr	    activity_log_cfg = cfg.get("activity_log", {})
                      2026/09/20 15:15:29	stderr	  File "/app/main.py", line 148, in main
                      2026/09/20 15:15:29	stderr	    ~~~~^^
                      2026/09/20 15:15:29	stderr	    main()
                      2026/09/20 15:15:29	stderr	  File "/app/main.py", line 2693, in <module>
                      2026/09/20 15:15:29	stderr	Traceback (most recent call last):
                      2026/09/20 15:15:29	stderr	13:15:29 [INFO] hannah.main: Hannah Core dev
                      2026/09/20 15:14:24	stderr	AttributeError: 'str' object has no attribute 'get'
                      2026/09/20 15:14:24	stderr	                       ^^^^^^^
                      2026/09/20 15:14:24	stderr	    activity_log_cfg = cfg.get("activity_log", {})
                      2026/09/20 15:14:24	stderr	  File "/app/main.py", line 148, in main
                      2026/09/20 15:14:24	stderr	    ~~~~^^
                      2026/09/20 15:14:24	stderr	    main()
                      2026/09/20 15:14:24	stderr	  File "/app/main.py", line 2693, in <module>
                      2026/09/20 15:14:24	stderr	Traceback (most recent call last):
                      2026/09/20 15:14:24	stderr	13:14:24 [INFO] hannah.main: Hannah Core dev
                      2026/09/20 15:13:20	stderr	AttributeError: 'str' object has no attribute 'get'
                      2026/09/20 15:13:20	stderr	                       ^^^^^^^
                      2026/09/20 15:13:20	stderr	    activity_log_cfg = cfg.get("activity_log", {})
                      2026/09/20 15:13:20	stderr	  File "/app/main.py", line 148, in main
                      2026/09/20 15:13:20	stderr	    ~~~~^^
                      2026/09/20 15:13:20	stderr	    main()
                      2026/09/20 15:13:20	stderr	  File "/app/main.py", line 2693, in <module>
                      2026/09/20 15:13:20	stderr	Traceback (most recent call last):
                      2026/09/20 15:13:20	stderr	13:13:20 [INFO] hannah.main: Hannah Core dev
                      2026/09/20 15:12:16	stderr	AttributeError: 'str' object has no attribute 'get'
                      2026/09/20 15:12:16	stderr	                       ^^^^^^^
                      2026/09/20 15:12:16	stderr	    activity_log_cfg = cfg.get("activity_log", {})
                      2026/09/20 15:12:16	stderr	  File "/app/main.py", line 148, in main
                      2026/09/20 15:12:16	stderr	    ~~~~^^
                      2026/09/20 15:12:16	stderr	    main()
                      2026/09/20 15:12:16	stderr	  File "/app/main.py", line 2693, in <module>
                      2026/09/20 15:12:16	stderr	Traceback (most recent call last):
                      2026/09/20 15:12:16	stderr	13:12:16 [INFO] hannah.main: Hannah Core dev
                      2026/09/20 15:11:12	stderr	AttributeError: 'str' object has no attribute 'get'
                      2026/09/20 15:11:12	stderr	                       ^^^^^^^
                      2026/09/20 15:11:12	stderr	    activity_log_cfg = cfg.get("activity_log", {})
                      2026/09/20 15:11:12	stderr	  File "/app/main.py", line 148, in main
                      2026/09/20 15:11:12	stderr	    ~~~~^^
                      2026/09/20 15:11:12	stderr	    main()
                      2026/09/20 15:11:12	stderr	  File "/app/main.py", line 2693, in <module>
                      2026/09/20 15:11:12	stderr	Traceback (most recent call last):
                      2026/09/20 15:11:12	stderr	13:11:12 [INFO] hannah.main: Hannah Core dev
                      2026/09/20 15:10:07	stderr	AttributeError: 'str' object has no attribute 'get'
                      2026/09/20 15:10:07	stderr	                       ^^^^^^^
                      2026/09/20 15:10:07	stderr	    activity_log_cfg = cfg.get("activity_log", {})
                      2026/09/20 15:10:07	stderr	  File "/app/main.py", line 148, in main
                      2026/09/20 15:10:07	stderr	    ~~~~^^
                      2026/09/20 15:10:07	stderr	    main()
                      2026/09/20 15:10:07	stderr	  File "/app/main.py", line 2693, in <module>
                      2026/09/20 15:10:07	stderr	Traceback (most recent call last):
                      2026/09/20 15:10:07	stderr	13:10:07 [INFO] hannah.main: Hannah Core dev
                      2026/09/20 15:09:03	stderr	AttributeError: 'str' object has no attribute 'get'
                      2026/09/20 15:09:03	stderr	                       ^^^^^^^
                      2026/09/20 15:09:03	stderr	    activity_log_cfg = cfg.get("activity_log", {})
                      2026/09/20 15:09:03	stderr	  File "/app/main.py", line 148, in main
                      2026/09/20 15:09:03	stderr	    ~~~~^^
                      2026/09/20 15:09:03	stderr	    main()
                      2026/09/20 15:09:03	stderr	  File "/app/main.py", line 2693, in <module>
                      2026/09/20 15:09:03	stderr	Traceback (most recent call last):
                      2026/09/20 15:09:03	stderr	13:09:03 [INFO] hannah.main: Hannah Core dev
                      2026/09/20 15:07:59	stderr	AttributeError: 'str' object has no attribute 'get'
                      2026/09/20 15:07:59	stderr	                       ^^^^^^^
                      2026/09/20 15:07:59	stderr	    activity_log_cfg = cfg.get("activity_log", {})
                      2026/09/20 15:07:59	stderr	  File "/app/main.py", line 148, in main
                      2026/09/20 15:07:59	stderr	    ~~~~^^
                      2026/09/20 15:07:59	stderr	    main()
                      2026/09/20 15:07:59	stderr	  File "/app/main.py", line 2693, in <module>
                      2026/09/20 15:07:59	stderr	Traceback (most recent call last):
                      2026/09/20 15:07:59	stderr	13:07:59 [INFO] hannah.main: Hannah Core dev
                      2026/09/20 15:07:03	stderr	AttributeError: 'str' object has no attribute 'get'
                      2026/09/20 15:07:03	stderr	                       ^^^^^^^
                      2026/09/20 15:07:03	stderr	    activity_log_cfg = cfg.get("activity_log", {})
                      2026/09/20 15:07:03	stderr	  File "/app/main.py", line 148, in main
                      2026/09/20 15:07:03	stderr	    ~~~~^^
                      2026/09/20 15:07:03	stderr	    main()
                      2026/09/20 15:07:03	stderr	  File "/app/main.py", line 2693, in <module>
                      2026/09/20 15:07:03	stderr	Traceback (most recent call last):
                      2026/09/20 15:07:03	stderr	13:07:03 [INFO] hannah.main: Hannah Core dev
                      2026/09/20 15:06:33	stderr	AttributeError: 'str' object has no attribute 'get'
                      2026/09/20 15:06:33	stderr	                       ^^^^^^^
                      2026/09/20 15:06:33	stderr	    activity_log_cfg = cfg.get("activity_log", {})
                      2026/09/20 15:06:33	stderr	  File "/app/main.py", line 148, in main
                      2026/09/20 15:06:33	stderr	    ~~~~^^
                      2026/09/20 15:06:33	stderr	    main()
                      2026/09/20 15:06:33	stderr	  File "/app/main.py", line 2693, in <module>
                      2026/09/20 15:06:33	stderr	Traceback (most recent call last):
                      2026/09/20 15:06:33	stderr	13:06:33 [INFO] hannah.main: Hannah Core dev
                      2026/09/20 15:06:16	stderr	AttributeError: 'str' object has no attribute 'get'
                      2026/09/20 15:06:16	stderr	                       ^^^^^^^
                      2026/09/20 15:06:16	stderr	    activity_log_cfg = cfg.get("activity_log", {})
                      2026/09/20 15:06:16	stderr	  File "/app/main.py", line 148, in main
                      2026/09/20 15:06:16	stderr	    ~~~~^^
                      2026/09/20 15:06:16	stderr	    main()
                      2026/09/20 15:06:16	stderr	  File "/app/main.py", line 2693, in <module>
                      2026/09/20 15:06:16	stderr	Traceback (most recent call last):
                      2026/09/20 15:06:16	stderr	13:06:16 [INFO] hannah.main: Hannah Core dev
                      2026/09/20 15:06:06	stderr	AttributeError: 'str' object has no attribute 'get'
                      2026/09/20 15:06:06	stderr	                       ^^^^^^^
                      2026/09/20 15:06:06	stderr	    activity_log_cfg = cfg.get("activity_log", {})
                      2026/09/20 15:06:06	stderr	  File "/app/main.py", line 148, in main
                      2026/09/20 15:06:06	stderr	    ~~~~^^
                      2026/09/20 15:06:06	stderr	    main()
                      2026/09/20 15:06:06	stderr	  File "/app/main.py", line 2693, in <module>
                      2026/09/20 15:06:06	stderr	Traceback (most recent call last):
                      2026/09/20 15:06:06	stderr	13:06:06 [INFO] hannah.main: Hannah Core dev
                      2026/09/20 15:05:58	stderr	AttributeError: 'str' object has no attribute 'get'
                      2026/09/20 15:05:58	stderr	                       ^^^^^^^
                      2026/09/20 15:05:58	stderr	    activity_log_cfg = cfg.get("activity_log", {})
                      2026/09/20 15:05:58	stderr	  File "/app/main.py", line 148, in main
                      2026/09/20 15:05:58	stderr	    ~~~~^^
                      2026/09/20 15:05:58	stderr	    main()
                      2026/09/20 15:05:58	stderr	  File "/app/main.py", line 2693, in <module>
                      2026/09/20 15:05:58	stderr	Traceback (most recent call last):
                      2026/09/20 15:05:58	stderr	13:05:58 [INFO] hannah.main: Hannah Core dev
                      2026/09/20 15:05:52	stderr	AttributeError: 'str' object has no attribute 'get'
                      2026/09/20 15:05:52	stderr	                       ^^^^^^^
                      2026/09/20 15:05:52	stderr	    activity_log_cfg = cfg.get("activity_log", {})
                      2026/09/20 15:05:52	stderr	  File "/app/main.py", line 148, in main
                      2026/09/20 15:05:52	stderr	    ~~~~^^
                      2026/09/20 15:05:52	stderr	    main()
                      2026/09/20 15:05:52	stderr	  File "/app/main.py", line 2693, in <module>
                      2026/09/20 15:05:52	stderr	Traceback (most recent call last):
                      2026/09/20 15:05:52	stderr	13:05:52 [INFO] hannah.main: Hannah Core dev
                      2026/09/20 15:05:47	stderr	AttributeError: 'str' object has no attribute 'get'
                      2026/09/20 15:05:47	stderr	                       ^^^^^^^
                      2026/09/20 15:05:47	stderr	    activity_log_cfg = cfg.get("activity_log", {})
                      2026/09/20 15:05:47	stderr	  File "/app/main.py", line 148, in main
                      2026/09/20 15:05:47	stderr	    ~~~~^^
                      2026/09/20 15:05:47	stderr	    main()
                      2026/09/20 15:05:47	stderr	  File "/app/main.py", line 2693, in <module>
                      2026/09/20 15:05:47	stderr	Traceback (most recent call last):
                      2026/09/20 15:05:47	stderr	13:05:47 [INFO] hannah.main: Hannah Core dev
                      2026/09/20 15:05:42	stderr	AttributeError: 'str' object has no attribute 'get'
                      2026/09/20 15:05:42	stderr	                       ^^^^^^^
                      2026/09/20 15:05:42	stderr	    activity_log_cfg = cfg.get("activity_log", {})
                      2026/09/20 15:05:42	stderr	  File "/app/main.py", line 148, in main
                      2026/09/20 15:05:42	stderr	    ~~~~^^
                      2026/09/20 15:05:42	stderr	    main()
                      2026/09/20 15:05:42	stderr	  File "/app/main.py", line 2693, in <module>
                      2026/09/20 15:05:42	stderr	Traceback (most recent call last):
                      2026/09/20 15:05:42	stderr	13:05:42 [INFO] hannah.main: Hannah Core dev
                      2026/09/20 15:05:38	stderr	AttributeError: 'str' object has no attribute 'get'
                      2026/09/20 15:05:38	stderr	                       ^^^^^^^
                      2026/09/20 15:05:38	stderr	    activity_log_cfg = cfg.get("activity_log", {})
                      2026/09/20 15:05:38	stderr	  File "/app/main.py", line 148, in main
                      2026/09/20 15:05:38	stderr	    ~~~~^^
                      2026/09/20 15:05:38	stderr	    main()
                      2026/09/20 15:05:38	stderr	  File "/app/main.py", line 2693, in <module>
                      2026/09/20 15:05:38	stderr	Traceback (most recent call last):
                      2026/09/20 15:05:38	stderr	13:05:38 [INFO] hannah.main: Hannah Core dev
                      2026/09/20 15:05:34	stderr	AttributeError: 'str' object has no attribute 'get'
                      2026/09/20 15:05:34	stderr	                       ^^^^^^^
                      2026/09/20 15:05:34	stderr	    activity_log_cfg = cfg.get("activity_log", {})
                      2026/09/20 15:05:34	stderr	  File "/app/main.py", line 148, in main
                      2026/09/20 15:05:34	stderr	    ~~~~^^
                      2026/09/20 15:05:34	stderr	    main()
                      2026/09/20 15:05:34	stderr	  File "/app/main.py", line 2693, in <module>
                      2026/09/20 15:05:34	stderr	Traceback (most recent call last): 
                      
                      1 Antwort Letzte Antwort
                      0
                      • L
                        L
                        Leonie
                        schrieb zuletzt editiert von
                        #225

                        Ich schätze dir fehlt die Config oder die ist nicht korrekt. Hast du die Config erstellt und neben das compose File gelegt?

                        1 Antwort Letzte Antwort
                        0
                        • M
                          M
                          McBeath
                          schrieb zuletzt editiert von McBeath
                          #226

                          Ja sicher, aber ich denke es liegt an den Ordnern, es wurden keine Ordner erstellt.
                          Screenshot 2026-09-20 152707.png

                          In einer anderen compose die die anders deklariert:

                          volumes:
                                - ./persistent:/persistent
                                - ./log:/var/log
                                - ./data:/data
                                - ./srv:/srv
                          

                          als in der von Hannah

                          volumes:
                            core_data:
                            core_activity_audio:
                            core_audio_dumps:
                            webui_data:
                          

                          Reicht es die Ordner Manuell zu erstellen?

                          1 Antwort Letzte Antwort
                          0
                          • L
                            L
                            Leonie
                            schrieb zuletzt editiert von
                            #227

                            Das ist richtig. Mein Compose File verwendet named volumes, die sind ein Docker-Standard. Die findest du unter Linux unter /var/lb/docker/volumes. Kannst du mir die core-config.yaml zeigen?

                            1 Antwort Letzte Antwort
                            0
                            • L
                              L
                              Leonie
                              schrieb zuletzt editiert von
                              #228

                              mh. ich glaube deine core-config.yaml ist einfach falsch. Schaue dir die Datei dort an https://raw.githubusercontent.com/NurPech/Hannah/refs/heads/master/core/config.example.yaml

                              Und kopiere den Inhalt in deine Datei

                              1 Antwort Letzte Antwort
                              0
                              • M
                                M
                                McBeath
                                schrieb zuletzt editiert von
                                #229

                                Devinitiv der Falsche inhalt für die core-config.yaml
                                Erhalte beim speichern Fehler über Zeichen die nicht der Codierung entsprechen.
                                Habe schon die icons entfernt: 🏠 ⏸️
                                beschwert sich allerdings immer noch.
                                Wenn dies ignoriere läuf der core dennoch nicht.

                                1 Antwort Letzte Antwort
                                0
                                • L
                                  L
                                  Leonie
                                  schrieb zuletzt editiert von
                                  #230

                                  Kurz zur Einordnung: Die Fehlermeldung "Zeichen entsprechen nicht der Codierung" kommt vermutlich nicht von Hannah selbst, sondern von dem Editor/Tool, mit dem du die config.yaml bearbeitest — die Datei muss als UTF-8 gespeichert werden, nicht als ANSI/Windows-1252 oder eine andere Kodierung. Die deutschen Umlaute in den Kommentaren (ü, ä, ö) und sogar die Icons sind normalerweise kein Problem, aber wenn dein Editor/Browser die Datei beim Speichern nicht sauber als UTF-8 schreibt, bricht Hannah beim Start mit einer für dich aktuell noch schwer lesbaren Fehlermeldung ab.

                                  Zwei Dinge würden mir helfen, das genauer einzugrenzen:

                                  Screenshot der genauen Fehlermeldung — am besten inkl. wo/wann sie auftritt (beim Speichern in welchem Programm, oder erst beim Start von Hannah im Container-Log?).
                                  Falls möglich: womit genau bearbeitest du die Datei? (Synology File Station-Editor, ein Editor im Browser, etwas anderes?)
                                  Als schneller Workaround: Falls dein aktueller Editor Probleme macht, versuch die config.yaml z.B. mit VS Code, Notepad++ (dort explizit "UTF-8 ohne BOM" als Encoding wählen) oder direkt auf der NAS per nano/vi zu bearbeiten — die speichern zuverlässig UTF-8.

                                  Nebenbei: Ich baue gerade nach, dass eine kaputte config.yaml künftig mit einer klaren Fehlermeldung abbricht statt mit einem kryptischen Python-Traceback — das kommt mit dem nächsten Release, hilft dir jetzt aber noch nicht direkt.

                                  1 Antwort Letzte Antwort
                                  0
                                  • M
                                    M
                                    McBeath
                                    schrieb zuletzt editiert von McBeath
                                    #231

                                    Die Fehlermeldung kam vom File Station Editor. Hab eine neue Config direkt auf dem PC erstellt und ersetzt. Dieses mal ohne Meldung.
                                    Container noch einmal neu erstellt, Core startet jetzt für 7-14 sekunden bis er neustartet.
                                    Ist MQTT für den Core zwingend? den hab ich ja eben aus der compose geworfen!?
                                    Hier das aktuelle Log:

                                    2026/09/20 16:08:52	stderr	ConnectionRefusedError: [Errno 111] Connection refused
                                    2026/09/20 16:08:52	stderr	    ~~~~~~~~~~~~^^^^
                                    2026/09/20 16:08:52	stderr	    sock.connect(sa)
                                    2026/09/20 16:08:52	stderr	  File "/usr/local/lib/python3.14/socket.py", line 859, in create_connection
                                    2026/09/20 16:08:52	stderr	    raise exceptions[0]
                                    2026/09/20 16:08:52	stderr	  File "/usr/local/lib/python3.14/socket.py", line 874, in create_connection
                                    2026/09/20 16:08:52	stderr	           ~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
                                    2026/09/20 16:08:52	stderr	    return socket.create_connection(addr, timeout=self._connect_timeout, source_address=source)
                                    2026/09/20 16:08:52	stderr	  File "/usr/local/lib/python3.14/site-packages/paho/mqtt/client.py", line 4640, in _create_socket_connection
                                    2026/09/20 16:08:52	stderr	    sock = self._create_socket_connection()
                                    2026/09/20 16:08:52	stderr	  File "/usr/local/lib/python3.14/site-packages/paho/mqtt/client.py", line 4609, in _create_socket
                                    2026/09/20 16:08:52	stderr	                 ~~~~~~~~~~~~~~~~~~~^^
                                    2026/09/20 16:08:52	stderr	    self._sock = self._create_socket()
                                    2026/09/20 16:08:52	stderr	  File "/usr/local/lib/python3.14/site-packages/paho/mqtt/client.py", line 1598, in reconnect
                                    2026/09/20 16:08:52	stderr	           ~~~~~~~~~~~~~~^^
                                    2026/09/20 16:08:52	stderr	    return self.reconnect()
                                    2026/09/20 16:08:52	stderr	  File "/usr/local/lib/python3.14/site-packages/paho/mqtt/client.py", line 1435, in connect
                                    2026/09/20 16:08:52	stderr	    ~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^
                                    2026/09/20 16:08:52	stderr	    self._client.connect(host, port, keepalive=60)
                                    2026/09/20 16:08:52	stderr	  File "/app/hannah/mqtt_handler.py", line 249, in connect
                                    2026/09/20 16:08:52	stderr	    ~~~~~~~~~~~~~~~~~~~~^^
                                    2026/09/20 16:08:52	stderr	    mqtt_handler.connect()
                                    2026/09/20 16:08:52	stderr	  File "/app/main.py", line 2531, in main
                                    2026/09/20 16:08:52	stderr	    ~~~~^^
                                    2026/09/20 16:08:52	stderr	    main()
                                    2026/09/20 16:08:52	stderr	  File "/app/main.py", line 2693, in <module>
                                    2026/09/20 16:08:52	stderr	Traceback (most recent call last):
                                    2026/09/20 16:08:52	stderr	14:08:52 [INFO] hannah.mqtt_handler: Verbinde mit MQTT-Broker 192.168.1.1:1883 ...
                                    2026/09/20 16:08:52	stderr	14:08:52 [INFO] hannah.trigger_engine: TriggerEngine gestartet.
                                    2026/09/20 16:08:51	stderr	14:08:51 [INFO] hannah.llm: LLM: DummyLLM aktiv (kein LLM konfiguriert)
                                    2026/09/20 16:08:51	stderr	14:08:51 [INFO] hannah.tts: TTS deaktiviert (kein Backend konfiguriert).
                                    2026/09/20 16:08:51	stderr	14:08:51 [WARNING] hannah.tts: Bestätigungston '/home/pi/confirmation.wav' nicht ladbar: /home/pi/confirmation.wav — nutze synthetisierten Ton.
                                    2026/09/20 16:08:51	stderr	14:08:51 [ERROR] hannah.tts: TTS-Backend 'piper' Initialisierung fehlgeschlagen: [Errno 2] No such file or directory: '/home/pi/de_DE-kerstin-low.onnx.json'
                                    2026/09/20 16:08:51	stderr	14:08:51 [INFO] hannah.tts: Lade Piper-Stimme: /home/pi/de_DE-kerstin-low.onnx …
                                    2026/09/20 16:08:51	stderr	14:08:51 [WARNING] hannah.tts: Piper-Autodownload für 'de_DE-kerstin-low' fehlgeschlagen: [Errno 2] No such file or directory: '/home/pi/de_DE-kerstin-low.onnx'
                                    2026/09/20 16:08:51	stderr	14:08:51 [INFO] hannah.tts: Piper-Stimme 'de_DE-kerstin-low' unvollständig unter /home/pi — lade von HuggingFace …
                                    2026/09/20 16:08:51	stderr	14:08:51 [INFO] hannah.stt: STT-Kette: local
                                    2026/09/20 16:08:51	stderr	14:08:51 [INFO] hannah.stt: Whisper bereit.
                                    2026/09/20 16:08:50	stderr	14:08:50 [INFO] httpx: HTTP Request: GET https://huggingface.co/api/models/Systran/faster-whisper-base/revision/main "HTTP/1.1 200 OK"
                                    2026/09/20 16:08:48	stderr	14:08:48 [INFO] hannah.stt: Lade Whisper-Modell 'base' (cpu, int8) ...
                                    2026/09/20 16:08:48	stderr	14:08:48 [WARNING] hannah.main: Keine Räume aus ioBroker geladen — NLU arbeitet ohne Raum-Erkennung.
                                    2026/09/20 16:08:48	stderr	14:08:48 [INFO] hannah.utils.activity_db: [activity_db] Kein Host konfiguriert — Activity-Log deaktiviert.
                                    2026/09/20 16:08:48	stderr	14:08:48 [INFO] hannah.main: Hannah Core dev
                                    2026/09/20 16:08:42	stderr	ConnectionRefusedError: [Errno 111] Connection refused
                                    2026/09/20 16:08:42	stderr	    ~~~~~~~~~~~~^^^^
                                    2026/09/20 16:08:42	stderr	    sock.connect(sa)
                                    2026/09/20 16:08:42	stderr	  File "/usr/local/lib/python3.14/socket.py", line 859, in create_connection
                                    2026/09/20 16:08:42	stderr	    raise exceptions[0]
                                    2026/09/20 16:08:42	stderr	  File "/usr/local/lib/python3.14/socket.py", line 874, in create_connection
                                    2026/09/20 16:08:42	stderr	           ~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
                                    2026/09/20 16:08:42	stderr	    return socket.create_connection(addr, timeout=self._connect_timeout, source_address=source)
                                    2026/09/20 16:08:42	stderr	  File "/usr/local/lib/python3.14/site-packages/paho/mqtt/client.py", line 4640, in _create_socket_connection
                                    2026/09/20 16:08:42	stderr	    sock = self._create_socket_connection()
                                    2026/09/20 16:08:42	stderr	  File "/usr/local/lib/python3.14/site-packages/paho/mqtt/client.py", line 4609, in _create_socket
                                    2026/09/20 16:08:42	stderr	                 ~~~~~~~~~~~~~~~~~~~^^
                                    2026/09/20 16:08:42	stderr	    self._sock = self._create_socket()
                                    2026/09/20 16:08:42	stderr	  File "/usr/local/lib/python3.14/site-packages/paho/mqtt/client.py", line 1598, in reconnect
                                    2026/09/20 16:08:42	stderr	           ~~~~~~~~~~~~~~^^
                                    2026/09/20 16:08:42	stderr	    return self.reconnect()
                                    2026/09/20 16:08:42	stderr	  File "/usr/local/lib/python3.14/site-packages/paho/mqtt/client.py", line 1435, in connect
                                    2026/09/20 16:08:42	stderr	    ~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^
                                    2026/09/20 16:08:42	stderr	    self._client.connect(host, port, keepalive=60)
                                    2026/09/20 16:08:42	stderr	  File "/app/hannah/mqtt_handler.py", line 249, in connect
                                    2026/09/20 16:08:42	stderr	    ~~~~~~~~~~~~~~~~~~~~^^
                                    2026/09/20 16:08:42	stderr	    mqtt_handler.connect()
                                    2026/09/20 16:08:42	stderr	  File "/app/main.py", line 2531, in main
                                    2026/09/20 16:08:42	stderr	    ~~~~^^
                                    2026/09/20 16:08:42	stderr	    main()
                                    2026/09/20 16:08:42	stderr	  File "/app/main.py", line 2693, in <module>
                                    2026/09/20 16:08:42	stderr	Traceback (most recent call last):
                                    2026/09/20 16:08:42	stderr	14:08:42 [INFO] hannah.mqtt_handler: Verbinde mit MQTT-Broker 192.168.1.1:1883 ...
                                    2026/09/20 16:08:42	stderr	14:08:42 [INFO] hannah.trigger_engine: TriggerEngine gestartet.
                                    2026/09/20 16:08:42	stderr	14:08:42 [INFO] hannah.llm: LLM: DummyLLM aktiv (kein LLM konfiguriert)
                                    2026/09/20 16:08:42	stderr	14:08:42 [INFO] hannah.tts: TTS deaktiviert (kein Backend konfiguriert).
                                    2026/09/20 16:08:42	stderr	14:08:42 [WARNING] hannah.tts: Bestätigungston '/home/pi/confirmation.wav' nicht ladbar: /home/pi/confirmation.wav — nutze synthetisierten Ton.
                                    2026/09/20 16:08:42	stderr	14:08:42 [ERROR] hannah.tts: TTS-Backend 'piper' Initialisierung fehlgeschlagen: [Errno 2] No such file or directory: '/home/pi/de_DE-kerstin-low.onnx.json'
                                    2026/09/20 16:08:42	stderr	14:08:42 [INFO] hannah.tts: Lade Piper-Stimme: /home/pi/de_DE-kerstin-low.onnx …
                                    2026/09/20 16:08:42	stderr	14:08:42 [WARNING] hannah.tts: Piper-Autodownload für 'de_DE-kerstin-low' fehlgeschlagen: [Errno 2] No such file or directory: '/home/pi/de_DE-kerstin-low.onnx'
                                    2026/09/20 16:08:42	stderr	14:08:42 [INFO] hannah.tts: Piper-Stimme 'de_DE-kerstin-low' unvollständig unter /home/pi — lade von HuggingFace …
                                    2026/09/20 16:08:42	stderr	14:08:42 [INFO] hannah.stt: STT-Kette: local
                                    2026/09/20 16:08:42	stderr	14:08:42 [INFO] hannah.stt: Whisper bereit.
                                    2026/09/20 16:08:40	stderr	14:08:40 [INFO] httpx: HTTP Request: GET https://huggingface.co/api/models/Systran/faster-whisper-base/revision/main "HTTP/1.1 200 OK"
                                    2026/09/20 16:08:39	stderr	14:08:39 [INFO] hannah.stt: Lade Whisper-Modell 'base' (cpu, int8) ...
                                    2026/09/20 16:08:39	stderr	14:08:39 [WARNING] hannah.main: Keine Räume aus ioBroker geladen — NLU arbeitet ohne Raum-Erkennung.
                                    2026/09/20 16:08:39	stderr	14:08:39 [INFO] hannah.utils.activity_db: [activity_db] Kein Host konfiguriert — Activity-Log deaktiviert.
                                    2026/09/20 16:08:39	stderr	14:08:39 [INFO] hannah.main: Hannah Core dev
                                    2026/09/20 16:08:34	stderr	ConnectionRefusedError: [Errno 111] Connection refused
                                    2026/09/20 16:08:34	stderr	    ~~~~~~~~~~~~^^^^
                                    2026/09/20 16:08:34	stderr	    sock.connect(sa)
                                    2026/09/20 16:08:34	stderr	  File "/usr/local/lib/python3.14/socket.py", line 859, in create_connection
                                    2026/09/20 16:08:34	stderr	    raise exceptions[0]
                                    2026/09/20 16:08:34	stderr	  File "/usr/local/lib/python3.14/socket.py", line 874, in create_connection
                                    2026/09/20 16:08:34	stderr	           ~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
                                    2026/09/20 16:08:34	stderr	    return socket.create_connection(addr, timeout=self._connect_timeout, source_address=source)
                                    2026/09/20 16:08:34	stderr	  File "/usr/local/lib/python3.14/site-packages/paho/mqtt/client.py", line 4640, in _create_socket_connection
                                    2026/09/20 16:08:34	stderr	    sock = self._create_socket_connection()
                                    2026/09/20 16:08:34	stderr	  File "/usr/local/lib/python3.14/site-packages/paho/mqtt/client.py", line 4609, in _create_socket
                                    2026/09/20 16:08:34	stderr	                 ~~~~~~~~~~~~~~~~~~~^^
                                    2026/09/20 16:08:34	stderr	    self._sock = self._create_socket()
                                    2026/09/20 16:08:34	stderr	  File "/usr/local/lib/python3.14/site-packages/paho/mqtt/client.py", line 1598, in reconnect
                                    2026/09/20 16:08:34	stderr	           ~~~~~~~~~~~~~~^^
                                    2026/09/20 16:08:34	stderr	    return self.reconnect()
                                    2026/09/20 16:08:34	stderr	  File "/usr/local/lib/python3.14/site-packages/paho/mqtt/client.py", line 1435, in connect
                                    2026/09/20 16:08:34	stderr	    ~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^
                                    2026/09/20 16:08:34	stderr	    self._client.connect(host, port, keepalive=60)
                                    2026/09/20 16:08:34	stderr	  File "/app/hannah/mqtt_handler.py", line 249, in connect
                                    2026/09/20 16:08:34	stderr	    ~~~~~~~~~~~~~~~~~~~~^^
                                    2026/09/20 16:08:34	stderr	    mqtt_handler.connect()
                                    2026/09/20 16:08:34	stderr	  File "/app/main.py", line 2531, in main
                                    2026/09/20 16:08:34	stderr	    ~~~~^^
                                    2026/09/20 16:08:34	stderr	    main()
                                    2026/09/20 16:08:34	stderr	  File "/app/main.py", line 2693, in <module>
                                    2026/09/20 16:08:34	stderr	Traceback (most recent call last):
                                    2026/09/20 16:08:34	stderr	14:08:34 [INFO] hannah.mqtt_handler: Verbinde mit MQTT-Broker 192.168.1.1:1883 ...
                                    2026/09/20 16:08:34	stderr	14:08:34 [INFO] hannah.trigger_engine: TriggerEngine gestartet.
                                    2026/09/20 16:08:34	stderr	14:08:34 [INFO] hannah.llm: LLM: DummyLLM aktiv (kein LLM konfiguriert)
                                    2026/09/20 16:08:34	stderr	14:08:34 [INFO] hannah.tts: TTS deaktiviert (kein Backend konfiguriert).
                                    2026/09/20 16:08:34	stderr	14:08:34 [WARNING] hannah.tts: Bestätigungston '/home/pi/confirmation.wav' nicht ladbar: /home/pi/confirmation.wav — nutze synthetisierten Ton.
                                    2026/09/20 16:08:34	stderr	14:08:34 [ERROR] hannah.tts: TTS-Backend 'piper' Initialisierung fehlgeschlagen: [Errno 2] No such file or directory: '/home/pi/de_DE-kerstin-low.onnx.json'
                                    2026/09/20 16:08:34	stderr	14:08:34 [INFO] hannah.tts: Lade Piper-Stimme: /home/pi/de_DE-kerstin-low.onnx …
                                    2026/09/20 16:08:34	stderr	14:08:34 [WARNING] hannah.tts: Piper-Autodownload für 'de_DE-kerstin-low' fehlgeschlagen: [Errno 2] No such file or directory: '/home/pi/de_DE-kerstin-low.onnx'
                                    2026/09/20 16:08:33	stderr	14:08:33 [INFO] hannah.tts: Piper-Stimme 'de_DE-kerstin-low' unvollständig unter /home/pi — lade von HuggingFace …
                                    2026/09/20 16:08:33	stderr	14:08:33 [INFO] hannah.stt: STT-Kette: local
                                    2026/09/20 16:08:33	stderr	14:08:33 [INFO] hannah.stt: Whisper bereit.
                                    2026/09/20 16:08:32	stderr	14:08:32 [INFO] httpx: HTTP Request: GET https://huggingface.co/api/models/Systran/faster-whisper-base/revision/main "HTTP/1.1 200 OK"
                                    2026/09/20 16:08:30	stderr	14:08:30 [INFO] hannah.stt: Lade Whisper-Modell 'base' (cpu, int8) ...
                                    2026/09/20 16:08:30	stderr	14:08:30 [WARNING] hannah.main: Keine Räume aus ioBroker geladen — NLU arbeitet ohne Raum-Erkennung.
                                    2026/09/20 16:08:30	stderr	14:08:30 [INFO] hannah.utils.activity_db: [activity_db] Kein Host konfiguriert — Activity-Log deaktiviert.
                                    2026/09/20 16:08:30	stderr	14:08:30 [INFO] hannah.main: Hannah Core dev
                                    2026/09/20 16:08:25	stderr	ConnectionRefusedError: [Errno 111] Connection refused
                                    2026/09/20 16:08:25	stderr	    ~~~~~~~~~~~~^^^^
                                    2026/09/20 16:08:25	stderr	    sock.connect(sa)
                                    2026/09/20 16:08:25	stderr	  File "/usr/local/lib/python3.14/socket.py", line 859, in create_connection
                                    2026/09/20 16:08:25	stderr	    raise exceptions[0]
                                    2026/09/20 16:08:25	stderr	  File "/usr/local/lib/python3.14/socket.py", line 874, in create_connection
                                    2026/09/20 16:08:25	stderr	           ~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
                                    2026/09/20 16:08:25	stderr	    return socket.create_connection(addr, timeout=self._connect_timeout, source_address=source)
                                    2026/09/20 16:08:25	stderr	  File "/usr/local/lib/python3.14/site-packages/paho/mqtt/client.py", line 4640, in _create_socket_connection
                                    2026/09/20 16:08:25	stderr	    sock = self._create_socket_connection()
                                    2026/09/20 16:08:25	stderr	  File "/usr/local/lib/python3.14/site-packages/paho/mqtt/client.py", line 4609, in _create_socket
                                    2026/09/20 16:08:25	stderr	                 ~~~~~~~~~~~~~~~~~~~^^
                                    2026/09/20 16:08:25	stderr	    self._sock = self._create_socket()
                                    2026/09/20 16:08:25	stderr	  File "/usr/local/lib/python3.14/site-packages/paho/mqtt/client.py", line 1598, in reconnect
                                    2026/09/20 16:08:25	stderr	           ~~~~~~~~~~~~~~^^
                                    2026/09/20 16:08:25	stderr	    return self.reconnect()
                                    2026/09/20 16:08:25	stderr	  File "/usr/local/lib/python3.14/site-packages/paho/mqtt/client.py", line 1435, in connect
                                    2026/09/20 16:08:25	stderr	    ~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^
                                    2026/09/20 16:08:25	stderr	    self._client.connect(host, port, keepalive=60)
                                    2026/09/20 16:08:25	stderr	  File "/app/hannah/mqtt_handler.py", line 249, in connect
                                    2026/09/20 16:08:25	stderr	    ~~~~~~~~~~~~~~~~~~~~^^
                                    2026/09/20 16:08:25	stderr	    mqtt_handler.connect()
                                    2026/09/20 16:08:25	stderr	  File "/app/main.py", line 2531, in main
                                    2026/09/20 16:08:25	stderr	    ~~~~^^
                                    2026/09/20 16:08:25	stderr	    main()
                                    2026/09/20 16:08:25	stderr	  File "/app/main.py", line 2693, in <module>
                                    2026/09/20 16:08:25	stderr	Traceback (most recent call last):
                                    2026/09/20 16:08:25	stderr	14:08:25 [INFO] hannah.mqtt_handler: Verbinde mit MQTT-Broker 192.168.1.1:1883 ...
                                    2026/09/20 16:08:25	stderr	14:08:25 [INFO] hannah.trigger_engine: TriggerEngine gestartet.
                                    2026/09/20 16:08:25	stderr	14:08:25 [INFO] hannah.llm: LLM: DummyLLM aktiv (kein LLM konfiguriert)
                                    2026/09/20 16:08:25	stderr	14:08:25 [INFO] hannah.tts: TTS deaktiviert (kein Backend konfiguriert).
                                    2026/09/20 16:08:25	stderr	14:08:25 [WARNING] hannah.tts: Bestätigungston '/home/pi/confirmation.wav' nicht ladbar: /home/pi/confirmation.wav — nutze synthetisierten Ton.
                                    2026/09/20 16:08:25	stderr	14:08:25 [ERROR] hannah.tts: TTS-Backend 'piper' Initialisierung fehlgeschlagen: [Errno 2] No such file or directory: '/home/pi/de_DE-kerstin-low.onnx.json'
                                    2026/09/20 16:08:25	stderr	14:08:25 [INFO] hannah.tts: Lade Piper-Stimme: /home/pi/de_DE-kerstin-low.onnx …
                                    2026/09/20 16:08:25	stderr	14:08:25 [WARNING] hannah.tts: Piper-Autodownload für 'de_DE-kerstin-low' fehlgeschlagen: [Errno 2] No such file or directory: '/home/pi/de_DE-kerstin-low.onnx'
                                    2026/09/20 16:08:25	stderr	14:08:25 [INFO] hannah.tts: Piper-Stimme 'de_DE-kerstin-low' unvollständig unter /home/pi — lade von HuggingFace …
                                    2026/09/20 16:08:25	stderr	14:08:25 [INFO] hannah.stt: STT-Kette: local
                                    2026/09/20 16:08:25	stderr	14:08:25 [INFO] hannah.stt: Whisper bereit.
                                    2026/09/20 16:08:23	stderr	14:08:23 [INFO] httpx: HTTP Request: GET https://huggingface.co/api/models/Systran/faster-whisper-base/revision/main "HTTP/1.1 200 OK"
                                    2026/09/20 16:08:22	stderr	14:08:22 [INFO] hannah.stt: Lade Whisper-Modell 'base' (cpu, int8) ...
                                    2026/09/20 16:08:22	stderr	14:08:22 [WARNING] hannah.main: Keine Räume aus ioBroker geladen — NLU arbeitet ohne Raum-Erkennung.
                                    2026/09/20 16:08:22	stderr	14:08:22 [INFO] hannah.utils.activity_db: [activity_db] Kein Host konfiguriert — Activity-Log deaktiviert.
                                    2026/09/20 16:08:22	stderr	14:08:22 [INFO] hannah.main: Hannah Core dev
                                    2026/09/20 16:08:17	stderr	ConnectionRefusedError: [Errno 111] Connection refused
                                    2026/09/20 16:08:17	stderr	    ~~~~~~~~~~~~^^^^
                                    2026/09/20 16:08:17	stderr	    sock.connect(sa)
                                    2026/09/20 16:08:17	stderr	  File "/usr/local/lib/python3.14/socket.py", line 859, in create_connection
                                    2026/09/20 16:08:17	stderr	    raise exceptions[0]
                                    2026/09/20 16:08:17	stderr	  File "/usr/local/lib/python3.14/socket.py", line 874, in create_connection
                                    2026/09/20 16:08:17	stderr	           ~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
                                    2026/09/20 16:08:17	stderr	    return socket.create_connection(addr, timeout=self._connect_timeout, source_address=source)
                                    2026/09/20 16:08:17	stderr	  File "/usr/local/lib/python3.14/site-packages/paho/mqtt/client.py", line 4640, in _create_socket_connection
                                    2026/09/20 16:08:17	stderr	    sock = self._create_socket_connection()
                                    2026/09/20 16:08:17	stderr	  File "/usr/local/lib/python3.14/site-packages/paho/mqtt/client.py", line 4609, in _create_socket
                                    2026/09/20 16:08:17	stderr	                 ~~~~~~~~~~~~~~~~~~~^^
                                    2026/09/20 16:08:17	stderr	    self._sock = self._create_socket()
                                    2026/09/20 16:08:17	stderr	  File "/usr/local/lib/python3.14/site-packages/paho/mqtt/client.py", line 1598, in reconnect
                                    2026/09/20 16:08:17	stderr	           ~~~~~~~~~~~~~~^^
                                    2026/09/20 16:08:17	stderr	    return self.reconnect()
                                    2026/09/20 16:08:17	stderr	  File "/usr/local/lib/python3.14/site-packages/paho/mqtt/client.py", line 1435, in connect
                                    2026/09/20 16:08:17	stderr	    ~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^
                                    2026/09/20 16:08:17	stderr	    self._client.connect(host, port, keepalive=60)
                                    2026/09/20 16:08:17	stderr	  File "/app/hannah/mqtt_handler.py", line 249, in connect
                                    2026/09/20 16:08:17	stderr	    ~~~~~~~~~~~~~~~~~~~~^^
                                    2026/09/20 16:08:17	stderr	    mqtt_handler.connect()
                                    2026/09/20 16:08:17	stderr	  File "/app/main.py", line 2531, in main
                                    2026/09/20 16:08:17	stderr	    ~~~~^^
                                    2026/09/20 16:08:17	stderr	    main()
                                    2026/09/20 16:08:17	stderr	  File "/app/main.py", line 2693, in <module>
                                    2026/09/20 16:08:17	stderr	Traceback (most recent call last):
                                    2026/09/20 16:08:17	stderr	14:08:17 [INFO] hannah.mqtt_handler: Verbinde mit MQTT-Broker 192.168.1.1:1883 ...
                                    2026/09/20 16:08:17	stderr	14:08:17 [INFO] hannah.trigger_engine: TriggerEngine gestartet.
                                    2026/09/20 16:08:17	stderr	14:08:17 [INFO] hannah.llm: LLM: DummyLLM aktiv (kein LLM konfiguriert)
                                    2026/09/20 16:08:17	stderr	14:08:17 [INFO] hannah.tts: TTS deaktiviert (kein Backend konfiguriert).
                                    2026/09/20 16:08:17	stderr	14:08:17 [WARNING] hannah.tts: Bestätigungston '/home/pi/confirmation.wav' nicht ladbar: /home/pi/confirmation.wav — nutze synthetisierten Ton.
                                    2026/09/20 16:08:17	stderr	14:08:17 [ERROR] hannah.tts: TTS-Backend 'piper' Initialisierung fehlgeschlagen: [Errno 2] No such file or directory: '/home/pi/de_DE-kerstin-low.onnx.json'
                                    2026/09/20 16:08:17	stderr	14:08:17 [INFO] hannah.tts: Lade Piper-Stimme: /home/pi/de_DE-kerstin-low.onnx …
                                    2026/09/20 16:08:17	stderr	14:08:17 [WARNING] hannah.tts: Piper-Autodownload für 'de_DE-kerstin-low' fehlgeschlagen: [Errno 2] No such file or directory: '/home/pi/de_DE-kerstin-low.onnx'
                                    2026/09/20 16:08:17	stderr	14:08:17 [INFO] hannah.tts: Piper-Stimme 'de_DE-kerstin-low' unvollständig unter /home/pi — lade von HuggingFace …
                                    2026/09/20 16:08:16	stderr	14:08:16 [INFO] hannah.stt: STT-Kette: local
                                    2026/09/20 16:08:16	stderr	14:08:16 [INFO] hannah.stt: Whisper bereit.
                                    2026/09/20 16:08:15	stderr	14:08:15 [INFO] httpx: HTTP Request: GET https://huggingface.co/api/models/Systran/faster-whisper-base/revision/main "HTTP/1.1 200 OK"
                                    2026/09/20 16:08:14	stderr	14:08:14 [INFO] hannah.stt: Lade Whisper-Modell 'base' (cpu, int8) ...
                                    2026/09/20 16:08:14	stderr	14:08:14 [WARNING] hannah.main: Keine Räume aus ioBroker geladen — NLU arbeitet ohne Raum-Erkennung.
                                    2026/09/20 16:08:14	stderr	14:08:14 [INFO] hannah.utils.activity_db: [activity_db] Kein Host konfiguriert — Activity-Log deaktiviert.
                                    2026/09/20 16:08:14	stderr	14:08:14 [INFO] hannah.main: Hannah Core dev
                                    2026/09/20 16:08:09	stderr	ConnectionRefusedError: [Errno 111] Connection refused
                                    2026/09/20 16:08:09	stderr	    ~~~~~~~~~~~~^^^^
                                    2026/09/20 16:08:09	stderr	    sock.connect(sa)
                                    2026/09/20 16:08:09	stderr	  File "/usr/local/lib/python3.14/socket.py", line 859, in create_connection
                                    2026/09/20 16:08:09	stderr	    raise exceptions[0]
                                    2026/09/20 16:08:09	stderr	  File "/usr/local/lib/python3.14/socket.py", line 874, in create_connection
                                    2026/09/20 16:08:09	stderr	           ~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
                                    2026/09/20 16:08:09	stderr	    return socket.create_connection(addr, timeout=self._connect_timeout, source_address=source)
                                    2026/09/20 16:08:09	stderr	  File "/usr/local/lib/python3.14/site-packages/paho/mqtt/client.py", line 4640, in _create_socket_connection
                                    2026/09/20 16:08:09	stderr	    sock = self._create_socket_connection()
                                    2026/09/20 16:08:09	stderr	  File "/usr/local/lib/python3.14/site-packages/paho/mqtt/client.py", line 4609, in _create_socket
                                    2026/09/20 16:08:09	stderr	                 ~~~~~~~~~~~~~~~~~~~^^
                                    2026/09/20 16:08:09	stderr	    self._sock = self._create_socket()
                                    2026/09/20 16:08:09	stderr	  File "/usr/local/lib/python3.14/site-packages/paho/mqtt/client.py", line 1598, in reconnect
                                    2026/09/20 16:08:09	stderr	           ~~~~~~~~~~~~~~^^
                                    2026/09/20 16:08:09	stderr	    return self.reconnect()
                                    2026/09/20 16:08:09	stderr	  File "/usr/local/lib/python3.14/site-packages/paho/mqtt/client.py", line 1435, in connect
                                    2026/09/20 16:08:09	stderr	    ~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^
                                    2026/09/20 16:08:09	stderr	    self._client.connect(host, port, keepalive=60)
                                    2026/09/20 16:08:09	stderr	  File "/app/hannah/mqtt_handler.py", line 249, in connect
                                    2026/09/20 16:08:09	stderr	    ~~~~~~~~~~~~~~~~~~~~^^
                                    2026/09/20 16:08:09	stderr	    mqtt_handler.connect()
                                    2026/09/20 16:08:09	stderr	  File "/app/main.py", line 2531, in main
                                    2026/09/20 16:08:09	stderr	    ~~~~^^
                                    2026/09/20 16:08:09	stderr	    main()
                                    2026/09/20 16:08:09	stderr	  File "/app/main.py", line 2693, in <module>
                                    2026/09/20 16:08:09	stderr	Traceback (most recent call last):
                                    2026/09/20 16:08:09	stderr	14:08:09 [INFO] hannah.mqtt_handler: Verbinde mit MQTT-Broker 192.168.1.1:1883 ...
                                    2026/09/20 16:08:09	stderr	14:08:09 [INFO] hannah.trigger_engine: TriggerEngine gestartet.
                                    2026/09/20 16:08:09	stderr	14:08:09 [INFO] hannah.llm: LLM: DummyLLM aktiv (kein LLM konfiguriert)
                                    2026/09/20 16:08:09	stderr	14:08:09 [INFO] hannah.tts: TTS deaktiviert (kein Backend konfiguriert).
                                    2026/09/20 16:08:09	stderr	14:08:09 [WARNING] hannah.tts: Bestätigungston '/home/pi/confirmation.wav' nicht ladbar: /home/pi/confirmation.wav — nutze synthetisierten Ton.
                                    2026/09/20 16:08:09	stderr	14:08:09 [ERROR] hannah.tts: TTS-Backend 'piper' Initialisierung fehlgeschlagen: [Errno 2] No such file or directory: '/home/pi/de_DE-kerstin-low.onnx.json'
                                    2026/09/20 16:08:09	stderr	14:08:09 [INFO] hannah.tts: Lade Piper-Stimme: /home/pi/de_DE-kerstin-low.onnx …
                                    2026/09/20 16:08:09	stderr	14:08:09 [WARNING] hannah.tts: Piper-Autodownload für 'de_DE-kerstin-low' fehlgeschlagen: [Errno 2] No such file or directory: '/home/pi/de_DE-kerstin-low.onnx'
                                    2026/09/20 16:08:08	stderr	14:08:08 [INFO] hannah.tts: Piper-Stimme 'de_DE-kerstin-low' unvollständig unter /home/pi — lade von HuggingFace …
                                    2026/09/20 16:08:08	stderr	14:08:08 [INFO] hannah.stt: STT-Kette: local
                                    2026/09/20 16:08:08	stderr	14:08:08 [INFO] hannah.stt: Whisper bereit.
                                    2026/09/20 16:07:43	stderr	14:07:43 [INFO] httpx: HTTP Request: GET https://huggingface.co/api/models/Systran/faster-whisper-base/xet-read-token/ebe41f70d5b6dfa9166e2c581c45c9c0cfc57b66 "HTTP/1.1 200 OK"
                                    2026/09/20 16:07:42	stderr	14:07:42 [INFO] httpx: HTTP Request: GET https://huggingface.co/api/resolve-cache/models/Systran/faster-whisper-base/ebe41f70d5b6dfa9166e2c581c45c9c0cfc57b66/tokenizer.json?%2FSystran%2Ffaster-whisper-base%2Fresolve%2Febe41f70d5b6dfa9166e2c581c45c9c0cfc57b66%2Ftokenizer.json=&etag=%227818adb6de9fa3064d3ff81226fdd675be1f6344%22 "HTTP/1.1 200 OK"
                                    2026/09/20 16:07:42	stderr	14:07:42 [INFO] httpx: HTTP Request: GET https://huggingface.co/api/resolve-cache/models/Systran/faster-whisper-base/ebe41f70d5b6dfa9166e2c581c45c9c0cfc57b66/config.json?%2FSystran%2Ffaster-whisper-base%2Fresolve%2Febe41f70d5b6dfa9166e2c581c45c9c0cfc57b66%2Fconfig.json=&etag=%22867cf1a0fece1394e01d55e287ba2f09a577c046%22 "HTTP/1.1 200 OK"
                                    2026/09/20 16:07:42	stderr	14:07:42 [INFO] httpx: HTTP Request: HEAD https://huggingface.co/api/resolve-cache/models/Systran/faster-whisper-base/ebe41f70d5b6dfa9166e2c581c45c9c0cfc57b66/tokenizer.json?%2FSystran%2Ffaster-whisper-base%2Fresolve%2Febe41f70d5b6dfa9166e2c581c45c9c0cfc57b66%2Ftokenizer.json=&etag=%227818adb6de9fa3064d3ff81226fdd675be1f6344%22 "HTTP/1.1 200 OK"
                                    2026/09/20 16:07:42	stderr	14:07:42 [INFO] httpx: HTTP Request: GET https://huggingface.co/api/resolve-cache/models/Systran/faster-whisper-base/ebe41f70d5b6dfa9166e2c581c45c9c0cfc57b66/vocabulary.txt?%2FSystran%2Ffaster-whisper-base%2Fresolve%2Febe41f70d5b6dfa9166e2c581c45c9c0cfc57b66%2Fvocabulary.txt=&etag=%22c9074644d9d1205686f16d411564729461324b75%22 "HTTP/1.1 200 OK"
                                    2026/09/20 16:07:42	stderr	14:07:42 [INFO] httpx: HTTP Request: HEAD https://huggingface.co/api/resolve-cache/models/Systran/faster-whisper-base/ebe41f70d5b6dfa9166e2c581c45c9c0cfc57b66/config.json?%2FSystran%2Ffaster-whisper-base%2Fresolve%2Febe41f70d5b6dfa9166e2c581c45c9c0cfc57b66%2Fconfig.json=&etag=%22867cf1a0fece1394e01d55e287ba2f09a577c046%22 "HTTP/1.1 200 OK"
                                    2026/09/20 16:07:42	stderr	14:07:42 [INFO] httpx: HTTP Request: HEAD https://huggingface.co/Systran/faster-whisper-base/resolve/ebe41f70d5b6dfa9166e2c581c45c9c0cfc57b66/tokenizer.json "HTTP/1.1 307 Temporary Redirect"
                                    2026/09/20 16:07:42	stderr	14:07:42 [INFO] httpx: HTTP Request: HEAD https://huggingface.co/api/resolve-cache/models/Systran/faster-whisper-base/ebe41f70d5b6dfa9166e2c581c45c9c0cfc57b66/vocabulary.txt?%2FSystran%2Ffaster-whisper-base%2Fresolve%2Febe41f70d5b6dfa9166e2c581c45c9c0cfc57b66%2Fvocabulary.txt=&etag=%22c9074644d9d1205686f16d411564729461324b75%22 "HTTP/1.1 200 OK"
                                    2026/09/20 16:07:42	stderr	14:07:42 [INFO] httpx: HTTP Request: HEAD https://huggingface.co/Systran/faster-whisper-base/resolve/ebe41f70d5b6dfa9166e2c581c45c9c0cfc57b66/config.json "HTTP/1.1 307 Temporary Redirect"
                                    2026/09/20 16:07:42	stderr	14:07:42 [INFO] httpx: HTTP Request: HEAD https://huggingface.co/Systran/faster-whisper-base/resolve/ebe41f70d5b6dfa9166e2c581c45c9c0cfc57b66/vocabulary.txt "HTTP/1.1 307 Temporary Redirect"
                                    2026/09/20 16:07:42	stderr	14:07:42 [WARNING] huggingface_hub.utils._http: Warning: You are sending unauthenticated requests to the HF Hub. Please set a HF_TOKEN to enable higher rate limits and faster downloads.
                                    2026/09/20 16:07:42	stderr	Warning: You are sending unauthenticated requests to the HF Hub. Please set a HF_TOKEN to enable higher rate limits and faster downloads.
                                    2026/09/20 16:07:42	stderr	14:07:42 [INFO] httpx: HTTP Request: HEAD https://huggingface.co/Systran/faster-whisper-base/resolve/ebe41f70d5b6dfa9166e2c581c45c9c0cfc57b66/model.bin "HTTP/1.1 302 Found"
                                    2026/09/20 16:07:42	stderr	14:07:42 [INFO] httpx: HTTP Request: GET https://huggingface.co/api/models/Systran/faster-whisper-base/tree/ebe41f70d5b6dfa9166e2c581c45c9c0cfc57b66?recursive=true&expand=false "HTTP/1.1 200 OK"
                                    2026/09/20 16:07:42	stderr	14:07:42 [INFO] httpx: HTTP Request: GET https://huggingface.co/api/models/Systran/faster-whisper-base/revision/main "HTTP/1.1 200 OK"
                                    2026/09/20 16:07:42	stderr	14:07:42 [INFO] httpx: HTTP Request: GET https://huggingface.co/api/agent-harnesses "HTTP/1.1 200 OK"
                                    2026/09/20 16:07:40	stderr	14:07:40 [INFO] hannah.stt: Lade Whisper-Modell 'base' (cpu, int8) ...
                                    2026/09/20 16:07:40	stderr	14:07:40 [WARNING] hannah.main: Keine Räume aus ioBroker geladen — NLU arbeitet ohne Raum-Erkennung.
                                    2026/09/20 16:07:40	stderr	14:07:40 [INFO] hannah.utils.activity_db: [activity_db] Kein Host konfiguriert — Activity-Log deaktiviert.
                                    2026/09/20 16:07:40	stderr	14:07:40 [INFO] hannah.main: Hannah Core dev 
                                    

                                    In der Tat sagen mir die ganzen Fehlermeldungen nicht wirklich etwas.
                                    Wenn es hilft vertagen wir das ganze auf das besagte neue Release. 😉

                                    1 Antwort Letzte Antwort
                                    0
                                    • L
                                      L
                                      Leonie
                                      schrieb zuletzt editiert von Leonie
                                      #232

                                      Ja, MQTT ist der Steuerkanal zwischen Core und Satelliten. Außerdem bietet Hannah über mqtt eine Schnittstelle an.
                                      Offen gesagt, ergibt Hannah ohne MQTT eigentlich auch deshalb keinen Sinn, weshalb das im Programm zwingend benötigt wird.
                                      Die Angabe in der Doku das der mosquitto-Container optional ist, meint explizit nur den Container.
                                      Im Handbuch steht wörtlich:

                                      Hast du schon einen eigenen MQTT-Broker, ignorier diesen Abschnitt — trag einfach seine Adresse in mqtt.host (core-config.yaml) ein.

                                      Ich verstehe aber, das ich das Handbuch nacharbeiten sollte.

                                      Da ich davon ausgehe, das du aktuell gar keine Satelliten hast, würde ich mir mal anschauen, ob ich das Requirement auf optional setzen kann. Dann wird Hannah zwar nicht zu 100% funktionieren, aber den Fall könnte ich sauber abfangen, so das der Core zumindest nicht abstürzt.

                                      @McBeath sagte in Hannah — Open Source Smart-Home-Sprachassistentin:

                                      In der Tat sagen mir die ganzen Fehlermeldungen nicht wirklich etwas.

                                      Müssen sie auch nicht, die sind für mich :D

                                      1 Antwort Letzte Antwort
                                      0
                                      • L
                                        L
                                        Leonie
                                        schrieb zuletzt editiert von
                                        #233

                                        Hey,

                                        ich habe gerade eine neue Version vom Core veröffentlicht – bitte zieht euch einfach die aktuellen Images.

                                        Hannah bricht jetzt nicht mehr direkt in Panik aus (und legt einen Endlos-Neustart-Loop hin), nur weil gerade kein MQTT-Broker erreichbar ist. Sie läuft dann zwar an, wird ohne Broker aber verständlicherweise nicht vollumfänglich funktionieren.

                                        Die Doku und die genauen Auswirkungen habe ich im Handbuch ebenfalls entsprechend nachgeschärft.

                                        Vielen Dank für euer Interesse und die Tests – genau das hilft mir dabei, Hannah Schritt für Schritt robuster zu machen und zu verbessern! (Und keine Sorge: Die kryptischen Tracebacks in den Logs könnt ihr einfach an mich senden, dann sind die mein Problem 😉).

                                        1 Antwort Letzte Antwort
                                        0
                                        • L
                                          L
                                          Leonie
                                          schrieb zuletzt editiert von
                                          #234

                                          Kurzes Update zu einem Thema, das ein paar von euch schon getroffen hat: Wer Hannah über Synology Container Station laufen lassen wollte, ist über die Profile in der docker-compose.yml gestolpert — die GUI kann leider keine --profile-Flags übergeben, damit starten dann ungewollt Container, für die man gar keine Config hat.

                                          Die Lösung, an der ich gerade dran bin: ein interaktiver Compose-Builder direkt in der Doku. Man wählt an, welche Komponenten man braucht, und bekommt am Ende eine fertige docker-compose.yml — ganz ohne Profile, im Idealfall sogar ganz ohne Config-Dateien zum Runterladen, reines Copy & Paste. Die bisherige Compose-Datei und die native Installation bleiben natürlich weiter bestehen, für alle die lieber selbst Hand anlegen.

                                          Ist noch ein Stück Arbeit, weil dafür ein paar Komponenten intern erst etwas umgebaut werden müssen — aber die Richtung steht. Ich melde mich, wenn's was Konkretes zu zeigen gibt! (üblicherweise in ein paar Stunden xD)

                                          Liebe Grüße

                                          1 Antwort Letzte Antwort
                                          0

                                          Hey! Du scheinst an dieser Unterhaltung interessiert zu sein, hast aber noch kein Konto.

                                          Hast du es satt, bei jedem Besuch durch die gleichen Beiträge zu scrollen? Wenn du dich für ein Konto anmeldest, kommst du immer genau dorthin zurück, wo du zuvor warst, und kannst dich über neue Antworten benachrichtigen lassen (entweder per E-Mail oder Push-Benachrichtigung). Du kannst auch Lesezeichen speichern und Beiträge positiv bewerten, um anderen Community-Mitgliedern deine Wertschätzung zu zeigen.

                                          Mit deinem Input könnte dieser Beitrag noch besser werden 💗

                                          Registrieren Anmelden
                                          Antworten
                                          • In einem neuen Thema antworten
                                          Anmelden zum Antworten
                                          • Älteste zuerst
                                          • Neuste zuerst
                                          • Meiste Stimmen


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate

                                          222

                                          Online

                                          33.1k

                                          Benutzende

                                          83.8k

                                          Themen

                                          1.4m

                                          Beiträge
                                          Community
                                          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                                          ioBroker Community 2014-2026
                                          logo
                                          • Anmelden

                                          • Du hast noch kein Konto? Registrieren

                                          • Anmelden oder registrieren, um zu suchen
                                          • Erster Beitrag
                                            Letzter Beitrag
                                          0
                                          • Home
                                          • Aktuell
                                          • Ungelesen 0
                                          • Kategorien
                                          • Unreplied
                                          • Beliebt
                                          • GitHub
                                          • Docu
                                          • Hilfe