diff options
| author | Rapptz <[email protected]> | 2019-04-18 20:54:16 -0400 |
|---|---|---|
| committer | Rapptz <[email protected]> | 2019-04-18 22:31:54 -0400 |
| commit | f5c38c3559ba0ee39bee7204e324fb024189ec57 (patch) | |
| tree | e47da0b3ad47213dcab77da093b4d733e98e6af1 /discord/channel.py | |
| parent | Add note about overriding Client.close vs Client.logout (diff) | |
| download | discord.py-f5c38c3559ba0ee39bee7204e324fb024189ec57.tar.xz discord.py-f5c38c3559ba0ee39bee7204e324fb024189ec57.zip | |
Add abc.GuildChannel.clone to clone a channel with another name.
Fixes #2093
Diffstat (limited to 'discord/channel.py')
| -rw-r--r-- | discord/channel.py | 31 |
1 files changed, 31 insertions, 0 deletions
diff --git a/discord/channel.py b/discord/channel.py index 96f9e3c6..e3055f88 100644 --- a/discord/channel.py +++ b/discord/channel.py @@ -214,6 +214,15 @@ class TextChannel(discord.abc.Messageable, discord.abc.GuildChannel, Hashable): """ await self._edit(options, reason=reason) + async def clone(self, *, name=None, reason=None): + return await self._clone_impl({ + 'topic': self.topic, + 'nsfw': self.nsfw, + 'rate_limit_per_user': self.slowmode_delay + }, name=name, reason=reason) + + clone.__doc__ = discord.abc.GuildChannel.clone.__doc__ + async def delete_messages(self, messages): """|coro| @@ -526,6 +535,14 @@ class VoiceChannel(discord.abc.Connectable, discord.abc.GuildChannel, Hashable): permissions_for.__doc__ = discord.abc.GuildChannel.permissions_for.__doc__ + async def clone(self, *, name=None, reason=None): + return await self._clone_impl({ + 'bitrate': self.bitrate, + 'user_limit': self.user_limit + }, name=name, reason=reason) + + clone.__doc__ = discord.abc.GuildChannel.clone.__doc__ + async def edit(self, *, reason=None, **options): """|coro| @@ -629,6 +646,13 @@ class CategoryChannel(discord.abc.GuildChannel, Hashable): """Checks if the category is NSFW.""" return self.nsfw + async def clone(self, *, name=None, reason=None): + return await self._clone_impl({ + 'nsfw': self.nsfw + }, name=name, reason=reason) + + clone.__doc__ = discord.abc.GuildChannel.clone.__doc__ + async def edit(self, *, reason=None, **options): """|coro| @@ -791,6 +815,13 @@ class StoreChannel(discord.abc.GuildChannel, Hashable): """Checks if the channel is NSFW.""" return self.nsfw + async def clone(self, *, name=None, reason=None): + return await self._clone_impl({ + 'nsfw': self.nsfw + }, name=name, reason=reason) + + clone.__doc__ = discord.abc.GuildChannel.clone.__doc__ + async def edit(self, *, reason=None, **options): """|coro| |