向不和谐的服务器中的所有人发送消息

问题描述 投票:0回答:1

我正在尝试让我的discord机器人向我的discord服务器上的所有人发送消息,我尝试过的所有答案都不适用于我。到目前为止,我已经有了这段代码,但是不知道它是否有效,因为我没有任何人不满(我正在为朋友准备)

这里是代码:

    import discord

    def read_token():
    with open("token.txt", "r") as f:
        lines = f.readlines()
        return lines[0].strip()

    token = read_token()

    client = discord.Client()

    @client.event
    async def on_message(message):
         if message.content.find("!hello") != -1:
         await message.channel.send("Hi") # If the user says !hello we will 
         send back hi

      if message.content.startswith('Message everyone'):
      for guild in client.guilds:
          for discord.Member in guild.members:
            await message.discord.Member.send("sup")

client.run(token)
python bots discord discord.py
1个回答
0
投票

您可以使用create_dm()为成员创建dm。

添加了检查以跳过所有漫游器。

使用lower()处理任何情况下的消息。

FYI-在不和谐的情况下创建公会非常简单,因此您可以进行测试,如果无法测试,则不值得尝试。

尝试一下:

@client.event
async def on_message(message):
    if message.author == client.user:
        return
    if message.content.find("!Hello") != -1:
        await message.channel.send('Hi')
    if message.content.lower().startswith('message everyone'):
        for guild in client.guilds:
            await sleep(.25)
            members = guild.members
            for member in members:
                if member.bot is True:
                    continue
                await sleep(.25)
                channel = await member.create_dm()
                await channel.send('sup')
© www.soinside.com 2019 - 2024. All rights reserved.