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

如何使不和谐py bot在被邀请到服务器时发送消息

公英哲
2023-03-14

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

@client.event
async def on_guild_join(guild):
    print("NEW SERVER WAS JOINED!")
    general = find(lambda x: x.name == 'general',  guild.text_channels)
    if general and general.permissions_for(guild.me).send_messages:  
        await general.send(f"""
████████╗░░░░░░██████╗░░█████╗░████████╗
╚══██╔══╝░░░░░░██╔══██╗██╔══██╗╚══██╔══╝
░░░██║░░░█████╗██████╦╝██║░░██║░░░██║░░░
░░░██║░░░╚════╝██╔══██╗██║░░██║░░░██║░░░
░░░██║░░░░░░░░░██████╦╝╚█████╔╝░░░██║░░░
░░░╚═╝░░░░░░░░░╚═════╝░░╚════╝░░░░╚═╝░░░
```Thanks For Inviting the bot!
Made with <3 by TOG6#6666 with Tons of help from the TOG6 community!```
***Server Invite:*** https://discord.gg/vSxuAbq""")
        await general.send(f"``` Type $help to view all commands!```")

共有3个答案

云文栋
2023-03-14

我更擅长不和谐。js,但我会告诉你的。刺伤的问题…

@client.event
async def on_guild_join(guild):
    try:
        joinchannel = guild.system_channel
        # The system channel is where Discord’s join messages are sent
        await joinchannel.send('Thanks for inviting me to your server!')
    catch:
        # if no system channel is found send to the first channel in guild
        await guild.text_channels[0].send(<message>)
崔博延
2023-03-14
@client.event
async def on_guild_join(guild):
    for channel in guild.text_channels:
        if channel.permissions_for(guild.me).send_messages:
            await channel.send('I will send this message when I join a server')
        break
蒋无尘
2023-03-14

我想感谢所有回复这篇文章的人!然而我想出了一个逻辑

因为我的机器人拥有管理员权限,所以它可以在任何频道上发布!

问题是,每当有人说T-BOT(区分大小写)时,机器人都会发布主消息

这样,就没有人会在机器人发布第一条信息的同时完整地说出机器人了!

对于那些想知道怎么做的人,你可以使用on_messagediscord事件让它搜索机器人名称!

我希望将来我能帮助那些制造不和的人。pybot!:-)

 类似资料:
  • 请不要说“已经回答”,因为我尝试了一切,包括这里的所有相关帖子,显然,我正在阅读api文档。 完全错误为: 忽略on_ready Traceback(最近一次调用)中的异常:文件“/usr/local/lib/python3.8/dist packages/discord/client.py”,第312行,在on_ready wait channel中的事件wait coro(*args,**kw

  • 我希望这样,当我键入一个命令和一条消息时,它将把这条消息转发到机器人与python不和谐连接的每个服务器中的一个通道。我知道如何获取消息并寻找命令,但我不知道如何找到机器人可以在每个服务器上发布的频道,然后发送它。 有人能帮我吗?

  • 我的discord机器人每天凌晨4点自动发送消息。我不知道为什么。代码如下: 我不明白为什么我的机器人每天都自动向所有被邀请的服务器发送这条消息。 任何想法?

  • 在不和谐中发送私人消息的问题。以下是两个代码示例(简化)。 此代码块将消息(cookie表情符号)发回给用户,无论它是私人聊天(与机器人)还是频道 这段代码私下向用户发送了一条消息,如果用户在通道中发送了命令,它就可以工作了,我对此很满意。 问题是,我希望用户能够在频道或私人消息中向bot发送一条消息“.cookie”,并获取私人消息(cookie表情符号)。 最后一段代码。如果我发出命令。coo

  • 我正在尝试制作一个机器人,每4小时发送一次自动消息,但由于某些原因,它无法工作。我查看了所有的google和stack overflow,但没有一个答案能帮助我。不和谐是否改变了机器人发送消息的方式? 如果我试图运行这个代码,它会给我这个错误 任何帮助将不胜感激并感谢您的时间

  • 这是我的不和谐自我机器人代码。它将首先检查令牌是否有效,如果有效,它将登录到该令牌。根据client.event()on_ready,登录后不会发生任何事情(应该打印状态:在线)。我想我的小命令也坏了请帮忙。