This commit is contained in:
aaron 2025-03-30 14:28:46 +08:00
parent 8ac6961a4d
commit 9376f9a785
2 changed files with 9 additions and 10 deletions

View File

@ -375,7 +375,12 @@ class WecomClient:
except Exception as e:
logger.warning(f"获取群聊详情失败: {str(e)}")
# 如果确定是外部联系人,尝试获取详情
# 如果是内部成员,不做任何处理
if member_type == "INTERNAL":
logger.info(f"成员 {join_user_id} 是内部成员,不做处理")
return True
# 如果是外部联系人,获取详细信息
user_info = None
member_name = None
member_unionid = None
@ -389,15 +394,9 @@ class WecomClient:
logger.info(f"获取到外部联系人详情: {member_name}, unionid: {member_unionid}")
except Exception as e:
logger.warning(f"获取外部联系人信息失败,可能是内部成员: {str(e)}")
elif member_type == "INTERNAL":
try:
user_info = await self.get_internal_user_info(join_user_id)
if user_info:
member_name = user_info.get("name")
# 内部成员没有unionid
logger.info(f"获取到内部成员详情: {member_name}")
except Exception as e:
logger.warning(f"获取内部成员信息失败: {str(e)}")
if "84061" in str(e) or "not external contact" in str(e):
logger.info(f"用户 {join_user_id} 可能是内部成员,不做处理")
return True
# 如果API获取失败则使用群聊详情中的信息
if not member_name:

Binary file not shown.