Gateway class

Handles the connection to Discord's Gateway with shards, manages the client's cache based on Gateway events and provides an interface to the Gateway.

Inheritance

Constructors

Gateway(NyxxGateway client, GatewayBot gatewayBot, List<Shard> shards, int totalShards, List<int> shardIds)
Create a new Gateway.

Properties

client NyxxGateway
The client this manager is for.
final
events Stream<DispatchEvent>
A stream of dispatch events received from all shards.
latefinal
gatewayBot GatewayBot
The GatewayBot instance used to configure this Gateway.
final
hashCode int
The hash code for this object.
no setterinherited
latency Duration
The average latency across all shards in this Gateway.
no setter
messages Stream<ShardMessage>
A stream of messages received from all shards.
latefinal
runtimeType Type
A representation of the runtime type of the object.
no setterinherited
shardIds List<int>
The IDs of the shards running in this Gateway.
final
shards List<Shard>
The shards running in this Gateway.
final
totalShards int
The total number of shards running in the client's session.
final

Methods

close() Future<void>
Close this Gateway instance, disconnecting all shards and closing the event streams.
fetchGatewayBot() Future<GatewayBot>
Fetch the current gateway configuration for the client.
inherited
fetchGatewayConfiguration() Future<GatewayConfiguration>
Fetch the current gateway configuration.
inherited
listGuildMembers(Snowflake guildId, {String? query, int? limit, List<Snowflake>? userIds, bool? includePresences, String? nonce}) Stream<Member>
Stream all members in a guild that match query or userIds.
noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
parseActivity(Map<String, Object?> raw) Activity
inherited
parseActivityAssets(Map<String, Object?> raw) ActivityAssets
inherited
parseActivityButton(Map<String, Object?> raw) ActivityButton
inherited
parseActivityParty(Map<String, Object?> raw) ActivityParty
inherited
parseActivitySecrets(Map<String, Object?> raw) ActivitySecrets
inherited
parseActivityTimestamps(Map<String, Object?> raw) ActivityTimestamps
inherited
parseApplicationCommandPermissionsUpdate(Map<String, Object?> raw) ApplicationCommandPermissionsUpdateEvent
Parse an ApplicationCommandPermissionsUpdateEvent from raw.
parseAutoModerationActionExecution(Map<String, Object?> raw) AutoModerationActionExecutionEvent
Parse an AutoModerationActionExecutionEvent from raw.
parseAutoModerationRuleCreate(Map<String, Object?> raw) AutoModerationRuleCreateEvent
Parse an AutoModerationRuleCreateEvent from raw.
parseAutoModerationRuleDelete(Map<String, Object?> raw) AutoModerationRuleDeleteEvent
Parse an AutoModerationRuleDeleteEvent from raw.
parseAutoModerationRuleUpdate(Map<String, Object?> raw) AutoModerationRuleUpdateEvent
Parse an AutoModerationRuleUpdateEvent from raw.
parseChannelCreate(Map<String, Object?> raw) ChannelCreateEvent
Parse a ChannelCreateEvent from raw.
parseChannelDelete(Map<String, Object?> raw) ChannelDeleteEvent
Parse a ChannelDeleteEvent from raw.
parseChannelPinsUpdate(Map<String, Object?> raw) ChannelPinsUpdateEvent
Parse a ChannelPinsUpdateEvent from raw.
parseChannelUpdate(Map<String, Object?> raw) ChannelUpdateEvent
Parse a ChannelUpdateEvent from raw.
parseClientStatus(Map<String, Object?> raw) ClientStatus
inherited
parseDispatch(Map<String, Object?> raw) RawDispatchEvent
inherited
parseDispatchEvent(RawDispatchEvent raw) DispatchEvent
Parse a DispatchEvent from raw.
parseEntitlementCreate(Map<String, Object?> raw) EntitlementCreateEvent
Parse an EntitlementCreateEvent from raw.
parseEntitlementDelete(Map<String, Object?> raw) EntitlementDeleteEvent
Parse an EntitlementDeleteEvent from raw.
parseEntitlementUpdate(Map<String, Object?> raw) EntitlementUpdateEvent
Parse an EntitlementUpdateEvent from raw.
parseGatewayBot(Map<String, Object?> raw) GatewayBot
inherited
parseGatewayConfiguration(Map<String, Object?> raw) GatewayConfiguration
inherited
parseGatewayEvent(Map<String, Object?> raw, {Duration? heartbeatLatency}) GatewayEvent
inherited
parseGuildAuditLogCreate(Map<String, Object?> raw) GuildAuditLogCreateEvent
Parse a GuildAuditLogCreateEvent from raw.
parseGuildBanAdd(Map<String, Object?> raw) GuildBanAddEvent
Parse a GuildBanAddEvent from raw.
parseGuildBanRemove(Map<String, Object?> raw) GuildBanRemoveEvent
Parse a GuildBanRemoveEvent from raw.
parseGuildCreate(Map<String, Object?> raw) UnavailableGuildCreateEvent
Parse an UnavailableGuildCreateEvent from raw.
parseGuildDelete(Map<String, Object?> raw) GuildDeleteEvent
Parse a GuildDeleteEvent from raw.
parseGuildEmojisUpdate(Map<String, Object?> raw) GuildEmojisUpdateEvent
Parse a GuildEmojisUpdateEvent from raw.
parseGuildIntegrationsUpdate(Map<String, Object?> raw) GuildIntegrationsUpdateEvent
Parse a GuildIntegrationsUpdateEvent from raw.
parseGuildMemberAdd(Map<String, Object?> raw) GuildMemberAddEvent
Parse a GuildMemberAddEvent from raw.
parseGuildMemberRemove(Map<String, Object?> raw) GuildMemberRemoveEvent
Parse a GuildMemberRemoveEvent from raw.
parseGuildMembersChunk(Map<String, Object?> raw) GuildMembersChunkEvent
Parse a GuildMembersChunkEvent from raw.
parseGuildMemberUpdate(Map<String, Object?> raw) GuildMemberUpdateEvent
Parse a GuildMemberUpdateEvent from raw.
parseGuildRoleCreate(Map<String, Object?> raw) GuildRoleCreateEvent
Parse a GuildRoleCreateEvent from raw.
parseGuildRoleDelete(Map<String, Object?> raw) GuildRoleDeleteEvent
Parse a GuildRoleDeleteEvent from raw.
parseGuildRoleUpdate(Map<String, Object?> raw) GuildRoleUpdateEvent
Parse a GuildRoleUpdateEvent from raw.
parseGuildScheduledEventCreate(Map<String, Object?> raw) GuildScheduledEventCreateEvent
Parse a GuildScheduledEventCreateEvent from raw.
parseGuildScheduledEventDelete(Map<String, Object?> raw) GuildScheduledEventDeleteEvent
Parse a GuildScheduledEventDeleteEvent from raw.
parseGuildScheduledEventUpdate(Map<String, Object?> raw) GuildScheduledEventUpdateEvent
Parse a GuildScheduledEventUpdateEvent from raw.
parseGuildScheduledEventUserAdd(Map<String, Object?> raw) GuildScheduledEventUserAddEvent
Parse a GuildScheduledEventUserAddEvent from raw.
parseGuildScheduledEventUserRemove(Map<String, Object?> raw) GuildScheduledEventUserRemoveEvent
Parse a GuildScheduledEventUserRemoveEvent from raw.
parseGuildStickersUpdate(Map<String, Object?> raw) GuildStickersUpdateEvent
Parse a GuildStickersUpdateEvent from raw.
parseGuildUpdate(Map<String, Object?> raw) GuildUpdateEvent
Parse a GuildUpdateEvent from raw.
parseHeartbeat(Map<String, Object?> raw) HeartbeatEvent
inherited
parseHeartbeatAck(Map<String, Object?> raw, {required Duration heartbeatLatency}) HeartbeatAckEvent
inherited
parseHello(Map<String, Object?> raw) HelloEvent
inherited
parseIntegrationCreate(Map<String, Object?> raw) IntegrationCreateEvent
Parse an IntegrationCreateEvent from raw.
parseIntegrationDelete(Map<String, Object?> raw) IntegrationDeleteEvent
Parse an IntegrationDeleteEvent from raw.
parseIntegrationUpdate(Map<String, Object?> raw) IntegrationUpdateEvent
Parse an IntegrationUpdateEvent from raw.
parseInteractionCreate(Map<String, Object?> raw) InteractionCreateEvent<Interaction>
Parse an InteractionCreateEvent from raw.
parseInvalidSession(Map<String, Object?> raw) InvalidSessionEvent
inherited
parseInviteCreate(Map<String, Object?> raw) InviteCreateEvent
Parse an InviteCreateEvent from raw.
parseInviteDelete(Map<String, Object?> raw) InviteDeleteEvent
Parse an InviteDeleteEvent from raw.
parseMessageBulkDelete(Map<String, Object?> raw) MessageBulkDeleteEvent
Parse a MessageBulkDeleteEvent from raw.
parseMessageCreate(Map<String, Object?> raw) MessageCreateEvent
Parse a MessageCreateEvent from raw.
parseMessageDelete(Map<String, Object?> raw) MessageDeleteEvent
Parse a MessageDeleteEvent from raw.
parseMessageReactionAdd(Map<String, Object?> raw) MessageReactionAddEvent
Parse a MessageReactionAddEvent from raw.
parseMessageReactionRemove(Map<String, Object?> raw) MessageReactionRemoveEvent
Parse a MessageReactionRemoveEvent from raw.
parseMessageReactionRemoveAll(Map<String, Object?> raw) MessageReactionRemoveAllEvent
Parse a MessageReactionRemoveAllEvent from raw.
parseMessageReactionRemoveEmoji(Map<String, Object?> raw) MessageReactionRemoveEmojiEvent
Parse a MessageReactionRemoveEmojiEvent from raw.
parseMessageUpdate(Map<String, Object?> raw) MessageUpdateEvent
Parse a MessageUpdateEvent from raw.
parsePresenceUpdate(Map<String, Object?> raw) PresenceUpdateEvent
Parse a PresenceUpdateEvent from raw.
parseReady(Map<String, Object?> raw) ReadyEvent
Parse a ReadyEvent from raw.
parseReconnect(Map<String, Object?> raw) ReconnectEvent
inherited
parseResumed(Map<String, Object?> raw) ResumedEvent
Parse a ResumedEvent from raw.
parseSessionStartLimit(Map<String, Object?> raw) SessionStartLimit
inherited
parseStageInstanceCreate(Map<String, Object?> raw) StageInstanceCreateEvent
Parse a StageInstanceCreateEvent from raw.
parseStageInstanceDelete(Map<String, Object?> raw) StageInstanceDeleteEvent
Parse a StageInstanceDeleteEvent from raw.
parseStageInstanceUpdate(Map<String, Object?> raw) StageInstanceUpdateEvent
Parse a StageInstanceUpdateEvent from raw.
parseThreadCreate(Map<String, Object?> raw) ThreadCreateEvent
Parse a ThreadCreateEvent from raw.
parseThreadDelete(Map<String, Object?> raw) ThreadDeleteEvent
Parse a ThreadDeleteEvent from raw.
parseThreadListSync(Map<String, Object?> raw) ThreadListSyncEvent
Parse a ThreadListSyncEvent from raw.
parseThreadMembersUpdate(Map<String, Object?> raw) ThreadMembersUpdateEvent
Parse a ThreadMembersUpdateEvent from raw.
parseThreadMemberUpdate(Map<String, Object?> raw) ThreadMemberUpdateEvent
Parse a ThreadMemberUpdateEvent from raw.
parseThreadUpdate(Map<String, Object?> raw) ThreadUpdateEvent
Parse a ThreadUpdateEvent from raw.
parseTypingStart(Map<String, Object?> raw) TypingStartEvent
Parse a TypingStartEvent from raw.
parseUserUpdate(Map<String, Object?> raw) UserUpdateEvent
Parse a UserUpdateEvent from raw.
parseVoiceServerUpdate(Map<String, Object?> raw) VoiceServerUpdateEvent
Parse a VoiceServerUpdateEvent from raw.
parseVoiceStateUpdate(Map<String, Object?> raw) VoiceStateUpdateEvent
Parse a VoiceStateUpdateEvent from raw.
parseWebhooksUpdate(Map<String, Object?> raw) WebhooksUpdateEvent
Parse a WebhooksUpdateEvent from raw.
shardFor(Snowflake guildId) Shard
Return the shard that handles events for guildId.
shardIdFor(Snowflake guildId) int
Compute the ID of the shard that handles events for guildId.
toString() String
A string representation of this object.
inherited
updatePresence(PresenceBuilder builder) → void
Update the client's presence on all shards.
updateVoiceState(Snowflake guildId, GatewayVoiceStateBuilder builder) → void
Update the client's voice state in the guild with ID guildId.

Operators

operator ==(Object other) bool
The equality operator.
inherited

Static Methods

connect(NyxxGateway client, GatewayBot gatewayBot) Future<Gateway>
Connect to the gateway using the provided client and gatewayBot configuration.