diff options
| author | NCPlayz <[email protected]> | 2019-10-08 20:45:44 +0100 |
|---|---|---|
| committer | Rapptz <[email protected]> | 2019-11-15 04:23:15 -0500 |
| commit | dab2519a09bb64d335a80423fb1d522e46a1ee5c (patch) | |
| tree | 4b60027d4b57f4824c8d23b940cc55d5e7436788 /discord/webhook.py | |
| parent | [docs] add new FAQ entries (diff) | |
| download | discord.py-dab2519a09bb64d335a80423fb1d522e46a1ee5c.tar.xz discord.py-dab2519a09bb64d335a80423fb1d522e46a1ee5c.zip | |
Implement `TextChannel.follow()`
Diffstat (limited to 'discord/webhook.py')
| -rw-r--r-- | discord/webhook.py | 19 |
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) |