khazhyk
c4acc0e1a1
Add support for reactions.
Reactions can be be standard emojis, or custom server emojis.
Adds
- add/remove_reaction
- get_reaction_users
- Messages have new field reactions
- new events - message_reaction_add, message_reaction_remove
- new permission - add_reactions
9 years ago
Khazhismel
c5a989eeb2
Add custom emoji support.
9 years ago
Rapptz
b0e5357716
Fix voice state update issue in on_voice_state_update
Bug was caused to the shallow copy not copying over the VoiceState
information embedded into the copy. This would mean that when the event
is called, before and after voice state information is essentially
equivalent.
The solution to fix this is to also copy the VoiceState objects.
9 years ago
Rapptz
3cd9f80854
Fix bug where discriminators would not update in PRESENCE_UPDATE.
9 years ago
Rapptz
bd39c3ef45
Add utility properties to CallMessage to query information.
9 years ago
Rapptz
1c8ab25917
Add support for querying information about group calls.
9 years ago
Rapptz
91351a3238
Handle adding and removal of group members.
9 years ago
Rapptz
c7f99afe7e
Handle private channel CHANNEL_CREATE better.
9 years ago
Rapptz
a128249b63
Add support for different message types and call message.
9 years ago
Rapptz
69c506d7ae
Handle CHANNEL_UPDATE for group direct messages.
9 years ago
Rapptz
ddd3fd0a3d
Begin working on gateway v6 changes.
The first batch of changes are related to channel types and group
direct messages. Support these first so READY begins parsing.
9 years ago
Rapptz
d87d11c5a6
Fix voice states being overwritten after a GUILD_SYNC.
This was a two-fold problem. The first of which involved the overwriting
of members during a GUILD_SYNC. Since we are requesting a chunk anyway,
we have all the member references we need without actually chunking. The
second problem came from the order. We were doing a GUILD_SYNC and then
doing the chunking requests. We should do the GUILD_SYNC after the
chunking in order to just update presences.
9 years ago
Rapptz
a1ae8fdb10
Handle MESSAGE_DELETE_BULK.
9 years ago
Rapptz
8b3617111a
Support for v5 Gateway.
9 years ago
Rapptz
c97e5a17e6
Update positions when a role is added or removed.
9 years ago
Rapptz
5016f12079
Add Role.server attribute.
This breaks events that expected a server parameter for the role events.
9 years ago
Rapptz
8638ff4414
Update voice client main ws references when reconnecting.
9 years ago
Rapptz
e0a91df32b
Add RESUME support.
9 years ago
Rapptz
bf650297a1
Only trigger on_voice_state_update if the member actually exists.
9 years ago
Rapptz
a31188c966
Fix bug where members leaving will stay in Channel.voice_members.
9 years ago
Rapptz
cf2bee5c43
Fix issue with Member.joined_at being None.
9 years ago
Rapptz
d9c780b8a8
Working multi-server voice support.
9 years ago
Rapptz
5e8c79bf76
Attempt to consistently sort of all Member.roles
9 years ago
Rapptz
ebaf74e784
Sort member.roles by ID but keep the default role in index 0.
This should make the events checking if `before` and `after` roles
are equivalent more sane for users.
9 years ago
Rapptz
133e8d3a44
Add support for server specific nicknames.
9 years ago
Rapptz
1c623ccf11
Begin working on gateway v4 support.
Bump websockets requirement to v3.1
Should be squashed...
9 years ago
Rapptz
8d7dd79673
Fix deadlock issue when joining large guilds.
9 years ago
Rapptz
7eb9a7dfdc
Handle bot tag updates in GUILD_MEMBER_UPDATE.
9 years ago
Rapptz
7023b353f6
User JSON object has 'username' keys not 'name'.
9 years ago
Rapptz
6076c8c671
Better chunking behaviour and add members on PRESENCE_UPDATE.
This should hopefully cover all cases where members are added.
There was a bug where an array of chunks received would get entirely
processed if only a single chunk was received. This was fixed by
explicitly bailing early if we're requesting for chunks.
9 years ago
Khazhismel
84f1342b85
Fix chunk requests not actually being batched.
9 years ago
Rapptz
0401ab561b
Proper chunking for unavailable guilds.
This will also delay on_ready until all chunking is complete.
9 years ago
Zeta
f235dc5ca4
Fix handling of message update in MESSAGE_UPDATE
9 years ago
Rapptz
8b7f15ef8d
Skip member_update event when a member is not in a guild.
9 years ago
Rapptz
80587fc1e9
Change parsing of READY to be eager again.
9 years ago
Rapptz
6ac2e07833
Fix bug where large servers in GUILD_CREATE did not get chunked.
9 years ago
Rapptz
425bd2c091
Move chunking logic back into ConnectionState.
This allows for a nicer design when dealing with parsers that could
end up being coroutines.
9 years ago
Rapptz
3802e7f534
Server.me is now a dynamic property to avoid outdated references.
9 years ago
Rapptz
3862b1abcf
Do not overwrite members that are already in cache during chunking.
9 years ago
Rapptz
4584c68f0c
Remove request_offline option.
9 years ago
Rapptz
841e584ee9
Update owner references when we get a chunk.
9 years ago
Rapptz
4768d950c5
Offline members are now added by default automatically.
This commit adds support for GUILD_MEMBERS_CHUNK which had to be done
due to forced large_threshold requirements in the library.
9 years ago
Rapptz
530fbe78b8
Handle case where PRESENCE_UPDATE adds members to cache.
When we don't request offline members, members that are going from
offline to online in the server will become available via the
PRESENCE_UPDATE event. This should be transparent to the user since
technically the member exists in the server and thus on_member_update
is used instead of on_member_join.
9 years ago
Rapptz
7b135725bc
Add Server.member_count property for actual member count.
This will always work regardless of chunking or not.
9 years ago
Rapptz
6682691012
Fix cases where Member.roles would have a string instead of Role.
Fixes #81 .
9 years ago
Rapptz
654001ba3e
Update the unavailable guild's data when it becomes available.
9 years ago
Khazhismel
bbe6455eb9
Guild member add will include deaf and mute now, do not provide default values
9 years ago
Rapptz
4ea015067f
Handle cases where people put False-like values for game presences.
9 years ago
Rapptz
8974dffc4e
Change internal update functions to have a leading underscore.
9 years ago
Steven Berler
777b5a09e2
document public get_ methods and make others private
9 years ago