Commit Graph

334 Commits

Author SHA1 Message Date
14faa9bdab Add support for attachment flags 2023-07-14 21:41:44 -04:00
c5da0fe7c1 Remove and address stale TODO comments 2023-06-11 12:41:04 -04:00
f1bade4bda Hoist webhook detection outside of store_user helper 2023-06-11 12:41:04 -04:00
54c62d7ef8 Fix system message for channel_icon_change 2023-05-19 20:35:56 -04:00
1767be0081 Add support for voice messages
Co-authored-by: Danny <1695103+Rapptz@users.noreply.github.com>
2023-04-20 00:08:04 -04:00
0adef0ec89 Update auto_archive_duration documentation
Fix #9351
2023-04-18 06:03:48 -04:00
2ddb9d22ba Add overloads to reply and send 2023-03-30 08:36:33 -04:00
bd6bbdab00 Add support for stage message types 2023-02-27 09:17:40 -05:00
fd9f3e9eff Update docs with references to text in stage 2023-02-25 03:27:04 -05:00
da4651c97c Implement Messageable for StageChannel
Fix #9248
2023-02-25 03:13:55 -05:00
3644f7849c Document auto_archive_duration accepted values 2023-02-23 07:23:22 -05:00
94fa00fbfd Clarify documentation on Message.publish 2023-02-13 23:54:02 -05:00
a2b09c0ecd Remove unused import 2023-02-11 18:40:17 -05:00
ec71a46907 Fix Message.channel rebinding sometimes being Object 2023-02-11 18:25:42 -05:00
7e95f98521 Fix webhooks and interactions not closing files after a request 2023-01-25 04:22:24 -05:00
3d2dedbc58 Add Message.position and Message.application_id attributes 2023-01-21 22:48:36 -05:00
3d24f0fb12 Add support for role subscription reading 2023-01-10 18:05:00 -05:00
d7b6a2ad12 Fix usage of single backticks to links and code-blocks 2022-10-26 04:26:56 -04:00
c30a2f3ca0 Refactor certain f-strings and literals 2022-10-02 17:50:56 -04:00
ce06beeb6c Fix permissions-based docstrings to be more consistent 2022-09-17 14:07:39 -04:00
40986f9279 Fix overlapping or incorrect slots found by slotscheck 2022-08-08 19:58:48 -04:00
e0341c9ef2 Add forum post rename system message 2022-07-11 06:05:07 -04:00
55849d996e Update documentation for discord.Message
Co-authored-by: Danny <1695103+Rapptz@users.noreply.github.com>
2022-06-27 00:48:36 -04:00
7e66e11640 Change Message.system_content to always return str 2022-06-14 20:38:39 -04:00
2b9e43dbf9 Change Message.application type to MessageApplication
Co-authored-by: Danny <1695103+Rapptz@users.noreply.github.com>
2022-06-13 16:34:41 -04:00
59ebfefbf4 Use __getitem__ to access channel_id in MessageReference payloads 2022-06-01 02:32:42 -04:00
dbb00bd361 Add Reaction into typehint of add_reaction() 2022-05-17 03:36:35 -04:00
7267d18d9e Improve component typing 2022-05-16 15:30:03 -04:00
d8846570ae Remove unnecessary type ignore
Despite this except branch is no longer guarded, the exceptional
case could still happen if an Object is passed or if a future channel
type leads to breakage
2022-05-05 01:46:19 -04:00
d56f5150fa Fix oversight of edit parameters not being keyword only 2022-05-04 05:02:42 -04:00
6771f3dc99 Remove extraneous channel assignment 2022-05-02 06:54:54 -04:00
a0dfdb9b1d Fix multiple view instances not dispatching in app commands responses
Due to a quirk in InteractionResponse.send_message not returning a
message, all messages sent with an associated View would end up having
no message_id set. When multiple instances of a View are responded to
in a slash command context, this meant that the newest one would
override the storage of the older one. Ultimately leading to the first
view instance causing interaction failures.

Since fetching the original message is an unacceptable solution to the
problem due to incurred requests, the next best thing is to store an
intermediate interaction_id as a stop gap to differentiate between
the multiple instances. This change however, came with its own set of
complications.

Due to the interaction_id being an intermediate stop gap, the
underlying storage of the view store had to be changed to accommodate
the different way of accessing the data. Mainly, the interaction_id
key had to be quick to swap and remove to another key. This solution
attempts to change the interaction_id interim key with
a full fledged message_id key when it receives one if it's possible.

Note that the only way to obtain the interaction_id back from the
component interaction is to retrieve it from the MessageInteraction
data structure. This is because using the interaction_id of the button
press would be a different interaction ID than the one set as an
interim key. As a consequence, this stop gap only works for application
command based interactions. I am not aware of this bug manifesting in
component based interactions.

This patch also fixes a bug with ViewStore.remove_view not working due
to a bug being suppressed by a type: ignore comment. It also removes
the older __verify_integrity helper method since clean-up is already
done through View.stop() or View timeout.

Hopefully in the near future, the `/callback` endpoint will return
actual message data and this stop gap fix will no longer be necessary.
2022-04-28 12:24:57 -04:00
862eba1e59 Add filename and description kwargs for to_file 2022-04-14 19:04:05 -04:00
f77078278a Update system_content for channel_follow_add message 2022-04-06 02:08:20 -04:00
d5d9a532b2 Update docs to reflect Text in Voice related changes 2022-04-03 17:40:51 -04:00
f7a79ff8d7 Avoid calling PartialMessage.__init__ in Message.__init__
This prevents Message creation from crashing due to the public
interface's type checks potentially breaking future compatibility.
2022-04-02 11:15:54 -04:00
2aca705b95 Add support for sending messages and managing webhooks in VoiceChannel 2022-04-02 11:14:03 -04:00
7696342d76 Add missing __slots__ to MessageInteraction 2022-04-02 01:24:56 -04:00
e79895d824 Add Message.interaction and MessageInteraction type
Fix #7819
2022-04-01 11:15:15 -04:00
1372ef407c Keep description in Attachment.to_file 2022-03-31 00:29:34 -04:00
37bbfdce95 Add context_menu_command Message type 2022-03-30 19:13:00 -04:00
4fd2d5fdfd Remove redundant imports and variables 2022-03-29 02:50:34 -04:00
5ffa3e85de Update comments after # type: ignore to be compatible with PEP 484 2022-03-27 22:26:34 -04:00
cda1f0a4ef Allow receiving messages from voice channels 2022-03-25 04:24:19 -04:00
5fa32540a4 Change Message to subclass PartialMessage 2022-03-20 15:18:24 -04:00
7389707847 Only send allowed_mentions if content changed 2022-03-20 02:55:48 -04:00
5d6905a1bc Update clean_content/channel_mentions for threads 2022-03-19 04:46:55 -04:00
e01d4a31eb Replace invariant container types with wider types where applicable 2022-03-17 07:26:01 -04:00
1fba54ce97 Reword DeletedMessageReference docstring to be clearer 2022-03-16 05:12:26 -04:00
ca4db68686 Fix grammar issue for Message.add_reaction docs 2022-03-14 22:51:28 -04:00