nextcloud_talk.py: - Fix missing import hmac / import hashlib (NameError bug in _verify_signature) - Add orchestrator routing when channels.json "tools": true — sends "⏳ Working on it…" immediately, then runs the full tool loop and replies with the result; checkpoint case gets a web UI confirmation note - Read tier and role from channel config (defaults: default_tier / "chat") - Pass cfg through to _process_message homeassistant.py (new): - POST /webhook/ha/{username}/{webhook_id} - Auth: webhook_id path segment matched against channels.json - Accepts JSON or form-encoded body from HA automations - Builds natural-language task from payload (uses "message" key if present, otherwise serialises full body as context) - Same orchestrator/direct dispatch as NCT - Delivers response via notify() — NC Talk, web push, or configured channel - Session key: ha_{username} for continuity across HA events - Registered in main.py; /webhook/ prefix already public in auth_middleware channels.json schema addition: "homeassistant": { "webhook_id": "your-secret-id", "persona": "inara", "tier": 2, "role": "chat", "tools": false } Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2.1 KiB
2.1 KiB