Events¶
Track¶
Track Start¶
- sonolink.on_sonolink_track_start(player: sonolink.Player, payload: sonolink.gateway.TrackStartEvent)¶
Called when a track starts playing.
Parameters¶
- player:
sonolink.Player The player that is playing the track.
- payload:
sonolink.gateway.TrackStartEvent The event payload containing information about the track that started playing.
- player:
- class sonolink.gateway.TrackStartEvent[source]¶
Represents a track start event.
- property original: Playable | None¶
The original track associated with this event.
This is the track that was passed to play() or added to the queue. This is useful in cases where you have modified the track before playing it.
This is only set when the event is received after a call to play().
Added in version 1.2.0.
- track¶
The track that started playing.
Track End¶
- sonolink.on_sonolink_track_end(player: sonolink.Player, payload: sonolink.gateway.TrackEndEvent)¶
Called when a track ends.
Parameters¶
- player:
sonolink.Player The player that was playing the track.
- payload:
sonolink.gateway.TrackEndEvent The event payload containing information about the track that finished playing and the reason it ended.
- player:
- class sonolink.gateway.TrackEndEvent[source]¶
Represents a track end event.
- property original: Playable | None¶
The original track associated with this event.
This is the track that was passed to play() or added to the queue. This is useful in cases where you have modified the track before playing it.
Added in version 1.2.0.
- reason: TrackEndReason¶
The reason the track ended.
- track¶
The track that ended playing.
Track Exception¶
- sonolink.on_sonolink_track_exception(player: sonolink.Player, payload: sonolink.gateway.TrackExceptionEvent)¶
Called when an exception occurs while playing a track.
Parameters¶
- player:
sonolink.Player The player that was playing the track.
- payload:
sonolink.gateway.TrackExceptionEvent The event payload containing information about the track that caused the exception and the exception.
- player:
Track Stuck¶
- sonolink.on_sonolink_track_stuck(player: sonolink.Player, payload: sonolink.gateway.TrackStuckEvent)¶
Called when a track gets stuck while playing.
Parameters¶
- player:
sonolink.Player The player that was playing the track.
- payload:
sonolink.gateway.TrackStuckEvent The event payload containing information about the track that got stuck and the threshold that was exceeded.
- player:
Node¶
Node Ready¶
- sonolink.on_sonolink_node_ready(payload: sonolink.gateway.ReadyEvent)¶
Called when a node is ready.
Parameters¶
- payload:
sonolink.gateway.ReadyEvent The event payload containing information about the node that is ready.
- payload:
Node Close¶
- sonolink.on_sonolink_node_close(node: sonolink.Node)¶
Called when a node is closed.
Parameters¶
- node:
sonolink.Node The node that was closed.
- node:
Node Stats¶
- sonolink.on_sonolink_stats_receive(node: sonolink.Node, payload: sonolink.gateway.StatsEvent)¶
Called when the node receives
statsOP from Lavalink.Added in version 1.1.0.
Parameters¶
- node:
sonolink.Node The node that sent the statistics.
- payload:
sonolink.gateway.StatsEvent The event payload containing information about the node’s resource usage, player counts, and uptime.
- node:
- class sonolink.gateway.StatsEvent[source]¶
- Attributes
Represents a stats event.
- cpu: receive.CPUStats¶
The CPU stats of the node.
- frame_stats: receive.FrameStats | None¶
The frame stats of the node.
- memory: receive.MemoryStats¶
The memory stats of the node.
Player¶
Player Update¶
- sonolink.on_sonolink_player_update(player: sonolink.Player, payload: sonolink.gateway.PlayerUpdateEvent)¶
Called when a player is updated.
Parameters¶
- player:
sonolink.Player The player that was updated.
- payload:
sonolink.gateway.PlayerUpdateEvent The event payload containing information about the player’s current state.
- player:
WebSocket Closed¶
- sonolink.on_sonolink_websocket_closed(player: sonolink.Player, payload: sonolink.gateway.WebSocketClosedEvent)¶
Called when the voice WebSocket connection to Lavalink is closed.
Added in version 1.1.0.
Parameters¶
- player:
sonolink.Player The player whose voice WebSocket was closed.
Warning
This player is not meant to be reused, you should create another Player instance instead.
- payload:
sonolink.gateway.WebSocketClosedEvent The event payload containing the close code, reason, and whether the close was initiated by the remote end.
- player:
Player Disconnect¶
- sonolink.on_sonolink_player_disconnect(player: sonolink.Player, payload: sonolink.gateway.PlayerDisconnectEvent)¶
A custom SonoLink event called whenever a player is disconnected.
Unlike
on_sonolink_websocket_closed(), this method is called only when you, or the library, manually disconnects asonolink.Player.Added in version 1.1.0.
Parameters¶
- player:
sonolink.Player The player which was disconnected.
Warning
This player is not meant to be reused, you should create another Player instance instead.
- payload:
sonolink.gateway.PlayerDisconnectEvent The event payload containing the trigger that caused the disconnect, along with extra data.
- player:
- class sonolink.gateway.PlayerDisconnectEvent[source]¶
- Attributes
Represents a player disconnected event.
- extra_data: Any | None¶
Extra data from the trigger.
When
triggeris asonolink.gateway.DisconnectTriggerType.ERROR, this usually is anExceptionobject.
- trigger: DisconnectTriggerType¶
The trigger that caused the disconnect.
Miscellaneous¶
Unknown Event¶
- sonolink.on_sonolink_unknown_event(player: sonolink.Player, payload: dict[str, Any])¶
Called when an unknown event is received. This can be from plugins/extensions on Lavalink.
Parameters¶
- player:
sonolink.Player The player that received the unknown event.
- payload:
dict The raw event payload that was received.
- player: