events

package
v0.1.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Nov 7, 2017 License: MIT Imports: 2 Imported by: 2

Documentation

Overview

Package events implements event mapping for the discordgo library.

Since discordgo does not have a common interface amongst Events or a name/ID attached to them, it's only possible to handle events selectively with type switches or reflection. Type switches get messy, and reflection is slow.

This package aims to improve event handling by providing types, wrappers and interfaces for events

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type DiscordEvent

type DiscordEvent struct {
	Type  EventType
	Event interface{}
}

func NewDiscordEvent

func NewDiscordEvent(v interface{}) (*DiscordEvent, error)

type EventType

type EventType int
const (
	// NoEvent and AllEvents are special constants that don't map to a discord event
	NoEvent EventType = iota

	// Basic Websocket Event
	WebsocketEvent

	// Discord Events
	ConnectEvent
	DisconnectEvent

	RateLimitEvent

	ReadyEvent
	ResumedEvent

	ChannelCreateEvent
	ChannelUpdateEvent
	ChannelDeleteEvent
	ChannelPinsUpdateEvent

	GuildCreateEvent
	GuildUpdateEvent
	GuildDeleteEvent

	GuildBanAddEvent
	GuildBanRemoveEvent

	GuildMemberAddEvent
	GuildMemberUpdateEvent
	GuildMemberRemoveEvent

	GuildRoleCreateEvent
	GuildRoleUpdateEvent
	GuildRoleDeleteEvent

	GuildEmojisUpdateEvent
	GuildMembersChunkEvent
	GuildIntegrationsUpdateEvent

	MessageAckEvent
	MessageCreateEvent
	MessageUpdateEvent
	MessageDeleteEvent

	MessageReactionAddEvent
	MessageReactionRemoveEvent

	PresencesReplaceEvent
	PresenceUpdateEvent

	RelationshipAddEvent
	RelationshipRemoveEvent

	TypingStartEvent

	UserUpdateEvent
	UserSettingsUpdateEvent
	UserGuildSettingsUpdateEvent

	VoiceServerUpdateEvent
	VoiceStateUpdateEvent
)

Curated from discordgo/events.go TODO: Use go:generate

func GetEventType

func GetEventType(v interface{}) (t EventType, err error)

GetEventType returns the EventType for a given discordgo event.

type InvalidEventTypeError

type InvalidEventTypeError struct {
	Event interface{}
}

func (InvalidEventTypeError) Error

func (e InvalidEventTypeError) Error() string

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL