Events¶
Channel¶
channel_events
¶
ChannelCreateEvent
dataclass
¶
Bases: Event, ChannelModel
flowchart TD
scurrypy.events.channel_events.ChannelCreateEvent[ChannelCreateEvent]
scurrypy.events.base_event.Event[Event]
scurrypy.api.channels.channel.ChannelModel[ChannelModel]
scurrypy.core.model.DataModel[DataModel]
scurrypy.events.base_event.Event --> scurrypy.events.channel_events.ChannelCreateEvent
scurrypy.core.model.DataModel --> scurrypy.events.base_event.Event
scurrypy.api.channels.channel.ChannelModel --> scurrypy.events.channel_events.ChannelCreateEvent
scurrypy.core.model.DataModel --> scurrypy.api.channels.channel.ChannelModel
click scurrypy.events.channel_events.ChannelCreateEvent href "" "scurrypy.events.channel_events.ChannelCreateEvent"
click scurrypy.events.base_event.Event href "" "scurrypy.events.base_event.Event"
click scurrypy.api.channels.channel.ChannelModel href "" "scurrypy.api.channels.channel.ChannelModel"
click scurrypy.core.model.DataModel href "" "scurrypy.core.model.DataModel"
Received when a guild channel has been created.
dispatch_name = EventType.CHANNEL_CREATE
class-attribute
instance-attribute
¶
ChannelUpdateEvent
dataclass
¶
Bases: Event, ChannelModel
flowchart TD
scurrypy.events.channel_events.ChannelUpdateEvent[ChannelUpdateEvent]
scurrypy.events.base_event.Event[Event]
scurrypy.api.channels.channel.ChannelModel[ChannelModel]
scurrypy.core.model.DataModel[DataModel]
scurrypy.events.base_event.Event --> scurrypy.events.channel_events.ChannelUpdateEvent
scurrypy.core.model.DataModel --> scurrypy.events.base_event.Event
scurrypy.api.channels.channel.ChannelModel --> scurrypy.events.channel_events.ChannelUpdateEvent
scurrypy.core.model.DataModel --> scurrypy.api.channels.channel.ChannelModel
click scurrypy.events.channel_events.ChannelUpdateEvent href "" "scurrypy.events.channel_events.ChannelUpdateEvent"
click scurrypy.events.base_event.Event href "" "scurrypy.events.base_event.Event"
click scurrypy.api.channels.channel.ChannelModel href "" "scurrypy.api.channels.channel.ChannelModel"
click scurrypy.core.model.DataModel href "" "scurrypy.core.model.DataModel"
Received when a guild channel has been updated.
Note
Not send when last_message_id is changed.
dispatch_name = EventType.CHANNEL_UPDATE
class-attribute
instance-attribute
¶
ChannelDeleteEvent
dataclass
¶
Bases: Event, ChannelModel
flowchart TD
scurrypy.events.channel_events.ChannelDeleteEvent[ChannelDeleteEvent]
scurrypy.events.base_event.Event[Event]
scurrypy.api.channels.channel.ChannelModel[ChannelModel]
scurrypy.core.model.DataModel[DataModel]
scurrypy.events.base_event.Event --> scurrypy.events.channel_events.ChannelDeleteEvent
scurrypy.core.model.DataModel --> scurrypy.events.base_event.Event
scurrypy.api.channels.channel.ChannelModel --> scurrypy.events.channel_events.ChannelDeleteEvent
scurrypy.core.model.DataModel --> scurrypy.api.channels.channel.ChannelModel
click scurrypy.events.channel_events.ChannelDeleteEvent href "" "scurrypy.events.channel_events.ChannelDeleteEvent"
click scurrypy.events.base_event.Event href "" "scurrypy.events.base_event.Event"
click scurrypy.api.channels.channel.ChannelModel href "" "scurrypy.api.channels.channel.ChannelModel"
click scurrypy.core.model.DataModel href "" "scurrypy.core.model.DataModel"
Received when a guild channel has been deleted.
dispatch_name = EventType.CHANNEL_DELETE
class-attribute
instance-attribute
¶
ChannelPinsUpdateEvent
dataclass
¶
flowchart TD
scurrypy.events.channel_events.ChannelPinsUpdateEvent[ChannelPinsUpdateEvent]
scurrypy.events.base_event.Event[Event]
scurrypy.core.model.DataModel[DataModel]
scurrypy.events.base_event.Event --> scurrypy.events.channel_events.ChannelPinsUpdateEvent
scurrypy.core.model.DataModel --> scurrypy.events.base_event.Event
scurrypy.core.model.DataModel --> scurrypy.events.channel_events.ChannelPinsUpdateEvent
click scurrypy.events.channel_events.ChannelPinsUpdateEvent href "" "scurrypy.events.channel_events.ChannelPinsUpdateEvent"
click scurrypy.events.base_event.Event href "" "scurrypy.events.base_event.Event"
click scurrypy.core.model.DataModel href "" "scurrypy.core.model.DataModel"
Pin update event.
dispatch_name = EventType.CHANNEL_PINS_UPDATE
class-attribute
instance-attribute
¶
channel_id: Snowflake
instance-attribute
¶
ID of channel where the pins were updated.
guild_id: Snowflake | None
instance-attribute
¶
ID of the guild where the pins were updated.
last_pin_timestamp: str | None
instance-attribute
¶
ISO8601 formatted timestamp of the last pinned message in the channel.
WebhooksUpdateEvent
dataclass
¶
flowchart TD
scurrypy.events.channel_events.WebhooksUpdateEvent[WebhooksUpdateEvent]
scurrypy.events.base_event.Event[Event]
scurrypy.core.model.DataModel[DataModel]
scurrypy.events.base_event.Event --> scurrypy.events.channel_events.WebhooksUpdateEvent
scurrypy.core.model.DataModel --> scurrypy.events.base_event.Event
scurrypy.core.model.DataModel --> scurrypy.events.channel_events.WebhooksUpdateEvent
click scurrypy.events.channel_events.WebhooksUpdateEvent href "" "scurrypy.events.channel_events.WebhooksUpdateEvent"
click scurrypy.events.base_event.Event href "" "scurrypy.events.base_event.Event"
click scurrypy.core.model.DataModel href "" "scurrypy.core.model.DataModel"
Received when a guild's channel webhook is created, updated, or deleted.
Threads¶
thread_events
¶
ThreadCreateEvent
dataclass
¶
Bases: Event, ChannelModel
flowchart TD
scurrypy.events.thread_events.ThreadCreateEvent[ThreadCreateEvent]
scurrypy.events.base_event.Event[Event]
scurrypy.api.channels.channel.ChannelModel[ChannelModel]
scurrypy.core.model.DataModel[DataModel]
scurrypy.events.base_event.Event --> scurrypy.events.thread_events.ThreadCreateEvent
scurrypy.core.model.DataModel --> scurrypy.events.base_event.Event
scurrypy.api.channels.channel.ChannelModel --> scurrypy.events.thread_events.ThreadCreateEvent
scurrypy.core.model.DataModel --> scurrypy.api.channels.channel.ChannelModel
click scurrypy.events.thread_events.ThreadCreateEvent href "" "scurrypy.events.thread_events.ThreadCreateEvent"
click scurrypy.events.base_event.Event href "" "scurrypy.events.base_event.Event"
click scurrypy.api.channels.channel.ChannelModel href "" "scurrypy.api.channels.channel.ChannelModel"
click scurrypy.core.model.DataModel href "" "scurrypy.core.model.DataModel"
Received when a thread is created.
ThreadUpdateEvent
dataclass
¶
Bases: Event, ChannelModel
flowchart TD
scurrypy.events.thread_events.ThreadUpdateEvent[ThreadUpdateEvent]
scurrypy.events.base_event.Event[Event]
scurrypy.api.channels.channel.ChannelModel[ChannelModel]
scurrypy.core.model.DataModel[DataModel]
scurrypy.events.base_event.Event --> scurrypy.events.thread_events.ThreadUpdateEvent
scurrypy.core.model.DataModel --> scurrypy.events.base_event.Event
scurrypy.api.channels.channel.ChannelModel --> scurrypy.events.thread_events.ThreadUpdateEvent
scurrypy.core.model.DataModel --> scurrypy.api.channels.channel.ChannelModel
click scurrypy.events.thread_events.ThreadUpdateEvent href "" "scurrypy.events.thread_events.ThreadUpdateEvent"
click scurrypy.events.base_event.Event href "" "scurrypy.events.base_event.Event"
click scurrypy.api.channels.channel.ChannelModel href "" "scurrypy.api.channels.channel.ChannelModel"
click scurrypy.core.model.DataModel href "" "scurrypy.core.model.DataModel"
Received when a thread is updated.
Note
Not send when last_message_id is changed.
dispatch_name = EventType.THREAD_UPDATE
class-attribute
instance-attribute
¶
ThreadDeleteEvent
dataclass
¶
flowchart TD
scurrypy.events.thread_events.ThreadDeleteEvent[ThreadDeleteEvent]
scurrypy.events.base_event.Event[Event]
scurrypy.core.model.DataModel[DataModel]
scurrypy.events.base_event.Event --> scurrypy.events.thread_events.ThreadDeleteEvent
scurrypy.core.model.DataModel --> scurrypy.events.base_event.Event
scurrypy.core.model.DataModel --> scurrypy.events.thread_events.ThreadDeleteEvent
click scurrypy.events.thread_events.ThreadDeleteEvent href "" "scurrypy.events.thread_events.ThreadDeleteEvent"
click scurrypy.events.base_event.Event href "" "scurrypy.events.base_event.Event"
click scurrypy.core.model.DataModel href "" "scurrypy.core.model.DataModel"
Received when a thread is deleted.
dispatch_name = EventType.THREAD_DELETE
class-attribute
instance-attribute
¶
id: Snowflake
instance-attribute
¶
ID of the thread.
guild_id: Snowflake | None
instance-attribute
¶
Guild ID of the thread.
parent_id: Snowflake
instance-attribute
¶
ID of the parent channel.
type: ChannelType
instance-attribute
¶
Type of thread.
ThreadMemberUpdateEvent
dataclass
¶
Bases: Event, ThreadMemberModel
flowchart TD
scurrypy.events.thread_events.ThreadMemberUpdateEvent[ThreadMemberUpdateEvent]
scurrypy.events.base_event.Event[Event]
scurrypy.api.channels.threads.ThreadMemberModel[ThreadMemberModel]
scurrypy.core.model.DataModel[DataModel]
scurrypy.events.base_event.Event --> scurrypy.events.thread_events.ThreadMemberUpdateEvent
scurrypy.core.model.DataModel --> scurrypy.events.base_event.Event
scurrypy.api.channels.threads.ThreadMemberModel --> scurrypy.events.thread_events.ThreadMemberUpdateEvent
scurrypy.core.model.DataModel --> scurrypy.api.channels.threads.ThreadMemberModel
click scurrypy.events.thread_events.ThreadMemberUpdateEvent href "" "scurrypy.events.thread_events.ThreadMemberUpdateEvent"
click scurrypy.events.base_event.Event href "" "scurrypy.events.base_event.Event"
click scurrypy.api.channels.threads.ThreadMemberModel href "" "scurrypy.api.channels.threads.ThreadMemberModel"
click scurrypy.core.model.DataModel href "" "scurrypy.core.model.DataModel"
Received when a thread member for the bot is updated.
ThreadMembersUpdateEvent
dataclass
¶
flowchart TD
scurrypy.events.thread_events.ThreadMembersUpdateEvent[ThreadMembersUpdateEvent]
scurrypy.events.base_event.Event[Event]
scurrypy.core.model.DataModel[DataModel]
scurrypy.events.base_event.Event --> scurrypy.events.thread_events.ThreadMembersUpdateEvent
scurrypy.core.model.DataModel --> scurrypy.events.base_event.Event
scurrypy.core.model.DataModel --> scurrypy.events.thread_events.ThreadMembersUpdateEvent
click scurrypy.events.thread_events.ThreadMembersUpdateEvent href "" "scurrypy.events.thread_events.ThreadMembersUpdateEvent"
click scurrypy.events.base_event.Event href "" "scurrypy.events.base_event.Event"
click scurrypy.core.model.DataModel href "" "scurrypy.core.model.DataModel"
Received when someone is added or removed from a thread.
Important
Without the GUILD_MEMBERS privileged intent, this event only fires if the
bot was added or removed from a thread.
dispatch_name = EventType.THREAD_MEMBERS_UPDATE
class-attribute
instance-attribute
¶
id: Snowflake
instance-attribute
¶
ID of the thread.
guild_id: Snowflake
instance-attribute
¶
ID of the guild.
member_count: int
instance-attribute
¶
Approximate number of members in the thread (max 50).
added_members: list[ThreadMemberModel] | None
instance-attribute
¶
Users who were added to the thread
removed_member_ids: list[Snowflake] | None
instance-attribute
¶
ID of the users who were removed from the thread.
ThreadListSyncEvent
dataclass
¶
flowchart TD
scurrypy.events.thread_events.ThreadListSyncEvent[ThreadListSyncEvent]
scurrypy.events.base_event.Event[Event]
scurrypy.core.model.DataModel[DataModel]
scurrypy.events.base_event.Event --> scurrypy.events.thread_events.ThreadListSyncEvent
scurrypy.core.model.DataModel --> scurrypy.events.base_event.Event
scurrypy.core.model.DataModel --> scurrypy.events.thread_events.ThreadListSyncEvent
click scurrypy.events.thread_events.ThreadListSyncEvent href "" "scurrypy.events.thread_events.ThreadListSyncEvent"
click scurrypy.events.base_event.Event href "" "scurrypy.events.base_event.Event"
click scurrypy.core.model.DataModel href "" "scurrypy.core.model.DataModel"
Received when the bot gains access to a channel.
dispatch_name = EventType.THREAD_LIST_SYNC
class-attribute
instance-attribute
¶
guild_id: Snowflake
instance-attribute
¶
ID of the guild.
channel_ids: list[Snowflake] | None
instance-attribute
¶
Parent channel IDs of the threads being synced.
threads: list[ChannelModel]
instance-attribute
¶
Active threads in the given channel that the bot can access.
members: list[ThreadMemberModel]
instance-attribute
¶
Thread members from the synced threads that the bot an access.