await Bot.change_presence(status = discord.Status.idle, activity = gioco)
</syntaxhighlight>
=== Bot.help ===
Ogni Bot possiede di default un suo comando per inviare l'elenco delle funzioni che può svolgere, che può essere però rimosso se se ne volesse implementare uno simile e che si giudichi maggiormente funzionale<ref>{{Cita web|url=https://stackoverflow.com/questions/45951224/how-to-remove-default-help-command-or-change-the-format-of-it-in-discord-py|titolo=Bot.remove_command(help)|sito=stackoverflow.com|data=11 Maggio 2021}}</ref>.<syntaxhighlight lang="python3">
Bot.remove_command('help')
</syntaxhighlight>Sono esempi di comandi di aiuto migliorati rispetto a quello di default ad esempio quello di Lawliet, basato sulle reazioni<ref>[[Emoji]] che si possono attaccare al di sotto di un messaggio, e che tramite '''Discord.py''' possono essere percepite dal Bot con:<syntaxhighlight lang="python3">
@Bot.event
async def on_reaction():
</syntaxhighlight></ref>, o quello di Unbelievaboat, che ha sostanziali modifiche nella grafica.
=== Anti-spam ===
I Bot possono essere usati per limitare la spam, come nell'esempio che segue:<syntaxhighlight lang="python3" line="1">
@Bot.event
async def on_message(messaggio):
global messaggi
author = messaggio.author
if author != Bot.user:
messaggi.append(messaggio.content)
for i in messaggi:
if i == messaggio.content:
if len(messaggi) > 2:
lunghezza = len(messaggi)
if messaggi[lunghezza-1] == messaggi[lunghezza-2] == messaggi[lunghezza-3]:
if messaggi[lunghezza-1] == messaggi[lunghezza-2] == messaggi[lunghezza-3] == messaggi[lunghezza-4]:
if messaggi[lunghezza-1] == messaggi[lunghezza-2] == messaggi[lunghezza-3] == messaggi[lunghezza-4] == messaggi[lunghezza-5]:
try:
await author.kick(reason = 'spam')
print(f"{author} stava spammando un messaggio in {messaggio.channel}, quindi l'ho espulso.")
await messaggio.reply(f"{author.mention} stava spammando questo messaggio, quindi l'ho espulso.")
print(messaggi)
messaggi = []
return
except discord.errors.Forbidden:
await messaggio.reply(f"{author.mention} stava spammando questo messaggio, quindi ho provato ad espellerlo. Purtroppo non ho l'autorizzazione necessaria per farlo.")
print(messaggi)
messaggi = []
return
else:
await messaggio.reply(f'{author.mention}, questo è il tuo ultimo avvertimento!')
return
else:
await messaggio.reply(f'{author.mention}, smettila di scrivere lo stesso messaggio. Se lo farai altre due volte sarai espulso dal server!')
return messaggi
else:
return messaggi
else:
return
</syntaxhighlight>Sono inseriti (ad esempio a riga 21) degli <code>except</code> riguardanti degli errori diversi da quelli built-in<ref>Come <code>TypeError</code> e <code>ValueError</code></ref>, che richiedono l'importazione di <code>discord.exe.errors</code>, o (nel caso specifico) soltanto di <code>discord.py</code>.
== Collegamenti esterni ==
|