Я пытаюсь создать команду для своего бота 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
`discord.errors.ClientException: не подключен к голосу` при использовании голосового канала ⇐ Python
Программы на Python
1766953650
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)
Подробнее здесь: [url]https://stackoverflow.com/questions/79856390/discord-errors-clientexception-not-connected-to-voice-when-in-a-voice-channe[/url]
Ответить
1 сообщение
• Страница 1 из 1
Перейти
- Кемерово-IT
- ↳ Javascript
- ↳ C#
- ↳ JAVA
- ↳ Elasticsearch aggregation
- ↳ Python
- ↳ Php
- ↳ Android
- ↳ Html
- ↳ Jquery
- ↳ C++
- ↳ IOS
- ↳ CSS
- ↳ Excel
- ↳ Linux
- ↳ Apache
- ↳ MySql
- Детский мир
- Для души
- ↳ Музыкальные инструменты даром
- ↳ Печатная продукция даром
- Внешняя красота и здоровье
- ↳ Одежда и обувь для взрослых даром
- ↳ Товары для здоровья
- ↳ Физкультура и спорт
- Техника - даром!
- ↳ Автомобилистам
- ↳ Компьютерная техника
- ↳ Плиты: газовые и электрические
- ↳ Холодильники
- ↳ Стиральные машины
- ↳ Телевизоры
- ↳ Телефоны, смартфоны, плашеты
- ↳ Швейные машинки
- ↳ Прочая электроника и техника
- ↳ Фототехника
- Ремонт и интерьер
- ↳ Стройматериалы, инструмент
- ↳ Мебель и предметы интерьера даром
- ↳ Cантехника
- Другие темы
- ↳ Разное даром
- ↳ Давай меняться!
- ↳ Отдам\возьму за копеечку
- ↳ Работа и подработка в Кемерове
- ↳ Давай с тобой поговорим...
Мобильная версия