Documentation ¶
Index ¶
- Constants
- Variables
- func EncodeToString(track AudioTrack, customTrackEncoder CustomTrackEncoder) (str string, err error)
- func ReadBool(r io.Reader) (b bool, err error)
- func ReadInt16(r io.Reader) (i int16, err error)
- func ReadInt32(r io.Reader) (i int32, err error)
- func ReadInt64(r io.Reader) (i int64, err error)
- func ReadInt8(r io.Reader) (i int8, err error)
- func ReadNullableString(r io.Reader) (*string, error)
- func ReadString(r io.Reader) (string, error)
- func UserIDFromBotToken(token string) (snowflake.Snowflake, error)
- func WriteBool(w io.Writer, bool bool) error
- func WriteInt16(w io.Writer, i int16) error
- func WriteInt32(w io.Writer, i int32) error
- func WriteInt64(w io.Writer, i int64) error
- func WriteNullableString(w io.Writer, str *string) error
- func WriteString(w io.Writer, str string) error
- type AudioLoadResultHandler
- type AudioPlaylist
- type AudioTrack
- type AudioTrackEndReason
- type AudioTrackInfo
- type BasicAudioPlaylist
- type BasicAudioTrack
- type CPU
- type Config
- type ConfigOpt
- func WithHTTPClient(httpClient *http.Client) ConfigOpt
- func WithLogger(logger log.Logger) ConfigOpt
- func WithPlugins(plugins ...interface{}) ConfigOpt
- func WithUserID(userID snowflake.Snowflake) ConfigOpt
- func WithUserIDFromBotToken(botToken string) ConfigOpt
- func WithUserIDString(userID string) ConfigOpt
- type ConfigureResumingCommand
- type CustomTrackEncoder
- type CustomTrackInfoDecoder
- type DefaultFilters
- func (f *DefaultFilters) Clear() Filters
- func (f *DefaultFilters) Commit() error
- func (f *DefaultFilters) Distortion() *Distortion
- func (f *DefaultFilters) Equalizer() *Equalizer
- func (f *DefaultFilters) Karaoke() *Karaoke
- func (f *DefaultFilters) Rotation() *Rotation
- func (f *DefaultFilters) SetDistortion(distortion *Distortion) Filters
- func (f *DefaultFilters) SetEqualizer(equalizer *Equalizer) Filters
- func (f *DefaultFilters) SetKaraoke(karaoke *Karaoke) Filters
- func (f *DefaultFilters) SetRotation(rotation *Rotation) Filters
- func (f *DefaultFilters) SetTimescale(timescale *Timescale) Filters
- func (f *DefaultFilters) SetTremolo(tremolo *Tremolo) Filters
- func (f *DefaultFilters) SetVibrato(vibrato *Vibrato) Filters
- func (f *DefaultFilters) SetVolume(volume *Volume) Filters
- func (f *DefaultFilters) Timescale() *Timescale
- func (f *DefaultFilters) Tremolo() *Tremolo
- func (f *DefaultFilters) Vibrato() *Vibrato
- func (f *DefaultFilters) Volume() *Volume
- type DefaultPlayer
- func (p *DefaultPlayer) AddListener(listener interface{})
- func (p *DefaultPlayer) ChangeNode(node Node)
- func (p *DefaultPlayer) ChannelID() *snowflake.Snowflake
- func (p *DefaultPlayer) Connected() bool
- func (p *DefaultPlayer) Destroy() error
- func (p *DefaultPlayer) EmitEvent(caller func(l interface{}))
- func (p *DefaultPlayer) Export() PlayerRestoreState
- func (p *DefaultPlayer) Filters() Filters
- func (p *DefaultPlayer) GuildID() snowflake.Snowflake
- func (p *DefaultPlayer) Node() Node
- func (p *DefaultPlayer) OnPlayerUpdate(state PlayerState)
- func (p *DefaultPlayer) OnVoiceServerUpdate(voiceServerUpdate VoiceServerUpdate)
- func (p *DefaultPlayer) OnVoiceStateUpdate(voiceStateUpdate VoiceStateUpdate)
- func (p *DefaultPlayer) Pause(pause bool) error
- func (p *DefaultPlayer) Paused() bool
- func (p *DefaultPlayer) Play(track AudioTrack) error
- func (p *DefaultPlayer) PlayAt(track AudioTrack, start Duration, end Duration) error
- func (p *DefaultPlayer) PlayingTrack() AudioTrack
- func (p *DefaultPlayer) Position() Duration
- func (p *DefaultPlayer) RemoveListener(listener interface{})
- func (p *DefaultPlayer) Seek(position Duration) error
- func (p *DefaultPlayer) SetFilters(filters Filters)
- func (p *DefaultPlayer) SetVolume(volume int) error
- func (p *DefaultPlayer) Stop() error
- func (p *DefaultPlayer) Volume() int
- type DestroyCommand
- type Distortion
- type Duration
- func (d Duration) Days() int64
- func (d Duration) Hours() int64
- func (d Duration) HoursPart() int64
- func (d Duration) Milliseconds() int64
- func (d Duration) MillisecondsPart() int64
- func (d Duration) Minutes() int64
- func (d Duration) MinutesPart() int64
- func (d Duration) Seconds() int64
- func (d Duration) SecondsPart() int64
- func (d Duration) String() string
- type EqBand
- type Equalizer
- type EventExtension
- type EventExtensions
- type EventType
- type Filters
- type FiltersCommand
- type FrameStats
- type FriendlyException
- type FunctionalResultHandler
- func (h FunctionalResultHandler) LoadFailed(e FriendlyException)
- func (h FunctionalResultHandler) NoMatches()
- func (h FunctionalResultHandler) PlaylistLoaded(playlist AudioPlaylist)
- func (h FunctionalResultHandler) SearchResultLoaded(tracks []AudioTrack)
- func (h FunctionalResultHandler) TrackLoaded(track AudioTrack)
- type Karaoke
- type Lavalink
- type LoadResult
- type LoadType
- type Memory
- type Node
- type NodeConfig
- type NodeStatus
- type Op
- type OpCommand
- type OpEvent
- type OpExtension
- type OpExtensions
- type OpType
- type PauseCommand
- type PlayCommand
- type Player
- type PlayerEventAdapter
- func (a PlayerEventAdapter) OnPlayerPause(player Player)
- func (a PlayerEventAdapter) OnPlayerResume(player Player)
- func (a PlayerEventAdapter) OnPlayerUpdate(player Player, state PlayerState)
- func (a PlayerEventAdapter) OnTrackEnd(player Player, track AudioTrack, endReason AudioTrackEndReason)
- func (a PlayerEventAdapter) OnTrackException(player Player, track AudioTrack, exception FriendlyException)
- func (a PlayerEventAdapter) OnTrackStart(player Player, track AudioTrack)
- func (a PlayerEventAdapter) OnTrackStuck(player Player, track AudioTrack, thresholdMs Duration)
- func (a PlayerEventAdapter) OnWebSocketClosed(player Player, code int, reason string, byRemote bool)
- type PlayerEventListener
- type PlayerRestoreState
- type PlayerState
- type PlayerUpdateOp
- type PlaylistInfo
- type Plugin
- type PluginEventAdapter
- func (a PluginEventAdapter) OnDestroyPlayer(player Player)
- func (a PluginEventAdapter) OnNewPlayer(player Player)
- func (a PluginEventAdapter) OnNodeDestroy(node Node)
- func (a PluginEventAdapter) OnNodeMessageIn(node Node, data []byte)
- func (a PluginEventAdapter) OnNodeMessageOut(node Node, data []byte)
- func (a PluginEventAdapter) OnNodeOpen(node Node)
- type PluginEventHandler
- type RestAudioTrack
- type RestClient
- type Rotation
- type SearchType
- type SeekCommand
- type Severity
- type SourceExtension
- type Stats
- type StatsOp
- type StopCommand
- type Time
- type Timescale
- type TrackEndEvent
- type TrackEvent
- type TrackExceptionEvent
- type TrackStartEvent
- type TrackStuckEvent
- type Tremolo
- type UnknownEvent
- type UnknownOp
- type UnmarshalOp
- type UnmarshalOpEvent
- type Vibrato
- type VoiceServerUpdate
- type VoiceStateUpdate
- type VoiceUpdateCommand
- type Volume
- type VolumeCommand
- type WebsocketClosedEvent
Constants ¶
View Source
const ( Millisecond Duration = 1 Second = 1000 * Millisecond Minute = 60 * Second Hour = 60 * Minute Day = 24 * Hour )
View Source
const ( GitHub = "https://github.com/DisgoOrg/disgolink" Name = "disgolink" )
Variables ¶
View Source
var ErrInvalidBotToken = errors.New("invalid bot token")
View Source
var ErrNoUserID = errors.New("no user id has been configured")
View Source
var UnmarshalFilters = func(data []byte) (Filters, error) { var filters *DefaultFilters if err := json.Unmarshal(data, &filters); err != nil { return nil, errors.Wrap(err, "error while unmarshalling filters") } return filters, nil }
View Source
var (
Version = getVersion()
)
Functions ¶
func EncodeToString ¶
func EncodeToString(track AudioTrack, customTrackEncoder CustomTrackEncoder) (str string, err error)
func UserIDFromBotToken ¶ added in v1.3.3
Types ¶
type AudioLoadResultHandler ¶
type AudioLoadResultHandler interface { TrackLoaded(track AudioTrack) PlaylistLoaded(playlist AudioPlaylist) SearchResultLoaded(tracks []AudioTrack) NoMatches() LoadFailed(e FriendlyException) }
func NewResultHandler ¶
func NewResultHandler(trackLoaded func(track AudioTrack), playlistLoaded func(playlist AudioPlaylist), searchResultLoaded func(tracks []AudioTrack), noMatches func(), loadFailed func(e FriendlyException)) AudioLoadResultHandler
type AudioPlaylist ¶
type AudioPlaylist interface { Name() string Tracks() []AudioTrack SelectedTrack() AudioTrack }
func NewAudioPlaylist ¶
func NewAudioPlaylist(name string, selectedTrackIndex int, tracks []AudioTrack) AudioPlaylist
type AudioTrack ¶
type AudioTrack interface { Info() AudioTrackInfo SetPosition(position Duration) UserData() interface{} SetUserData(interface{}) Clone() AudioTrack }
func DecodeString ¶
func DecodeString(str string, customTrackInfoDecoder CustomTrackInfoDecoder) (track AudioTrack, err error)
func NewAudioTrack ¶
func NewAudioTrack(info AudioTrackInfo) AudioTrack
type AudioTrackEndReason ¶
type AudioTrackEndReason string
const ( AudioTrackEndReasonFinished AudioTrackEndReason = "FINISHED" AudioTrackEndReasonLoadFailed AudioTrackEndReason = "LOAD_FAILED" AudioTrackEndReasonStopped AudioTrackEndReason = "STOPPED" AudioTrackEndReasonReplaced AudioTrackEndReason = "REPLACED" AudioTrackEndReasonCleanup AudioTrackEndReason = "CLEANUP" )
func (AudioTrackEndReason) MayStartNext ¶
func (e AudioTrackEndReason) MayStartNext() bool
type AudioTrackInfo ¶
type BasicAudioPlaylist ¶ added in v1.4.0
type BasicAudioPlaylist struct { PlaylistName string SelectedTrackIndex int PlaylistTracks []AudioTrack }
func (BasicAudioPlaylist) Name ¶ added in v1.4.0
func (p BasicAudioPlaylist) Name() string
func (BasicAudioPlaylist) SelectedTrack ¶ added in v1.4.0
func (p BasicAudioPlaylist) SelectedTrack() AudioTrack
func (BasicAudioPlaylist) Tracks ¶ added in v1.4.0
func (p BasicAudioPlaylist) Tracks() []AudioTrack
type BasicAudioTrack ¶ added in v1.4.0
type BasicAudioTrack struct { AudioTrackInfo AudioTrackInfo `json:"info"` // contains filtered or unexported fields }
func (*BasicAudioTrack) Clone ¶ added in v1.4.0
func (t *BasicAudioTrack) Clone() AudioTrack
func (*BasicAudioTrack) Info ¶ added in v1.4.0
func (t *BasicAudioTrack) Info() AudioTrackInfo
func (*BasicAudioTrack) SetPosition ¶ added in v1.4.0
func (t *BasicAudioTrack) SetPosition(position Duration)
func (*BasicAudioTrack) SetUserData ¶ added in v1.4.0
func (t *BasicAudioTrack) SetUserData(userData interface{})
func (*BasicAudioTrack) UserData ¶ added in v1.4.0
func (t *BasicAudioTrack) UserData() interface{}
type Config ¶
type ConfigOpt ¶
type ConfigOpt func(config *Config)
func WithHTTPClient ¶
func WithLogger ¶
WithLogger lets you inject your own logger implementing log.Logger
func WithPlugins ¶
func WithPlugins(plugins ...interface{}) ConfigOpt
func WithUserID ¶
func WithUserIDFromBotToken ¶ added in v1.3.3
func WithUserIDString ¶ added in v1.3.3
type ConfigureResumingCommand ¶
func (ConfigureResumingCommand) MarshalJSON ¶
func (c ConfigureResumingCommand) MarshalJSON() ([]byte, error)
func (ConfigureResumingCommand) Op ¶
func (ConfigureResumingCommand) Op() OpType
func (ConfigureResumingCommand) OpCommand ¶
func (ConfigureResumingCommand) OpCommand()
type CustomTrackEncoder ¶
type CustomTrackEncoder func(track AudioTrack, w io.Writer) error
type CustomTrackInfoDecoder ¶
type CustomTrackInfoDecoder func(info AudioTrackInfo, r io.Reader) (AudioTrack, error)
type DefaultFilters ¶ added in v1.4.0
type DefaultFilters struct { FilterVolume *Volume `json:"volume,omitempty"` FilterEqualizer *Equalizer `json:"equalizer,omitempty"` FilterTimescale *Timescale `json:"timescale,omitempty"` FilterTremolo *Tremolo `json:"tremolo,omitempty"` FilterVibrato *Vibrato `json:"vibrato,omitempty"` FilterRotation *Rotation `json:"rotation,omitempty"` FilterKaraoke *Karaoke `json:"karaoke,omitempty"` FilterDistortion *Distortion `json:"distortion,omitempty"` // contains filtered or unexported fields }
func (*DefaultFilters) Clear ¶ added in v1.4.0
func (f *DefaultFilters) Clear() Filters
func (*DefaultFilters) Commit ¶ added in v1.4.0
func (f *DefaultFilters) Commit() error
func (*DefaultFilters) Distortion ¶ added in v1.4.0
func (f *DefaultFilters) Distortion() *Distortion
func (*DefaultFilters) Equalizer ¶ added in v1.4.0
func (f *DefaultFilters) Equalizer() *Equalizer
func (*DefaultFilters) Karaoke ¶ added in v1.4.0
func (f *DefaultFilters) Karaoke() *Karaoke
func (*DefaultFilters) Rotation ¶ added in v1.4.0
func (f *DefaultFilters) Rotation() *Rotation
func (*DefaultFilters) SetDistortion ¶ added in v1.4.0
func (f *DefaultFilters) SetDistortion(distortion *Distortion) Filters
func (*DefaultFilters) SetEqualizer ¶ added in v1.4.0
func (f *DefaultFilters) SetEqualizer(equalizer *Equalizer) Filters
func (*DefaultFilters) SetKaraoke ¶ added in v1.4.0
func (f *DefaultFilters) SetKaraoke(karaoke *Karaoke) Filters
func (*DefaultFilters) SetRotation ¶ added in v1.4.0
func (f *DefaultFilters) SetRotation(rotation *Rotation) Filters
func (*DefaultFilters) SetTimescale ¶ added in v1.4.0
func (f *DefaultFilters) SetTimescale(timescale *Timescale) Filters
func (*DefaultFilters) SetTremolo ¶ added in v1.4.0
func (f *DefaultFilters) SetTremolo(tremolo *Tremolo) Filters
func (*DefaultFilters) SetVibrato ¶ added in v1.4.0
func (f *DefaultFilters) SetVibrato(vibrato *Vibrato) Filters
func (*DefaultFilters) SetVolume ¶ added in v1.4.0
func (f *DefaultFilters) SetVolume(volume *Volume) Filters
func (*DefaultFilters) Timescale ¶ added in v1.4.0
func (f *DefaultFilters) Timescale() *Timescale
func (*DefaultFilters) Tremolo ¶ added in v1.4.0
func (f *DefaultFilters) Tremolo() *Tremolo
func (*DefaultFilters) Vibrato ¶ added in v1.4.0
func (f *DefaultFilters) Vibrato() *Vibrato
func (*DefaultFilters) Volume ¶ added in v1.4.0
func (f *DefaultFilters) Volume() *Volume
type DefaultPlayer ¶
type DefaultPlayer struct {
// contains filtered or unexported fields
}
func (*DefaultPlayer) AddListener ¶
func (p *DefaultPlayer) AddListener(listener interface{})
func (*DefaultPlayer) ChangeNode ¶ added in v1.4.0
func (p *DefaultPlayer) ChangeNode(node Node)
func (*DefaultPlayer) ChannelID ¶
func (p *DefaultPlayer) ChannelID() *snowflake.Snowflake
func (*DefaultPlayer) Connected ¶ added in v1.3.1
func (p *DefaultPlayer) Connected() bool
func (*DefaultPlayer) Destroy ¶
func (p *DefaultPlayer) Destroy() error
func (*DefaultPlayer) EmitEvent ¶
func (p *DefaultPlayer) EmitEvent(caller func(l interface{}))
func (*DefaultPlayer) Export ¶ added in v1.4.0
func (p *DefaultPlayer) Export() PlayerRestoreState
func (*DefaultPlayer) Filters ¶
func (p *DefaultPlayer) Filters() Filters
func (*DefaultPlayer) GuildID ¶
func (p *DefaultPlayer) GuildID() snowflake.Snowflake
func (*DefaultPlayer) Node ¶
func (p *DefaultPlayer) Node() Node
func (*DefaultPlayer) OnPlayerUpdate ¶ added in v1.4.0
func (p *DefaultPlayer) OnPlayerUpdate(state PlayerState)
func (*DefaultPlayer) OnVoiceServerUpdate ¶ added in v1.4.0
func (p *DefaultPlayer) OnVoiceServerUpdate(voiceServerUpdate VoiceServerUpdate)
func (*DefaultPlayer) OnVoiceStateUpdate ¶ added in v1.4.0
func (p *DefaultPlayer) OnVoiceStateUpdate(voiceStateUpdate VoiceStateUpdate)
func (*DefaultPlayer) Pause ¶
func (p *DefaultPlayer) Pause(pause bool) error
func (*DefaultPlayer) Paused ¶
func (p *DefaultPlayer) Paused() bool
func (*DefaultPlayer) Play ¶
func (p *DefaultPlayer) Play(track AudioTrack) error
func (*DefaultPlayer) PlayAt ¶
func (p *DefaultPlayer) PlayAt(track AudioTrack, start Duration, end Duration) error
func (*DefaultPlayer) PlayingTrack ¶ added in v1.4.0
func (p *DefaultPlayer) PlayingTrack() AudioTrack
func (*DefaultPlayer) Position ¶
func (p *DefaultPlayer) Position() Duration
func (*DefaultPlayer) RemoveListener ¶
func (p *DefaultPlayer) RemoveListener(listener interface{})
func (*DefaultPlayer) Seek ¶
func (p *DefaultPlayer) Seek(position Duration) error
func (*DefaultPlayer) SetFilters ¶
func (p *DefaultPlayer) SetFilters(filters Filters)
func (*DefaultPlayer) SetVolume ¶
func (p *DefaultPlayer) SetVolume(volume int) error
func (*DefaultPlayer) Stop ¶
func (p *DefaultPlayer) Stop() error
func (*DefaultPlayer) Volume ¶
func (p *DefaultPlayer) Volume() int
type DestroyCommand ¶
func (DestroyCommand) MarshalJSON ¶
func (c DestroyCommand) MarshalJSON() ([]byte, error)
func (DestroyCommand) Op ¶
func (DestroyCommand) Op() OpType
func (DestroyCommand) OpCommand ¶
func (DestroyCommand) OpCommand()
type Distortion ¶
type Duration ¶ added in v1.3.0
type Duration int64
func (Duration) Milliseconds ¶ added in v1.3.0
func (Duration) MillisecondsPart ¶ added in v1.3.0
func (Duration) MinutesPart ¶ added in v1.3.0
func (Duration) SecondsPart ¶ added in v1.3.0
type Equalizer ¶
type Equalizer [15]float32
func (Equalizer) MarshalJSON ¶
MarshalJSON marshals the map as object array
type EventExtension ¶
type EventExtensions ¶
type EventExtensions interface {
EventExtensions() []EventExtension
}
type Filters ¶
type Filters interface { Volume() *Volume Equalizer() *Equalizer Timescale() *Timescale Tremolo() *Tremolo Vibrato() *Vibrato Rotation() *Rotation Karaoke() *Karaoke Distortion() *Distortion SetVolume(v *Volume) Filters SetEqualizer(equalizer *Equalizer) Filters SetTimescale(timescale *Timescale) Filters SetTremolo(tremolo *Tremolo) Filters SetVibrato(vibrato *Vibrato) Filters SetRotation(rotation *Rotation) Filters SetKaraoke(karaoke *Karaoke) Filters SetDistortion(distortion *Distortion) Filters Clear() Filters Commit() error // contains filtered or unexported methods }
func NewFilters ¶
type FiltersCommand ¶
func (FiltersCommand) MarshalJSON ¶
func (c FiltersCommand) MarshalJSON() ([]byte, error)
func (FiltersCommand) Op ¶
func (FiltersCommand) Op() OpType
func (FiltersCommand) OpCommand ¶
func (FiltersCommand) OpCommand()
type FrameStats ¶
type FriendlyException ¶
type FriendlyException struct { Message string `json:"message"` Severity Severity `json:"severity"` Cause *string `json:"cause,omitempty"` }
func (FriendlyException) Error ¶
func (e FriendlyException) Error() string
type FunctionalResultHandler ¶
type FunctionalResultHandler struct {
// contains filtered or unexported fields
}
func (FunctionalResultHandler) LoadFailed ¶
func (h FunctionalResultHandler) LoadFailed(e FriendlyException)
func (FunctionalResultHandler) NoMatches ¶
func (h FunctionalResultHandler) NoMatches()
func (FunctionalResultHandler) PlaylistLoaded ¶
func (h FunctionalResultHandler) PlaylistLoaded(playlist AudioPlaylist)
func (FunctionalResultHandler) SearchResultLoaded ¶
func (h FunctionalResultHandler) SearchResultLoaded(tracks []AudioTrack)
func (FunctionalResultHandler) TrackLoaded ¶
func (h FunctionalResultHandler) TrackLoaded(track AudioTrack)
type Lavalink ¶
type Lavalink interface { Logger() log.Logger AddNode(ctx context.Context, config NodeConfig) (Node, error) Nodes() []Node Node(name string) Node BestNode() Node BestRestClient() RestClient RemoveNode(name string) AddPlugins(plugins ...interface{}) Plugins() []interface{} RemovePlugins(plugins ...interface{}) EncodeTrack(track AudioTrack) (string, error) DecodeTrack(track string) (AudioTrack, error) Player(guildID snowflake.Snowflake) Player PlayerOnNode(name string, guildID snowflake.Snowflake) Player RestorePlayer(restoreState PlayerRestoreState) (Player, error) ExistingPlayer(guildID snowflake.Snowflake) Player RemovePlayer(guildID snowflake.Snowflake) Players() map[snowflake.Snowflake]Player UserID() snowflake.Snowflake SetUserID(userID snowflake.Snowflake) Close() OnVoiceServerUpdate(voiceServerUpdate VoiceServerUpdate) OnVoiceStateUpdate(voiceStateUpdate VoiceStateUpdate) }
type LoadResult ¶
type LoadResult struct { LoadType LoadType `json:"loadType"` PlaylistInfo *PlaylistInfo `json:"playlistInfo"` Tracks []RestAudioTrack `json:"tracks"` Exception *FriendlyException `json:"exception"` }
type Node ¶
type Node interface { Lavalink() Lavalink Send(cmd OpCommand) error ConfigureResuming(key string, timeoutSeconds int) error Open(ctx context.Context) error Close() Name() string RestClient() RestClient RestURL() string Config() NodeConfig Stats() *Stats Status() NodeStatus }
type NodeConfig ¶
type NodeStatus ¶
type NodeStatus string
const ( Connecting NodeStatus = "CONNECTING" Connected NodeStatus = "CONNECTED" Reconnecting NodeStatus = "RECONNECTING" Disconnected NodeStatus = "DISCONNECTED" )
Indicates how far along the client is to connecting
type OpExtension ¶
type OpExtensions ¶
type OpExtensions interface {
OpExtensions() []OpExtension
}
type OpType ¶
type OpType string
const ( OpTypePlay OpType = "play" OpTypeStop OpType = "stop" OpTypePause OpType = "pause" OpTypeSeek OpType = "seek" OpTypeVolume OpType = "volume" OpTypeDestroy OpType = "destroy" OpTypeStats OpType = "stats" OpTypeVoiceUpdate OpType = "voiceUpdate" OpTypePlayerUpdate OpType = "playerUpdate" OpTypeEvent OpType = "event" OpTypeConfigureResuming OpType = "configureResuming" OpTypeFilters OpType = "filters" )
type PauseCommand ¶
func (PauseCommand) MarshalJSON ¶
func (c PauseCommand) MarshalJSON() ([]byte, error)
func (PauseCommand) Op ¶
func (PauseCommand) Op() OpType
func (PauseCommand) OpCommand ¶
func (PauseCommand) OpCommand()
type PlayCommand ¶
type PlayCommand struct { GuildID snowflake.Snowflake `json:"guildId"` Track string `json:"track"` StartTime *Duration `json:"startTime,omitempty"` EndTime *Duration `json:"endTime,omitempty"` NoReplace bool `json:"noReplace,omitempty"` Pause bool `json:"pause,omitempty"` }
func (PlayCommand) MarshalJSON ¶
func (c PlayCommand) MarshalJSON() ([]byte, error)
func (PlayCommand) Op ¶
func (PlayCommand) Op() OpType
func (PlayCommand) OpCommand ¶
func (PlayCommand) OpCommand()
type Player ¶
type Player interface { PlayingTrack() AudioTrack Paused() bool Position() Duration Connected() bool Volume() int Filters() Filters GuildID() snowflake.Snowflake ChannelID() *snowflake.Snowflake Node() Node Export() PlayerRestoreState Play(track AudioTrack) error PlayAt(track AudioTrack, start Duration, end Duration) error Stop() error Destroy() error Pause(paused bool) error Seek(position Duration) error SetVolume(volume int) error SetFilters(filters Filters) ChangeNode(node Node) OnVoiceServerUpdate(voiceServerUpdate VoiceServerUpdate) OnVoiceStateUpdate(voiceStateUpdate VoiceStateUpdate) OnPlayerUpdate(state PlayerState) EmitEvent(caller func(l interface{})) AddListener(listener interface{}) RemoveListener(listener interface{}) }
type PlayerEventAdapter ¶
type PlayerEventAdapter struct{}
func (PlayerEventAdapter) OnPlayerPause ¶
func (a PlayerEventAdapter) OnPlayerPause(player Player)
func (PlayerEventAdapter) OnPlayerResume ¶
func (a PlayerEventAdapter) OnPlayerResume(player Player)
func (PlayerEventAdapter) OnPlayerUpdate ¶
func (a PlayerEventAdapter) OnPlayerUpdate(player Player, state PlayerState)
func (PlayerEventAdapter) OnTrackEnd ¶
func (a PlayerEventAdapter) OnTrackEnd(player Player, track AudioTrack, endReason AudioTrackEndReason)
func (PlayerEventAdapter) OnTrackException ¶
func (a PlayerEventAdapter) OnTrackException(player Player, track AudioTrack, exception FriendlyException)
func (PlayerEventAdapter) OnTrackStart ¶
func (a PlayerEventAdapter) OnTrackStart(player Player, track AudioTrack)
func (PlayerEventAdapter) OnTrackStuck ¶
func (a PlayerEventAdapter) OnTrackStuck(player Player, track AudioTrack, thresholdMs Duration)
func (PlayerEventAdapter) OnWebSocketClosed ¶
func (a PlayerEventAdapter) OnWebSocketClosed(player Player, code int, reason string, byRemote bool)
type PlayerEventListener ¶
type PlayerEventListener interface { OnPlayerPause(player Player) OnPlayerResume(player Player) OnPlayerUpdate(player Player, state PlayerState) OnTrackStart(player Player, track AudioTrack) OnTrackEnd(player Player, track AudioTrack, endReason AudioTrackEndReason) OnTrackException(player Player, track AudioTrack, exception FriendlyException) OnTrackStuck(player Player, track AudioTrack, thresholdMs Duration) OnWebSocketClosed(player Player, code int, reason string, byRemote bool) }
type PlayerRestoreState ¶ added in v1.4.0
type PlayerRestoreState struct { PlayingTrack *string `json:"playing_track"` Paused bool `json:"paused"` State PlayerState `json:"state"` Volume int `json:"volume"` Filters Filters `json:"filters"` GuildID snowflake.Snowflake `json:"guild_id"` ChannelID *snowflake.Snowflake `json:"channel_id"` LastSessionID *string `json:"last_session_id"` LastVoiceServerUpdate *VoiceServerUpdate `json:"last_voice_server_update"` Node string `json:"node"` }
func (*PlayerRestoreState) UnmarshalJSON ¶ added in v1.4.0
func (s *PlayerRestoreState) UnmarshalJSON(data []byte) error
type PlayerState ¶
type PlayerUpdateOp ¶
type PlayerUpdateOp struct { GuildID snowflake.Snowflake `json:"guildId"` State PlayerState `json:"state"` }
func (PlayerUpdateOp) Op ¶
func (PlayerUpdateOp) Op() OpType
type PlaylistInfo ¶ added in v1.4.0
type PluginEventAdapter ¶
type PluginEventAdapter struct{}
func (PluginEventAdapter) OnDestroyPlayer ¶
func (a PluginEventAdapter) OnDestroyPlayer(player Player)
func (PluginEventAdapter) OnNewPlayer ¶
func (a PluginEventAdapter) OnNewPlayer(player Player)
func (PluginEventAdapter) OnNodeDestroy ¶
func (a PluginEventAdapter) OnNodeDestroy(node Node)
func (PluginEventAdapter) OnNodeMessageIn ¶
func (a PluginEventAdapter) OnNodeMessageIn(node Node, data []byte)
func (PluginEventAdapter) OnNodeMessageOut ¶
func (a PluginEventAdapter) OnNodeMessageOut(node Node, data []byte)
func (PluginEventAdapter) OnNodeOpen ¶
func (a PluginEventAdapter) OnNodeOpen(node Node)
type PluginEventHandler ¶
type RestAudioTrack ¶ added in v1.4.0
type RestAudioTrack struct { Track string `json:"track"` Info AudioTrackInfo `json:"info"` }
type RestClient ¶
type RestClient interface { Version(ctx context.Context) (string, error) Plugins(ctx context.Context) ([]Plugin, error) LoadItem(ctx context.Context, identifier string) (*LoadResult, error) LoadItemHandler(ctx context.Context, identifier string, audioLoaderResultHandler AudioLoadResultHandler) error DecodeTrack(ctx context.Context, track string) (*AudioTrackInfo, error) DecodeTracks(ctx context.Context, tracks []string) ([]RestAudioTrack, error) }
type SearchType ¶
type SearchType string
const ( SearchTypeYoutube SearchType = "ytsearch" SearchTypeYoutubeMusic SearchType = "ytmsearch" SearchTypeSoundCloud SearchType = "scsearch" )
search prefixes
func (SearchType) Apply ¶
func (t SearchType) Apply(searchString string) string
type SeekCommand ¶
type SeekCommand struct { GuildID snowflake.Snowflake `json:"guildId"` Position Duration `json:"position"` }
func (SeekCommand) MarshalJSON ¶
func (c SeekCommand) MarshalJSON() ([]byte, error)
func (SeekCommand) Op ¶
func (SeekCommand) Op() OpType
func (SeekCommand) OpCommand ¶
func (SeekCommand) OpCommand()
type SourceExtension ¶
type SourceExtension interface { SourceName() string Encode(track AudioTrack, w io.Writer) error Decode(info AudioTrackInfo, r io.Reader) (AudioTrack, error) }
type Stats ¶
type StopCommand ¶
func (StopCommand) MarshalJSON ¶
func (c StopCommand) MarshalJSON() ([]byte, error)
func (StopCommand) Op ¶
func (StopCommand) Op() OpType
func (StopCommand) OpCommand ¶
func (StopCommand) OpCommand()
type Time ¶ added in v1.4.0
func (Time) MarshalJSON ¶ added in v1.4.0
func (*Time) UnmarshalJSON ¶ added in v1.4.0
type TrackEndEvent ¶
type TrackEndEvent struct { GID snowflake.Snowflake `json:"guildId"` TrackString string `json:"track"` Reason AudioTrackEndReason `json:"reason"` }
func (TrackEndEvent) Event ¶
func (TrackEndEvent) Event() EventType
func (TrackEndEvent) GuildID ¶
func (e TrackEndEvent) GuildID() snowflake.Snowflake
func (TrackEndEvent) Op ¶
func (TrackEndEvent) Op() OpType
func (TrackEndEvent) OpEvent ¶
func (TrackEndEvent) OpEvent()
func (TrackEndEvent) Track ¶
func (e TrackEndEvent) Track() string
type TrackEvent ¶
type TrackEvent interface {
Track() string
}
type TrackExceptionEvent ¶
type TrackExceptionEvent struct { GID snowflake.Snowflake `json:"guildId"` TrackString string `json:"track"` Exception FriendlyException `json:"exception"` }
func (TrackExceptionEvent) Event ¶
func (TrackExceptionEvent) Event() EventType
func (TrackExceptionEvent) GuildID ¶
func (e TrackExceptionEvent) GuildID() snowflake.Snowflake
func (TrackExceptionEvent) Op ¶
func (TrackExceptionEvent) Op() OpType
func (TrackExceptionEvent) OpEvent ¶
func (TrackExceptionEvent) OpEvent()
func (TrackExceptionEvent) Track ¶
func (e TrackExceptionEvent) Track() string
type TrackStartEvent ¶
type TrackStartEvent struct { GID snowflake.Snowflake `json:"guildId"` TrackString string `json:"track"` }
func (TrackStartEvent) Event ¶
func (TrackStartEvent) Event() EventType
func (TrackStartEvent) GuildID ¶
func (e TrackStartEvent) GuildID() snowflake.Snowflake
func (TrackStartEvent) Op ¶
func (TrackStartEvent) Op() OpType
func (TrackStartEvent) OpEvent ¶
func (TrackStartEvent) OpEvent()
func (TrackStartEvent) Track ¶
func (e TrackStartEvent) Track() string
type TrackStuckEvent ¶
type TrackStuckEvent struct { GID snowflake.Snowflake `json:"guildId"` TrackString string `json:"track"` ThresholdMs Duration `json:"threasholdMs"` }
func (TrackStuckEvent) Event ¶
func (TrackStuckEvent) Event() EventType
func (TrackStuckEvent) GuildID ¶
func (e TrackStuckEvent) GuildID() snowflake.Snowflake
func (TrackStuckEvent) Op ¶
func (TrackStuckEvent) Op() OpType
func (TrackStuckEvent) OpEvent ¶
func (TrackStuckEvent) OpEvent()
func (TrackStuckEvent) Track ¶
func (e TrackStuckEvent) Track() string
type UnknownEvent ¶
type UnknownEvent struct { Data []byte // contains filtered or unexported fields }
func (UnknownEvent) Event ¶
func (e UnknownEvent) Event() EventType
func (UnknownEvent) GuildID ¶
func (e UnknownEvent) GuildID() snowflake.Snowflake
func (UnknownEvent) MarshalJSON ¶ added in v1.4.0
func (e UnknownEvent) MarshalJSON() ([]byte, error)
func (UnknownEvent) Op ¶
func (UnknownEvent) Op() OpType
func (UnknownEvent) OpEvent ¶
func (UnknownEvent) OpEvent()
func (*UnknownEvent) UnmarshalJSON ¶
func (e *UnknownEvent) UnmarshalJSON(data []byte) error
type UnknownOp ¶
type UnknownOp struct { Data []byte // contains filtered or unexported fields }
func (UnknownOp) MarshalJSON ¶ added in v1.4.0
func (*UnknownOp) UnmarshalJSON ¶
type UnmarshalOp ¶
type UnmarshalOp struct {
Op
}
func (*UnmarshalOp) UnmarshalJSON ¶
func (e *UnmarshalOp) UnmarshalJSON(data []byte) error
type UnmarshalOpEvent ¶
type UnmarshalOpEvent struct {
OpEvent
}
func (*UnmarshalOpEvent) UnmarshalJSON ¶
func (e *UnmarshalOpEvent) UnmarshalJSON(data []byte) error
type VoiceServerUpdate ¶
type VoiceStateUpdate ¶
type VoiceUpdateCommand ¶
type VoiceUpdateCommand struct { GuildID snowflake.Snowflake `json:"guildId"` SessionID string `json:"sessionId"` Event VoiceServerUpdate `json:"event"` }
func (VoiceUpdateCommand) MarshalJSON ¶
func (c VoiceUpdateCommand) MarshalJSON() ([]byte, error)
func (VoiceUpdateCommand) Op ¶
func (VoiceUpdateCommand) Op() OpType
func (VoiceUpdateCommand) OpCommand ¶
func (VoiceUpdateCommand) OpCommand()
type VolumeCommand ¶
type VolumeCommand struct { GuildID snowflake.Snowflake `json:"guildId"` Volume int `json:"volume"` }
func (VolumeCommand) MarshalJSON ¶
func (c VolumeCommand) MarshalJSON() ([]byte, error)
func (VolumeCommand) Op ¶
func (VolumeCommand) Op() OpType
func (VolumeCommand) OpCommand ¶
func (VolumeCommand) OpCommand()
type WebsocketClosedEvent ¶
type WebsocketClosedEvent struct { GID snowflake.Snowflake `json:"guildId"` Code int `json:"code"` Reason string `json:"reason"` ByRemote bool `json:"byRemote"` }
func (WebsocketClosedEvent) Event ¶
func (WebsocketClosedEvent) Event() EventType
func (WebsocketClosedEvent) GuildID ¶
func (e WebsocketClosedEvent) GuildID() snowflake.Snowflake
func (WebsocketClosedEvent) Op ¶
func (WebsocketClosedEvent) Op() OpType
func (WebsocketClosedEvent) OpEvent ¶
func (WebsocketClosedEvent) OpEvent()
Source Files ¶
- audio_playlist.go
- audio_track.go
- audio_track_decode.go
- audio_track_encode.go
- audio_track_end_reason.go
- duration.go
- filters.go
- friendly_exception.go
- info.go
- lavalink.go
- lavalink_config.go
- load_result.go
- node.go
- op.go
- op_commands.go
- op_events.go
- player.go
- player_listener.go
- plugin.go
- restclient.go
- stats.go
- time.go
- token.go
- voice_update.go
Click to show internal directories.
Click to hide internal directories.