Class: Node

January 9, 2021 · View on GitHub

andesitejs / Exports / api/node/Node / Node

Class: Node

api/node/Node.Node

Hierarchy

  • Node

Table of contents

Constructors

Properties

Accessors

Methods

Constructors

constructor

+ new Node(manager: PlayerManager, options: Required<NodeOptions>): Node

Parameters:

NameTypeDescription
managerPlayerManagerThe manager instance.
optionsRequired<NodeOptions>The options for this node.

Returns: Node

Defined in: api/node/Node.ts:128

Properties

#auth

Private Optional Readonly #auth: undefined | string

The password for the andesite instance.

Defined in: api/node/Node.ts:116


#host

Private Readonly #host: string

The host of the andesite instance.

Defined in: api/node/Node.ts:110


#manager

Private Readonly #manager: PlayerManager

The manager instance.

Defined in: api/node/Node.ts:128


#players

Private Readonly #players: Map<string, Player>

The active players for this node.

Defined in: api/node/Node.ts:122


#queue

Private Readonly #queue: unknown[]

Queue for outgoing messages.

Defined in: api/node/Node.ts:104


#reconnectTimeout

Private #reconnectTimeout: null | Timeout= null

The timeout for reconnecting.

Defined in: api/node/Node.ts:81


#rest

Private #rest: null | REST= null

The rest manager.

Defined in: api/node/Node.ts:98


#status

Private #status: NodeStatus

The current status of this node.

Defined in: api/node/Node.ts:92


#ws

Optional Private #ws: undefined | WebSocket

The websocket instance.

Defined in: api/node/Node.ts:86


connectionId

Optional connectionId: undefined | number

The resume id for this node.

Defined in: api/node/Node.ts:60


currentReconnect

currentReconnect: number= 0

The current reconnection try this node is on, or 0 if this player hasn't closed.

Defined in: api/node/Node.ts:55


eventBuffer

Optional eventBuffer: undefined | number

When a connection is closed, events will be buffered for up to the timeout specified here.

Defined in: api/node/Node.ts:65


id

Readonly id: string | number

The identifier for this node.

Defined in: api/node/Node.ts:35


meta

Optional meta: undefined | NodeMetadata

The metadata of the andesite-instance.

Defined in: api/node/Node.ts:70


port

Optional Readonly port: undefined | number

The configured port of the andesite instance.

Defined in: api/node/Node.ts:45


reconnection

Readonly reconnection: Required<ReconnectionOptions>

The reconnection options for this node.

Defined in: api/node/Node.ts:50


secure

Readonly secure: boolean

Whether to use wss/https

Defined in: api/node/Node.ts:40


stats

Optional stats: undefined | NodeStats

The stats of the andesite-instance.

Defined in: api/node/Node.ts:75

Accessors

auth

auth(): undefined | string

The authorization for this andesite instance.

Returns: undefined | string

Defined in: api/node/Node.ts:177


connected

connected(): boolean

Whether the websocket is open / connected.

Returns: boolean

Defined in: api/node/Node.ts:217


host

host(): string

The host of this andesite instance.

Returns: string

Defined in: api/node/Node.ts:170


manager

manager(): PlayerManager

The manager instance.

Returns: PlayerManager

Defined in: api/node/Node.ts:191


penalties

penalties(): number

Penalties of this node. The higher the return number, the larger load the andesite instance is handling.

Returns: number

Defined in: api/node/Node.ts:199


players

players(): Map<string, Player>

The active players for this node.

Returns: Map<string, Player>

Defined in: api/node/Node.ts:163


rest

rest(): REST

The rest manager for this node.

Returns: REST

Defined in: api/node/Node.ts:152


status

status(): NodeStatus

The current status of this node.

Returns: NodeStatus

Defined in: api/node/Node.ts:184

Methods

cleanUp

PrivatecleanUp(): void

Cleans up the websocket listeners.

since 1.0.0

Returns: void

Defined in: api/node/Node.ts:392


close

close(reason?: string): Promise<void>

Closes the websocket connection.

Parameters:

NameTypeDefault value
reasonstring"destroy"

Returns: Promise<void>

Defined in: api/node/Node.ts:283


configureEventBuffer

configureEventBuffer(timeout: number): Promise<number>

Configure the event buffer for this session.

Parameters:

NameTypeDescription
timeoutnumberTimeout for event buffering, in milliseconds

Returns: Promise<number>

Defined in: api/node/Node.ts:270


connect

connect(userId: string): Promise<Node>

Connect this node to the andesite instance.

Parameters:

NameType
userIdstring

Returns: Promise<Node>

Defined in: api/node/Node.ts:296


createPlayer

createPlayer(guildId: string, transport?: PlayerTransport): Player

Creates a new player with the provided guildId and transport.

Parameters:

NameTypeDefault valueDescription
guildIdstring-The guild id.
transportPlayerTransport"websocket"The transport to use.

Returns: Player

Defined in: api/node/Node.ts:227


debug

Privatedebug(message: string): void

Emits a debug message.

Parameters:

NameTypeDescription
messagestringThe debug message.

Returns: void

Defined in: api/node/Node.ts:358


destroyPlayer

destroyPlayer(guildId: string): Promise<boolean>

Destroys a player that is assigned the provided guild id.

Parameters:

NameTypeDescription
guildIdstringGuild ID of the player to destroy.

Returns: Promise<boolean>

Defined in: api/node/Node.ts:245


handleClose

PrivatehandleClose(event: CloseEvent): Promise<undefined | Timeout>

Handles the "close" websocket event.

Parameters:

NameTypeDescription
eventCloseEventThe event data.

Returns: Promise<undefined | Timeout>

Defined in: api/node/Node.ts:490


handleError

PrivatehandleError(event: ErrorEvent): Promise<void>

Handles the "error" websocket event.

Parameters:

NameTypeDescription
eventErrorEventThe event data.

Returns: Promise<void>

Defined in: api/node/Node.ts:505


handleMessage

PrivatehandleMessage(__namedParameters: MessageEvent): Promise<void>

Handles the "message" websocket event.

Parameters:

NameType
__namedParametersMessageEvent

Returns: Promise<void>

Defined in: api/node/Node.ts:440


handleOpen

PrivatehandleOpen(): Promise<void>

Handles the "open" websocket event.

Returns: Promise<void>

Defined in: api/node/Node.ts:418


processQueue

PrivateprocessQueue(): Promise<void>

Processes all of the queued payloads.

Returns: Promise<void>

Defined in: api/node/Node.ts:368


queueReconnect

ProtectedqueueReconnect(): Timeout

queues a reconnect.

Returns: Timeout

Defined in: api/node/Node.ts:405


reconnect

reconnect(): Promise<void>

Reconnects to the andesite instance.

Returns: Promise<void>

Defined in: api/node/Node.ts:333


send

Privatesend(payload: unknown): Promise<void>

Sends a payload to the andesite instance.

Parameters:

NameType
payloadunknown

Returns: Promise<void>

Defined in: api/node/Node.ts:516


sendWs

sendWs(data: { op: string } & Record<string, any>, prioritize?: boolean): Promise<void>

Send a packet to the andesite instance.

Parameters:

NameTypeDefault valueDescription
data{ op: string } & Record<string, any>-The packet data
prioritizebooleanfalseWhether to prioritize this packet.

Returns: Promise<void>

Defined in: api/node/Node.ts:260