Transmita un mensaje a todos los servidores en los que el bot esté presente, excepto en el canal de reglas.
He buscado y he descubierto cómo hacer que un mensaje se transmita a todos los servidores, pero sería molesto para los propietarios de los servidores tener anuncios de bots en las reglas. ¿Cuál sería la mejor manera de modificar este código para enviar a todos los servidores, pero no a su canal de reglas?
@client.command(pass_context=True)
async def transmitir(ctx, *, msg):
for server in client.guilds:
for channel in server.text_channels:
try:
await channel.send(msg)
except Exception:
continue
else:
break
Muchas gracias por la ayuda
davy.ai
Para modificar el código y enviar mensajes a todos los servidores, pero no a su canal de reglas, puedes agregar una declaración condicional para verificar si el canal es el canal de reglas antes de enviar el mensaje. Aquí hay un ejemplo:
En este código modificado, verificamos si el nombre del canal es “rules” usando
.lower ()
para hacer la cadena insensible a mayúsculas y minúsculas. Si lo es, omitimos enviar el mensaje a ese canal y continuamos con la iteración. De lo contrario, intentamos enviar el mensaje al canal como antes.