当前位置: 首页 > 知识库问答 >
问题:

如何向bot所在的每个服务器发送消息(discord.py)

汪博达
2023-03-14

因此,我希望我的bot在我的bot所在的每台服务器上都发送一条消息,但它将仅以一个通道名发送一条消息,如

示例:

//broadcast hello

机器人搜索频道名称将军

机器人会向该频道发送一条消息,它会继续向我的机器人所在的其他服务器发送“你好”。

谁能给我举个例子?因为我不知道如何。所以我在这里寻求帮助

共有1个答案

易炳
2023-03-14

最好的方法是在机器人所在的每台服务器上循环,然后在每台服务器上循环每个通道,测试该通道的名称是否为“常规”,如果是,则向该通道发送消息。您可以使用bot。公会获取机器人所在的所有服务器的列表,然后使用公会。通道要获取服务器中的所有通道,则可以使用通道。name检查频道名称。以下是完整的命令:

@bot.command()
@commands.has_permissions(administrator=True)
async def broadcast(ctx, message):
    for guild in bot.guilds:
        for channel in guild.channels:
            if(channel.name == 'general'):
                await channel.send(message)

bot.run(token_here)
 类似资料:
  • 所以我想问,有没有一种方法可以让我发出命令,比如当我调用它时,机器人会向我的机器人所在的每个帮会的所有者发送一个dm,其中包含我的消息,或者它可以将该消息发送到它所在的每个帮会的员工专用频道。我可以用这个命令发布公告之类的东西。

  • 问题内容: 我将实现类似于Facebook通知和此网站的内容(StackOverflow的通知会通知我们是否有人为我们的问题写评论/答案等)。请注意,用户将使用我的应用程序作为网站而不是移动应用程序。 我遇到以下获取结果的答案,但我需要推送结果而不是获取结果。 根据建议,我在实体类中创建了一个简单方法,并向其中添加了@PostPersist,但此方法不起作用,因此基于此答案,我添加了persist

  • 问题内容: 该Socket.io API具有发送消息的能力 所有 的客户。 通过一台服务器和所有套接字在内存中,我知道该服务器如何向其所有客户端发送消息,这是显而易见的。但是,使用Redis来存储套接字的多台服务器呢? 如果我的客户端 a 连接到服务器 y ,客户端 b 连接到服务器 z (以及商店的Redis框),并且我在一个服务器上运行,则另一台服务器上的客户端将收到此消息。怎么样? 实际连接

  • 我正在阅读websockets,在阅读了大量的教程和博客(主要是关于创建一个简单的聊天应用程序)之后,仍然有一个问题没有得到回答: 那么,是否不可能让一些外部应用程序或事件调用一些脚本(bash或php)来使用现有运行的websocket实例向一个或多个连接的浏览器(websocket客户端)发送/广播一些信息(文本)? 抱歉,如果这是一个愚蠢的问题,但我无法找到答案,通过阅读这些博客在网上。 谢

  • 我有一个BE服务a,它正在使用假客户端向microservice B发送Rest JSON消息: 终点: Rest Endpoint正在向AWS Ses邮件或其他邮件提供商发送邮件。 问题是来自飞格的第一个呼叫可能需要5秒或更长时间。我需要使其异步,以便FE客户端不要等待邮件发送。 我如何可以使从飞度异步发出的Rest调用到超文本传输协议响应OK没有等待时间可以预期?是否有一些更好的解决方案来实现

  • 我有点不和谐。py bot和我使用此脚本使bot在被邀请到服务器时向主通道发送消息!但是,这不会向服务器发送任何内容!请帮忙!