Move HA user agent routing to options

This commit is contained in:
2026-05-06 14:39:46 +02:00
parent 2a02c18b86
commit 1624bb9ff7
7 changed files with 155 additions and 19 deletions
+8 -1
View File
@@ -29,7 +29,9 @@ from .const import (
CONF_ASSIST_SESSION_ID,
CONF_CONTEXT_MAX_CHARS,
CONF_CONTEXT_STRATEGY,
CONF_FALLBACK_AGENT_ID,
CONF_INCLUDE_EXPOSED_CONTEXT,
CONF_USER_AGENT_MAP,
DEFAULT_ASSIST_SESSION_ID,
DEFAULT_CONTEXT_MAX_CHARS,
DEFAULT_CONTEXT_STRATEGY,
@@ -42,6 +44,7 @@ from .coordinator import OpenClawCoordinator
from .exposure import apply_context_policy, build_exposed_entities_context
from .helpers import extract_text_recursive
from .routing import (
DEFAULT_CHAT_AGENT_ID,
build_scoped_session_id,
normalize_ha_user_id,
resolve_agent_id,
@@ -130,7 +133,11 @@ class OpenClawConversationAgent(conversation.AbstractConversationAgent):
context = getattr(user_input, "context", None)
ha_user_id = normalize_ha_user_id(getattr(context, "user_id", None))
options = self.entry.options
resolved_agent_id = resolve_agent_id(ha_user_id)
resolved_agent_id = resolve_agent_id(
ha_user_id,
user_agent_map=options.get(CONF_USER_AGENT_MAP),
fallback_agent_id=options.get(CONF_FALLBACK_AGENT_ID, DEFAULT_CHAT_AGENT_ID),
)
conversation_id = self._resolve_conversation_id(
user_input,
ha_user_id,