Ich benutze discord.py, um einen Chat-Bot zu erstellen. Bis jetzt ist es nur ein Test und der gesamte Code ist in einer Datei.(discord.py) Client.send_message() sendet keine Nachricht
Der Bot verbindet sich mit dem Server und wartet auf Nachrichten, die mit einem Ausrufezeichen '!' Beginnen.
Abhängig vom Befehl ruft er dann eine von 2 Funktionen auf. Bis zu diesem Punkt funktioniert der Bot wie beabsichtigt.
client = discord.Client()
@client.async_event
def on_message(message):
author = message.author
if message.content.startswith('!test'):
print('on_message !test')
test(author, message)
if message.content.startswith('!quit'):
print('on_message !quit')
quit(author, message)
Und das ist, wo es komisch wird. Wenn die Funktion quit aufgerufen wird, wird das Programm beendet. Wenn die Testfunktion aufgerufen wird, geschieht nichts. Es druckt nicht einmal die Zeichenkette.
def test(author, message):
print('in test function')
yield from client.send_message(message.channel, 'Hi %s, i heard you.' % author)
def quit(author, message):
sys.exit()
Was fehlt mir? Jede Hilfe wird geschätzt.