2017-07-23 1 views
0
import discord 
from discord.ext import commands 
import speech_recognition as sr 
description = 'Tutorial Bot' 
bot_prefix = '?' 
client = commands.Bot(description=description, command_prefix=bot_prefix) 
@client.event 
async def on_message(message): 
    if message.content.startswith("Alice"): 
     msg = await client.send_message(message.channel, 'Hello') 
@client.event 
async def on_voice_state_update(): 
    with sr.Microphone() as source: 
     r = sr.Recognizer() 
     audio = r.listen(source) 
     command = r.recognize_google(audio) 
     msg = await client.send_message(message.channel, comman) 
async def joinVoiceChannel(): 
    channel = client.get_channel("FILL") 
    await client.join_voice_channel(channel) 
@client.event 
async def on_ready(): 
    print("Logged in") 
    print("Name : {}".format(client.user.name)) 
    print("ID : {}".format(client.user.id)) 
    print(discord.__version__) 
    await joinVoiceChannel() 
client.run("FILL") 

Ich versuche, mache beitreten, um einen Bot zu machen, die an dem Gespräch teilnehmen können, Ton hören, wenn ein Mikrofon aktiviert wird, und verwenden Sie das Spracherkennungsmodul zur Ausgabe der Nachricht in String-Form. Ich habe jedoch Schwierigkeiten, den Bot dem Anruf beizutreten, und ich habe keine Möglichkeit gefunden, eine Audioeingabe von Dissonanzen zu nehmen. BOOS MUSIC
ID:Ich kann nicht bieten Zwietracht Sprachkanäle mit dem Python Zwietracht Modul

in
Namen Gespeichert 284760930837987338
0.16.8
Ignorieren Ausnahme in on_ready Traceback (jüngste Aufforderung zuletzt): Datei „C: \ Benutzer \ LMEBA21 \ AppData \ Local \ Programme \ Python \ Python35-32 \ lib \ site-packages \ discord \ client.py ", Zeile 307, in _run_event Ausbeute von getattr (selbst, Ereignis) (* args, ** kwargs) Datei" C:/Benutzer/LMEBA21/AppData/Lokale/Programme/Python/Python35-32/ALPHA.py ", Zeile 28, in on_ready erwarten Sie joinVoiceChannel() Datei" C:/Benutzer/LM EBA21/AppData/Lokale/Programme/Python/Python35-32/ALPHA.py ", Zeile 21, in joinVoiceChannel erwarten client.join_voice_channel (Kanal) Datei" C: \ Benutzer \ LMEBA21 \ AppData \ Lokale \ Programme \ Python \ Python35-32 \ lib \ site-packages \ discord \ client.py ", Zeile 3190, in join_voice_channel raise e Datei" C: \ Benutzer \ LMEBA21 \ AppData \ Lokale \ Programme \ Python \ Python35-32 \ lib \ site -packages \ discord \ client.py ", Zeile 3186, in join_voice_channel session_id_data = yield von asyncio.wait_for (session_id_future, timeout = 10.0, loop = self.loop) Datei" C: \ Benutzer \ LMEBA21 \ AppData \ Local \ Programme \ Python \ Python35-32 \ lib \ asyncio \ tasks.py ", Zeile 390, in wait_for erhöhen Sie futures.TimeoutError() concurrent.futures._base.TimeoutError

+1

Was war das Problem? Fügen Sie den Fehler hinzu, den Sie in Ihrem Post erhalten haben. – CodingNinja

Antwort

0

Ich würde sagen, aber kann nicht wegen der niedrigen rep, die beiden größten Fehler Sie machen sind, dass Sie Ihre Voice-Objekt mit so etwas wie speichern soll:

voice = await client.join_voice_channel(channel) 

wie Sie zweifellos es zu verweisen benötigen später, und zweitens unterstützt Discord derzeit nicht die Aufnahme von Audio von anderen Benutzern, dazu müssten Sie wahrscheinlich Ihren eigenen Discord-Wrapper schreiben und irgendwie Aufnahme integrieren (was ein wenig unheimlich ist).

Verwandte Themen