|
@@ -255,7 +255,7 @@ class AgentService:
|
|
|
resp = self._get_chat_response(user_id, agent, message_text)
|
|
|
if resp:
|
|
|
recent_dialogue = agent.dialogue_history[-10:]
|
|
|
- agent_voice_whitelist = set(apollo_config.get_json_value("agent_voice_whitelist"))
|
|
|
+ agent_voice_whitelist = set(apollo_config.get_json_value("agent_voice_whitelist", []))
|
|
|
if len(recent_dialogue) < 2 or staff_id not in agent_voice_whitelist:
|
|
|
message_type = MessageType.TEXT
|
|
|
else:
|
|
@@ -274,11 +274,11 @@ class AgentService:
|
|
|
logger.warning(f"staff[{staff_id}] user[{user_id}]: response[{message_type}] {response}")
|
|
|
current_ts = int(time.time() * 1000)
|
|
|
user_tags = self.user_relation_manager.get_user_tags(user_id)
|
|
|
- white_list_tags = set(apollo_config.get_json_value("agent_response_whitelist_tags"))
|
|
|
+ white_list_tags = set(apollo_config.get_json_value("agent_response_whitelist_tags", []))
|
|
|
hit_white_list_tags = len(set(user_tags).intersection(white_list_tags)) > 0
|
|
|
# FIXME(zhoutian)
|
|
|
# 测试期间临时逻辑,只发送特定的账号或特定用户
|
|
|
- staff_white_lists = set(apollo_config.get_json_value("agent_response_whitelist_staffs"))
|
|
|
+ staff_white_lists = set(apollo_config.get_json_value("agent_response_whitelist_staffs", []))
|
|
|
if not (staff_id in staff_white_lists or hit_white_list_tags or skip_check):
|
|
|
logger.warning(f"staff[{staff_id}] user[{user_id}]: skip reply")
|
|
|
return
|
|
@@ -360,7 +360,7 @@ class AgentService:
|
|
|
first_initiate_tags = set(apollo_config.get_json_value('agent_first_initiate_whitelist_tags', []))
|
|
|
# 合并白名单,减少配置成本
|
|
|
white_list_tags.update(first_initiate_tags)
|
|
|
- voice_tags = set(apollo_config.get_json_value('agent_initiate_by_voice_tags'))
|
|
|
+ voice_tags = set(apollo_config.get_json_value('agent_initiate_by_voice_tags', []))
|
|
|
|
|
|
|
|
|
"""定时检查主动发起对话"""
|