diff --git a/plugins/group_member_change/main.py b/plugins/group_member_change/main.py index c9e6d4c..b2193fd 100644 --- a/plugins/group_member_change/main.py +++ b/plugins/group_member_change/main.py @@ -156,8 +156,7 @@ class GroupMemberChangePlugin(MessagePluginInterface): # 处理退群成员 for wxid in left_members: nickname = previous_members[wxid] - member_info = self._get_member_info(wxid, nickname) - self._send_leave_notification(group_id, member_info) + self._send_leave_notification(group_id, wxid, nickname) # 处理新加入成员 for wxid in joined_members: @@ -170,63 +169,17 @@ class GroupMemberChangePlugin(MessagePluginInterface): except Exception as e: self.LOG.error(f"检查群 {group_id} 成员变化时发生错误: {e}", exc_info=True) - def _get_member_info(self, wxid: str, nickname: str) -> Dict[str, str]: - """获取成员详细信息""" - try: - # 尝试获取成员详细信息 - member_info = { - "wxid": wxid, - "nickname": nickname, - "remark": "", - "gender": "未知", - "region": "未知" - } - - # 尝试获取用户详情 - user_info = self.wcf.get_user_info(wxid) - if user_info: - member_info["remark"] = user_info.get("remark", "") - - # 性别转换 - gender_code = user_info.get("gender", 0) - if gender_code == 1: - member_info["gender"] = "男" - elif gender_code == 2: - member_info["gender"] = "女" - - # 地区信息 - country = user_info.get("country", "") - province = user_info.get("province", "") - city = user_info.get("city", "") - if country or province or city: - member_info["region"] = f"{country} {province} {city}".strip() - - return member_info - - except Exception as e: - self.LOG.error(f"获取成员 {wxid} 信息时发生错误: {e}") - return { - "wxid": wxid, - "nickname": nickname, - "remark": "", - "gender": "未知", - "region": "未知" - } - - def _send_leave_notification(self, group_id: str, member_info: Dict[str, str]): + def _send_leave_notification(self, group_id: str, wxid: str, nickname: str): """发送成员退群通知""" now_time = datetime.now().strftime('%Y-%m-%d %H:%M:%S') message = f"""【退群提醒】 - 用户: {member_info['nickname']} ({member_info['gender']}) - 群备注: {member_info['remark']} - 微信号: {member_info['wxid']} - 地区: {member_info['region']} - 退群时间: {now_time} +用户: {nickname} +微信号: {wxid} +退群时间: {now_time} """ - self.wcf.send_text(message, group_id) - self.LOG.info(f"已发送退群通知: {member_info['nickname']} 退出群 {group_id}") + self.LOG.info(f"已发送退群通知: {nickname} 退出群 {group_id}") @property def commands(self) -> List[str]: