`discord.errors.ClientException: не подключен к голосу` при использовании голосового каналаPython

Программы на Python
Ответить
Anonymous
 `discord.errors.ClientException: не подключен к голосу` при использовании голосового канала

Сообщение Anonymous »

Я пытаюсь создать команду для своего бота Discord, который воспроизводит музыку, однако он говорит, что он не подключен ни к каким голосовым каналам. «[2025-12-28 15:10:21,086] {_init_.py:173} ОШИБКА — ошибка кода при воспроизведении команды... Traceback (последний вызов): файл «C:\Users\rain\.virtualenvs\TWM-LveKoQPz\Lib\site-packages\discord\ext\commands\core.py», строка 235, в обертке ret = await coro(*args, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^ Файл "C:\Users\rain\Documents\TWM\TWM\cogs\voice.py", строка 146, в воспроизведении файла voice.play(source) "C:\Users\rain\.virtualenvs\TWM-LveKoQPz\Lib\site-packages\discord\voice_client.py", строка 605, в игре возникает ClientException('Не подключено к голосу.') discord.errors.ClientException: Не подключено к голосу."
вот часть кода: (еще больше я просто не показывал)
@commands.command()
async def play(self, ctx, *, arg):
"""
Checks where the command's author is, searches for the music required, joins the same channel as the command's
author and then plays the audio directly from YouTube.

:param ctx: discord.ext.commands.Context
:param arg: str
arg can be url to video on YouTube or just as you would search it normally.
:return: None
"""
try:
voice_channel = ctx.author.voice.channel

# If command's author isn't connected, return.
except AttributeError as e:
print(e)
await ctx.send("Please connect to the voice channel first!")
return

# Finds author's session.
session = ctx.guild.voice_client

# Searches for the video
with yt_dlp.YoutubeDL({'format': 'bestaudio', 'noplaylist': 'True'}) as ydl:
try:
requests.get(arg)
except Exception as e:
print(e)
info = ydl.extract_info(f"ytsearch:{arg}", download=False)[
'entries'][0]
else:
info = ydl.extract_info(arg, download=False)

url = info['formats'][0]['url']
thumb = info['thumbnails'][0]['url']
title = info['title']

# Finds an available voice client for the bot.
voice = ctx.guild.voice_client
if not voice:
await voice_channel.connect()
voice = ctx.guild.voice_client

await ctx.send(thumb)
await ctx.send(f"Playing {title}")

source = await discord.FFmpegOpusAudio.from_probe(url, **FFMPEG_OPTIONS)
voice.play(source)


Подробнее здесь: https://stackoverflow.com/questions/798 ... ice-channe
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Python»