discord.py - Как отправить сообщение на случайный канал? - PullRequest
0 голосов
/ 11 июля 2020

Я пытаюсь создать бота, который будет отправлять случайное сообщение на случайно выбранный канал, когда пользователь отправляет определенное c сообщение.

Я понятия не имею, как подойти к этой проблеме, кроме получения все идентификаторы каналов и вручную добавлять их в список, а затем произвольно выбирать из этого списка, но с этим подходом возникают очень большие проблемы, и он просто не работает. Я пробовал просмотреть документацию, но не смог найти способ делать то, что хочу.

Короче: мне нужен способ автоматически собирать все идентификаторы каналов в Discord, добавьте их в пустой список, а затем сможете отправлять сообщения на случайно выбранный канал в списке.

1 Ответ

0 голосов
/ 11 июля 2020

Я не понимаю, почему существует «большая проблема» в том, как вы описали. Ниже приведен короткий фрагмент, который будет делать именно то, что вы описали:

import random
client = discord.Client()
@client.event
async def on_ready():
    # assuming the bot is connected to only one guild
     guild = client.guilds[0]
     await random.choice(guild.text_channels).send("message goes here")
client.run(token)

Это также может быть достигнуто с помощью расширения команд с относительно небольшой модификацией приведенного выше фрагмента.

...