Lavalink Infrastructure
Client Connection Guide
Standard Lavalink v4 connection configuration and code snippets for popular Discord bot wrappers.
Because the Musiva Lavalink Gateway is 100% compliant with the official Lavalink v4 specification, you do not need to install custom SDKs or proprietary plugins. You can use any standard Discord bot music library.
Connection Credentials
Your Gateway dashboard supplies standard credentials:
{
host: "gateway.musiva.app",
port: 443,
secure: true,
authorization: "YOUR_GATEWAY_API_KEY",
name: "lavamusiva" // or client-defined node id
}Always use port: 443 and secure: true (WSS / HTTPS). Unencrypted WebSocket connections on port 80 are rejected by the Gateway for security.
Library Examples
import { LavalinkManager } from "lavalink-client";
const client = new LavalinkManager({
nodes: [
{
host: "gateway.musiva.app",
port: 443,
authorization: "YOUR_GATEWAY_API_KEY",
secure: true,
id: "musiva-gateway"
}
],
sendToShard: (guildId, payload) => {
client.guilds.cache.get(guildId)?.shard.send(payload);
},
autoSkip: true,
client: {
id: "YOUR_BOT_CLIENT_ID",
username: "MyDiscordMusicBot"
}
});import { Kazagumo } from "kazagumo";
import { Connectors } from "shoukaku";
const Nodes = [
{
name: "musiva-gateway",
url: "gateway.musiva.app:443",
auth: "YOUR_GATEWAY_API_KEY",
secure: true
}
];
const kazagumo = new Kazagumo({
defaultSearchEngine: "youtube",
send: (guildId, payload) => {
const guild = discordClient.guilds.cache.get(guildId);
if (guild) guild.shard.send(payload);
}
}, new Connectors.DiscordJS(discordClient), Nodes);import { Manager } from "erela.js";
const manager = new Manager({
nodes: [
{
host: "gateway.musiva.app",
port: 443,
password: "YOUR_GATEWAY_API_KEY",
secure: true,
identifier: "musiva-gateway"
}
],
send(id, payload) {
const guild = client.guilds.cache.get(id);
if (guild) guild.shard.send(payload);
}
});import { Shoukaku, Connectors } from "shoukaku";
const Nodes = [
{
name: "musiva-gateway",
url: "gateway.musiva.app:443",
auth: "YOUR_GATEWAY_API_KEY",
secure: true
}
];
const shoukaku = new Shoukaku(
new Connectors.DiscordJS(discordClient),
Nodes
);
shoukaku.on("error", (name, error) => console.error(`Node ${name} error:`, error));
shoukaku.on("ready", (name) => console.log(`Node ${name} connected via Musiva Gateway!`));