[英]Discord Api bot not joining the voice channel consistently
我已經制作了一個機器人,它可以在不和諧成員加入所述頻道時加入語音頻道,但有時當成員離開並重新加入時,我會收到機器人已經連接的錯誤,所以我添加了 is_connected 函數來檢查機器人是否是在嘗試加入之前已經連接。由於某種原因,此功能僅在一半時間內有效,如果我多次加入並離開通話,最終它會停止加入並且不會留下錯誤代碼,它會停止。 這是代碼:
@client.event
async def on_ready():
print("Logged in as {0.user}".format(client))
@client.event
async def on_voice_state_update(member, before, after):
if not before.channel and after.channel and member.id == 450333776485285919 or member.id==232855365082021890 or member.id==282234566066962433 or member.id==256759154524291074:
channel = client.get_channel(988050675604803648)
await is_connected()
@client.event
async def is_connected():
channel = client.get_channel(988050675604803648)
voice_client=discord.utils.get(client.voice_clients)
if(voice_client==None):
await channel.connect()
else:
print("is connected:")
我是不是用錯了功能?
您為 is_connected() 創建了一個並非完全必要的完整函數。 您需要在 on_voice_state_update 中使用該事件來檢查機器人是否已連接到該當前語音通道。
@client.event
async def on_voice_state_update(member, before, after):
if not before.channel and after.channel and member.id == 450333776485285919 or member.id==232855365082021890 or member.id==282234566066962433 or member.id==256759154524291074:
channel = client.get_channel(988050675604803648)
if client.voice.is_connected():
return print("already connected")
await channel.connect()
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.