From 693fee979eacfd159c40e0a0ab50724d679d4eec Mon Sep 17 00:00:00 2001 From: Arthur Jovart Date: Sun, 29 Aug 2021 17:05:23 +0200 Subject: [PATCH] Add get/fetch_member to ThreadMember objects --- discord/threads.py | 36 ++++++++++++++++++++++++++++++++++++ 1 file changed, 36 insertions(+) diff --git a/discord/threads.py b/discord/threads.py index 892910d9..fb42d4fd 100644 --- a/discord/threads.py +++ b/discord/threads.py @@ -800,3 +800,39 @@ class ThreadMember(Hashable): def thread(self) -> Thread: """:class:`Thread`: The thread this member belongs to.""" return self.parent + + async def fetch_member(self) -> Member: + """|coro| + + Retrieves a :class:`Member` from the ThreadMember object. + + .. note:: + + This method is an API call. If you have :attr:`Intents.members` and member cache enabled, consider :meth:`get_member` instead. + + Raises + ------- + Forbidden + You do not have access to the guild. + HTTPException + Fetching the member failed. + + Returns + -------- + :class:`Member` + The member. + """ + + return await self.thread.guild.fetch_member(self.id) + + def get_member(self) -> Optional[Member]: + """ + Get the :class:`Member` from cache for the ThreadMember object. + + Returns + -------- + Optional[:class:`Member`] + The member or ``None`` if not found. + """ + + return await self.thread.guild.get_member(self.id) -- 2.47.2