Skip to content

Commit

Permalink
feat: add send_voice_messages permission (#1006)
Browse files Browse the repository at this point in the history
Signed-off-by: arl <me@arielle.codes>
Co-authored-by: shiftinv <8530778+shiftinv@users.noreply.github.com>
  • Loading branch information
onerandomusername and shiftinv authored May 23, 2023
1 parent 6d82746 commit 5f368e9
Show file tree
Hide file tree
Showing 7 changed files with 33 additions and 1 deletion.
6 changes: 6 additions & 0 deletions changelog/1006.feature.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
Add new permission fields.
- :attr:`Permissions.manage_guild_expressions` (which :attr:`~Permissions.manage_emojis` and :attr:`~Permissions.manage_emojis_and_stickers` are now aliased to)
- :attr:`Permissions.view_creator_monetization_analytics`
- :attr:`Permissions.use_soundboard`
- :attr:`Permissions.send_voice_messages`
- :attr:`Permissions.use_external_sounds`
1 change: 1 addition & 0 deletions changelog/989.feature.rst
Original file line number Diff line number Diff line change
Expand Up @@ -2,4 +2,5 @@ Add new permission fields.
- :attr:`Permissions.manage_guild_expressions` (which :attr:`~Permissions.manage_emojis` and :attr:`~Permissions.manage_emojis_and_stickers` are now aliased to)
- :attr:`Permissions.view_creator_monetization_analytics`
- :attr:`Permissions.use_soundboard`
- :attr:`Permissions.send_voice_messages`
- :attr:`Permissions.use_external_sounds`
1 change: 1 addition & 0 deletions changelog/997.feature.rst
Original file line number Diff line number Diff line change
Expand Up @@ -2,4 +2,5 @@ Add new permission fields.
- :attr:`Permissions.manage_guild_expressions` (which :attr:`~Permissions.manage_emojis` and :attr:`~Permissions.manage_emojis_and_stickers` are now aliased to)
- :attr:`Permissions.view_creator_monetization_analytics`
- :attr:`Permissions.use_soundboard`
- :attr:`Permissions.send_voice_messages`
- :attr:`Permissions.use_external_sounds`
2 changes: 2 additions & 0 deletions disnake/abc.py
Original file line number Diff line number Diff line change
Expand Up @@ -769,6 +769,7 @@ def permissions_for(
# permissions as well
if not base.send_messages:
base.send_tts_messages = False
base.send_voice_messages = False
base.mention_everyone = False
base.embed_links = False
base.attach_files = False
Expand Down Expand Up @@ -864,6 +865,7 @@ async def set_permissions(
send_messages: Optional[bool] = ...,
send_messages_in_threads: Optional[bool] = ...,
send_tts_messages: Optional[bool] = ...,
send_voice_messages: Optional[bool] = ...,
speak: Optional[bool] = ...,
start_embedded_activities: Optional[bool] = ...,
stream: Optional[bool] = ...,
Expand Down
1 change: 1 addition & 0 deletions disnake/ext/commands/base_core.py
Original file line number Diff line number Diff line change
Expand Up @@ -668,6 +668,7 @@ def default_member_permissions(
send_messages: bool = ...,
send_messages_in_threads: bool = ...,
send_tts_messages: bool = ...,
send_voice_messages: bool = ...,
speak: bool = ...,
start_embedded_activities: bool = ...,
stream: bool = ...,
Expand Down
4 changes: 4 additions & 0 deletions disnake/ext/commands/core.py
Original file line number Diff line number Diff line change
Expand Up @@ -2044,6 +2044,7 @@ def has_permissions(
send_messages: bool = ...,
send_messages_in_threads: bool = ...,
send_tts_messages: bool = ...,
send_voice_messages: bool = ...,
speak: bool = ...,
start_embedded_activities: bool = ...,
stream: bool = ...,
Expand Down Expand Up @@ -2165,6 +2166,7 @@ def bot_has_permissions(
send_messages: bool = ...,
send_messages_in_threads: bool = ...,
send_tts_messages: bool = ...,
send_voice_messages: bool = ...,
speak: bool = ...,
start_embedded_activities: bool = ...,
stream: bool = ...,
Expand Down Expand Up @@ -2264,6 +2266,7 @@ def has_guild_permissions(
send_messages: bool = ...,
send_messages_in_threads: bool = ...,
send_tts_messages: bool = ...,
send_voice_messages: bool = ...,
speak: bool = ...,
start_embedded_activities: bool = ...,
stream: bool = ...,
Expand Down Expand Up @@ -2360,6 +2363,7 @@ def bot_has_guild_permissions(
send_messages: bool = ...,
send_messages_in_threads: bool = ...,
send_tts_messages: bool = ...,
send_voice_messages: bool = ...,
speak: bool = ...,
start_embedded_activities: bool = ...,
stream: bool = ...,
Expand Down
19 changes: 18 additions & 1 deletion disnake/permissions.py
Original file line number Diff line number Diff line change
Expand Up @@ -196,6 +196,7 @@ def __init__(
send_messages: bool = ...,
send_messages_in_threads: bool = ...,
send_tts_messages: bool = ...,
send_voice_messages: bool = ...,
speak: bool = ...,
start_embedded_activities: bool = ...,
stream: bool = ...,
Expand Down Expand Up @@ -314,7 +315,7 @@ def all_channel(cls) -> Self:
Added :attr:`use_embedded_activities` permission.
.. versionchanged:: 2.9
Added :attr:`use_soundboard` permission.
Added :attr:`use_soundboard` and :attr:`send_voice_messages` permissions.
"""
instance = cls.all()
instance.update(
Expand Down Expand Up @@ -392,6 +393,9 @@ def text(cls) -> Self:
.. versionchanged:: 2.0
Added :attr:`create_public_threads`, :attr:`create_private_threads`, :attr:`manage_threads`,
:attr:`send_messages_in_threads` and :attr:`use_external_stickers` permissions.
.. versionchanged:: 2.9
Added :attr:`send_voice_messages` permission.
"""
return cls(
send_messages=True,
Expand All @@ -409,6 +413,7 @@ def text(cls) -> Self:
read_message_history=True,
send_tts_messages=True,
use_slash_commands=True,
send_voice_messages=True,
)

@classmethod
Expand Down Expand Up @@ -559,6 +564,7 @@ def update(
send_messages: bool = ...,
send_messages_in_threads: bool = ...,
send_tts_messages: bool = ...,
send_voice_messages: bool = ...,
speak: bool = ...,
start_embedded_activities: bool = ...,
stream: bool = ...,
Expand Down Expand Up @@ -980,6 +986,14 @@ def use_external_sounds(self) -> int:
"""
return 1 << 45

@flag_value
def send_voice_messages(self) -> int:
""":class:`bool`: Returns ``True`` if a user can send voice messages.
.. versionadded:: 2.9
"""
return 1 << 46


def _augment_from_permissions(cls):
cls.VALID_NAMES = set(Permissions.VALID_FLAGS)
Expand Down Expand Up @@ -1084,6 +1098,7 @@ class PermissionOverwrite:
send_messages: Optional[bool]
send_messages_in_threads: Optional[bool]
send_tts_messages: Optional[bool]
send_voice_messages: Optional[bool]
speak: Optional[bool]
start_embedded_activities: Optional[bool]
stream: Optional[bool]
Expand Down Expand Up @@ -1147,6 +1162,7 @@ def __init__(
send_messages: Optional[bool] = ...,
send_messages_in_threads: Optional[bool] = ...,
send_tts_messages: Optional[bool] = ...,
send_voice_messages: Optional[bool] = ...,
speak: Optional[bool] = ...,
start_embedded_activities: Optional[bool] = ...,
stream: Optional[bool] = ...,
Expand Down Expand Up @@ -1277,6 +1293,7 @@ def update(
send_messages: Optional[bool] = ...,
send_messages_in_threads: Optional[bool] = ...,
send_tts_messages: Optional[bool] = ...,
send_voice_messages: Optional[bool] = ...,
speak: Optional[bool] = ...,
start_embedded_activities: Optional[bool] = ...,
stream: Optional[bool] = ...,
Expand Down

0 comments on commit 5f368e9

Please sign in to comment.