distube-vk-music-plugin
Custom Distube plugin for VK Music support.
Feature
Installation
npm install distube-vk-music-plugin
yarn add distube-vk-music-plugin
pnpm add distube-vk-music-plugin
Using
import { VKMusicPlugin } from 'distube-vk-music-plugin'
import { Client, GatewayIntentBits } from 'discord.js'
import { DisTube } from 'distube'
const client = new Client({
intents: [
GatewayIntentBits.Guilds,
GatewayIntentBits.GuildMessages,
GatewayIntentBits.MessageContent,
GatewayIntentBits.GuildMembers,
GatewayIntentBits.GuildVoiceStates,
]
})
const distube = new DisTube(client, {
plugins: [new VKMusicPlugin({ token: 'vk token' })]
})
client.login('bot token')
Example of plugin error handling
import { VK_PLUGIN_ERROR_CODE, VKErrors } from 'distube-vk-music-plugin'
import { DisTubeError } from 'distube'
client.on('error', (error) => {
if (error instanceof DisTubeError) {
if (error.errorCode === VK_PLUGIN_ERROR_CODE) {
switch (error.message as VKErrors) {
case VKErrors.PLAYLIST_NOT_FOUND:
// code here...
break
case VKErrors.PLAYLIST_SONGS_NOT_FOUND:
// code here...
break
case VKErrors.ARTIST_NOT_FOUND:
// code here...
break
case VKErrors.ARTIST_SONGS_NOT_FOUND:
// code here...
break
case VKErrors.AUDIO_NOT_FOUND:
// code here...
break
case VKErrors.USER_OR_GROUP_NOT_FOUND:
// code here...
break
case VKErrors.URL_NOT_SUPPORT:
// code here...
break
default:
// Unexpected errors, create an issue here: https://github.com/titsex/distube-vk-music-plugin/issues
break
}
}
}
})
Documentation
VKMusicPlugin[VKMusicPluginOptions]
-
token
is required, to get it, follow the link, click "allow" and copy everything between access_token= and &expires_in