[英]discord.js v13 temp voice channels - joinVoiceChannel() @discordjs/voice
我正在嘗試添加一個命令,允許創建臨時語音通道。
我在此命令中創建了一個新客戶端,以嘗試以另一種方式獲取 joinVoiceChannel() 參數。
文件:
const { joinVoiceChannel } = require ('@discordjs/voice')
module.exports = {
emoji: '🔈',
name: 'voice',
description: 'Create a temporary voice channel',
execute(interaction) {
console.log('hi')
joinVoiceChannel({
channelId: interaction.channel.id,
guildId: interaction.guild.id,
adapterCreator: interaction.guild.voiceAdapterCreator,
})
}
}
錯誤:
TypeError: Cannot read property 'id' of undefined
at Object.execute (C:\Users\tomfi\Code\DiscordBot\commands\voice.js:11:38)
at module.exports (C:\Users\tomfi\Code\DiscordBot\events\messageCreate.js:16:17)
at Client.emit (node:events:394:28)
at MessageCreateAction.handle (C:\Users\tomfi\Code\DiscordBot\node_modules\discord.js\src\client\actions\MessageCreate.js:23:14)
at Object.module.exports [as MESSAGE_CREATE] (C:\Users\tomfi\Code\DiscordBot\node_modules\discord.js\src\client\websocket\handlers\MESSAGE_CREATE.js:4:32)
at WebSocketManager.handlePacket (C:\Users\tomfi\Code\DiscordBot\node_modules\discord.js\src\client\websocket\WebSocketManager.js:345:31)
at WebSocketShard.onPacket (C:\Users\tomfi\Code\DiscordBot\node_modules\discord.js\src\client\websocket\WebSocketShard.js:443:22)
at WebSocketShard.onMessage (C:\Users\tomfi\Code\DiscordBot\node_modules\discord.js\src\client\websocket\WebSocketShard.js:300:10)
at WebSocket.onMessage (C:\Users\tomfi\Code\DiscordBot\node_modules\ws\lib\event-target.js:132:16)
at WebSocket.emit (node:events:394:28)
joinVoiceChannel
不創建語音通道,它創建語音連接。 您需要改用GuildChannelManager.create
。 方法如下:
const channel = await interaction.guild.channels.create("VC_NAME", {
type: "GUILD_VOICE" //note it is "GUILD_VOICE" and not just "voice" anymore
}
joinVoiceChannel({
channelId: channel.id,
guildId: interaction.guild.id,
adapterCreator: interaction.guild.voiceAdapterCreator,
})
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.