aboutsummaryrefslogtreecommitdiff
path: root/discord/webhook.py
diff options
context:
space:
mode:
authorNCPlayz <[email protected]>2019-10-08 20:45:44 +0100
committerRapptz <[email protected]>2019-11-15 04:23:15 -0500
commitdab2519a09bb64d335a80423fb1d522e46a1ee5c (patch)
tree4b60027d4b57f4824c8d23b940cc55d5e7436788 /discord/webhook.py
parent[docs] add new FAQ entries (diff)
downloaddiscord.py-dab2519a09bb64d335a80423fb1d522e46a1ee5c.tar.xz
discord.py-dab2519a09bb64d335a80423fb1d522e46a1ee5c.zip
Implement `TextChannel.follow()`
Diffstat (limited to 'discord/webhook.py')
-rw-r--r--discord/webhook.py19
1 files changed, 19 insertions, 0 deletions
diff --git a/discord/webhook.py b/discord/webhook.py
index 00e15429..f717108a 100644
--- a/discord/webhook.py
+++ b/discord/webhook.py
@@ -500,6 +500,25 @@ class Webhook:
return cls(m.groupdict(), adapter=adapter)
@classmethod
+ def _as_follower(cls, data, *, channel, user):
+ name = "{} #{}".format(channel.guild, channel)
+ feed = {
+ 'id': data['webhook_id'],
+ 'name': name,
+ 'channel_id': channel.id,
+ 'guild_id': channel.guild.id,
+ 'user': {
+ 'username': user.name,
+ 'discriminator': user.discriminator,
+ 'id': user.id,
+ 'avatar': user.avatar
+ }
+ }
+
+ session = channel._state.http._HTTPClient__session
+ return cls(feed, adapter=AsyncWebhookAdapter(session=session))
+
+ @classmethod
def from_state(cls, data, state):
session = state.http._HTTPClient__session
return cls(data, adapter=AsyncWebhookAdapter(session=session), state=state)