Impl get alias in chatroom
This commit is contained in:
parent
c201bbf85a
commit
0e9f556406
@ -660,3 +660,35 @@ class Wcf():
|
|||||||
members[member.wxid] = member.name if member.name else contacts.get(member.wxid, "")
|
members[member.wxid] = member.name if member.name else contacts.get(member.wxid, "")
|
||||||
|
|
||||||
return members
|
return members
|
||||||
|
|
||||||
|
def get_alias_in_chatroom(self, wxid: str, roomid: str) -> str:
|
||||||
|
"""获取群名片
|
||||||
|
|
||||||
|
Args:
|
||||||
|
wxid (str): wxid
|
||||||
|
roomid (str): 群的 id
|
||||||
|
|
||||||
|
Returns:
|
||||||
|
str: 群名片
|
||||||
|
"""
|
||||||
|
nickname = self.query_sql("MicroMsg.db", f"SELECT NickName FROM Contact WHERE UserName = '{wxid}';")
|
||||||
|
if not nickname:
|
||||||
|
return ""
|
||||||
|
|
||||||
|
nickname = nickname[0].get("NickName", "")
|
||||||
|
|
||||||
|
crs = self.query_sql("MicroMsg.db", f"SELECT RoomData FROM ChatRoom WHERE ChatRoomName = '{roomid}';")
|
||||||
|
if not crs:
|
||||||
|
return ""
|
||||||
|
|
||||||
|
bs = crs[0].get("RoomData")
|
||||||
|
if not bs:
|
||||||
|
return ""
|
||||||
|
|
||||||
|
crd = RoomData()
|
||||||
|
crd.ParseFromString(bs)
|
||||||
|
for member in crd.members:
|
||||||
|
if member.wxid == wxid:
|
||||||
|
return member.name if member.name else nickname
|
||||||
|
|
||||||
|
return ""
|
||||||
|
Loading…
Reference in New Issue
Block a user