#discord.js #bots
Вопрос:
Я создаю бота, который может воспроизводить что-то в голосовом канале, но проблема в том, что код думает, что я в голосовом канале, но это не так. Я использую этот код, чтобы проверить его
const voice_channel = message.member.voice.channel;
if (!voice_channel) {return sendMessage('**Error**', '#FF0000', 'You need to be in voice
channel to use this command.', message, Discord);}
Я не получаю никаких ошибок. Спасибо за любую помощь.
Комментарии:
1. Какая версия discord.js используете ли вы
2. @Cannicide Это неправильно.
message.member.voice.channel
это голосовой канал, в котором находится участник, отправивший сообщение. Если это определено, вы находитесь в голосовом канале, предполагая, что вы тот, кто отправил сообщение.3. Извините, я на секунду запутался там @GentleAutumnRain. Вы правы. Таким образом, предположение о том, кто отправил сообщение, лежит в основе этого вопроса.
4. @MrMythical Я использую последнюю версию
5. @GentleAutumnRain Да, это имеет смысл, но как мне получить реальный голосовой канал, чтобы проверить его.
Ответ №1:
Я беру удар в темноте здесь из-за отсутствия информации, представленной в вопросе, но общая проблема вполне может быть причиной этой проблемы.
Убедитесь, что у вас есть GUILD_VOICE_STATES
намерение, добавленное вашему клиенту. Без этого он не сможет обнаруживать обновления голосовых чатов, и поэтому, если вы запускаете свой код, не используя голосовой канал, он всегда будет думать, что вы не находитесь в нем, а если вы находитесь в голосовом канале, когда вы запускаете свой код, он всегда будет думать, что вы находитесь в нем.
Просто добавив это намерение, он сможет обнаруживать обновления и может/должен решить вашу проблему.
Ответ №2:
Я думаю, что лучшее решение console.log(voice_channel)
-проверить, не изменилось ли что-нибудь, когда вы подключены, а когда нет, и проверить, равно ли это значение значению, которое вы получили, когда не были подключены. Раньше я это знал, но я перестал создавать ботов для раздора, поэтому я в основном забыл все, чему научился ;(
Комментарии:
1. Похоже, когда я это делаю, а я не в VC, он говорит null, но когда я присоединяюсь к VC, он все равно говорит null. Также я попробовал код на другом КОМПЬЮТЕРЕ, похоже, это проблема discordjs, а не проблема кода.