Documentation ¶
Overview ¶
Package session abstracts around the REST API and the Gateway, managing both at once. It offers a handler interface similar to that in discordgo for Gateway events.
Index ¶
Constants ¶
This section is empty.
Variables ¶
var ErrMFA = errors.New("account has 2FA enabled")
Functions ¶
This section is empty.
Types ¶
type Closed ¶
type Closed struct {
Error error
}
Closed is an event that's sent to Session's command handler. This works by using (*Gateway).AfterClose. If the user sets this callback, no Closed events would be sent.
Usage
ses.AddHandler(func(*session.Closed) {})
type Session ¶
type Session struct { *api.Client Gateway *gateway.Gateway // Command handler with inherited methods. *handler.Handler // contains filtered or unexported fields }
Session manages both the API and Gateway. As such, Session inherits all of API's methods, as well has the Handler used for Gateway.
func New ¶
New creates a new session from a given token. Most bots should be using NewWithIntents instead.
func NewWithGateway ¶
func NewWithIntents ¶
func (*Session) Close ¶
Close closes the gateway. The connection is still resumable with the given session ID.
func (*Session) CloseGracefully ¶ added in v2.0.2
CloseGracefully permanently closes the gateway. The session ID is invalidated afterwards.
func (*Session) WithContext ¶
WithContext returns a shallow copy of Session with the context replaced in the API client. All methods called on the returned Session will use this given context.
This method is thread-safe only after Open and before Close are called. Open and Close should not be called on the returned Session.