mirror of
https://github.com/Rapptz/discord.py.git
synced 2025-05-14 09:50:03 +00:00
Add support for new thread_name parameter in Webhook.send
This commit is contained in:
parent
259c6733a3
commit
e543abd950
@ -148,6 +148,7 @@ def handle_message_parameters(
|
||||
stickers: Optional[SnowflakeList] = MISSING,
|
||||
previous_allowed_mentions: Optional[AllowedMentions] = None,
|
||||
mention_author: Optional[bool] = None,
|
||||
thread_name: str = MISSING,
|
||||
channel_payload: Dict[str, Any] = MISSING,
|
||||
) -> MultipartParameters:
|
||||
if files is not MISSING and file is not MISSING:
|
||||
@ -206,6 +207,9 @@ def handle_message_parameters(
|
||||
if flags is not MISSING:
|
||||
payload['flags'] = flags.value
|
||||
|
||||
if thread_name is not MISSING:
|
||||
payload['thread_name'] = thread_name
|
||||
|
||||
if allowed_mentions:
|
||||
if previous_allowed_mentions is not None:
|
||||
payload['allowed_mentions'] = previous_allowed_mentions.merge(allowed_mentions).to_dict()
|
||||
|
@ -1514,6 +1514,7 @@ class Webhook(BaseWebhook):
|
||||
allowed_mentions: AllowedMentions = MISSING,
|
||||
view: View = MISSING,
|
||||
thread: Snowflake = MISSING,
|
||||
thread_name: str = MISSING,
|
||||
wait: Literal[True],
|
||||
suppress_embeds: bool = MISSING,
|
||||
) -> WebhookMessage:
|
||||
@ -1535,6 +1536,7 @@ class Webhook(BaseWebhook):
|
||||
allowed_mentions: AllowedMentions = MISSING,
|
||||
view: View = MISSING,
|
||||
thread: Snowflake = MISSING,
|
||||
thread_name: str = MISSING,
|
||||
wait: Literal[False] = ...,
|
||||
suppress_embeds: bool = MISSING,
|
||||
) -> None:
|
||||
@ -1555,6 +1557,7 @@ class Webhook(BaseWebhook):
|
||||
allowed_mentions: AllowedMentions = MISSING,
|
||||
view: View = MISSING,
|
||||
thread: Snowflake = MISSING,
|
||||
thread_name: str = MISSING,
|
||||
wait: bool = False,
|
||||
suppress_embeds: bool = False,
|
||||
) -> Optional[WebhookMessage]:
|
||||
@ -1625,6 +1628,13 @@ class Webhook(BaseWebhook):
|
||||
thread: :class:`~discord.abc.Snowflake`
|
||||
The thread to send this webhook to.
|
||||
|
||||
.. versionadded:: 2.0
|
||||
thread_name: :class:`str`
|
||||
The thread name to create with this webhook if the webhook belongs
|
||||
to a :class:`~discord.ForumChannel`. Note that this is mutually
|
||||
exclusive with the ``thread`` parameter, as this will create a
|
||||
new thread with the given name.
|
||||
|
||||
.. versionadded:: 2.0
|
||||
suppress_embeds: :class:`bool`
|
||||
Whether to suppress embeds for the message. This sends the message without any embeds if set to ``True``.
|
||||
@ -1640,7 +1650,8 @@ class Webhook(BaseWebhook):
|
||||
Forbidden
|
||||
The authorization token for the webhook is incorrect.
|
||||
TypeError
|
||||
You specified both ``embed`` and ``embeds`` or ``file`` and ``files``.
|
||||
You specified both ``embed`` and ``embeds`` or ``file`` and ``files``
|
||||
or ``thread`` and ``thread_name``.
|
||||
ValueError
|
||||
The length of ``embeds`` was invalid, there was no token
|
||||
associated with this webhook or ``ephemeral`` was passed
|
||||
@ -1683,6 +1694,9 @@ class Webhook(BaseWebhook):
|
||||
if ephemeral is True and view.timeout is None:
|
||||
view.timeout = 15 * 60.0
|
||||
|
||||
if thread_name is not MISSING and thread is not MISSING:
|
||||
raise TypeError('Cannot mix thread_name and thread keyword arguments.')
|
||||
|
||||
params = handle_message_parameters(
|
||||
content=content,
|
||||
username=username,
|
||||
@ -1694,6 +1708,7 @@ class Webhook(BaseWebhook):
|
||||
embeds=embeds,
|
||||
flags=flags,
|
||||
view=view,
|
||||
thread_name=thread_name,
|
||||
allowed_mentions=allowed_mentions,
|
||||
previous_allowed_mentions=previous_mentions,
|
||||
)
|
||||
|
@ -864,6 +864,7 @@ class SyncWebhook(BaseWebhook):
|
||||
embeds: Sequence[Embed] = MISSING,
|
||||
allowed_mentions: AllowedMentions = MISSING,
|
||||
thread: Snowflake = MISSING,
|
||||
thread_name: str = MISSING,
|
||||
wait: Literal[True],
|
||||
suppress_embeds: bool = MISSING,
|
||||
) -> SyncWebhookMessage:
|
||||
@ -883,6 +884,7 @@ class SyncWebhook(BaseWebhook):
|
||||
embeds: Sequence[Embed] = MISSING,
|
||||
allowed_mentions: AllowedMentions = MISSING,
|
||||
thread: Snowflake = MISSING,
|
||||
thread_name: str = MISSING,
|
||||
wait: Literal[False] = ...,
|
||||
suppress_embeds: bool = MISSING,
|
||||
) -> None:
|
||||
@ -901,6 +903,7 @@ class SyncWebhook(BaseWebhook):
|
||||
embeds: Sequence[Embed] = MISSING,
|
||||
allowed_mentions: AllowedMentions = MISSING,
|
||||
thread: Snowflake = MISSING,
|
||||
thread_name: str = MISSING,
|
||||
wait: bool = False,
|
||||
suppress_embeds: bool = False,
|
||||
) -> Optional[SyncWebhookMessage]:
|
||||
@ -950,6 +953,13 @@ class SyncWebhook(BaseWebhook):
|
||||
thread: :class:`~discord.abc.Snowflake`
|
||||
The thread to send this message to.
|
||||
|
||||
.. versionadded:: 2.0
|
||||
thread_name: :class:`str`
|
||||
The thread name to create with this webhook if the webhook belongs
|
||||
to a :class:`~discord.ForumChannel`. Note that this is mutually
|
||||
exclusive with the ``thread`` parameter, as this will create a
|
||||
new thread with the given name.
|
||||
|
||||
.. versionadded:: 2.0
|
||||
suppress_embeds: :class:`bool`
|
||||
Whether to suppress embeds for the message. This sends the message without any embeds if set to ``True``.
|
||||
@ -966,6 +976,7 @@ class SyncWebhook(BaseWebhook):
|
||||
The authorization token for the webhook is incorrect.
|
||||
TypeError
|
||||
You specified both ``embed`` and ``embeds`` or ``file`` and ``files``
|
||||
or ``thread`` and ``thread_name``.
|
||||
ValueError
|
||||
The length of ``embeds`` was invalid or
|
||||
there was no token associated with this webhook.
|
||||
@ -988,6 +999,9 @@ class SyncWebhook(BaseWebhook):
|
||||
else:
|
||||
flags = MISSING
|
||||
|
||||
if thread_name is not MISSING and thread is not MISSING:
|
||||
raise TypeError('Cannot mix thread_name and thread keyword arguments.')
|
||||
|
||||
params = handle_message_parameters(
|
||||
content=content,
|
||||
username=username,
|
||||
@ -997,6 +1011,7 @@ class SyncWebhook(BaseWebhook):
|
||||
files=files,
|
||||
embed=embed,
|
||||
embeds=embeds,
|
||||
thread_name=thread_name,
|
||||
allowed_mentions=allowed_mentions,
|
||||
previous_allowed_mentions=previous_mentions,
|
||||
flags=flags,
|
||||
|
Loading…
x
Reference in New Issue
Block a user