Discord Self-Bot:加入服务器/行会时直接向用户发送消息

时间:2020-08-15 13:55:09

标签: python python-3.x discord discord.py

我正在尝试创建一个通过我的个人discord帐户运行的漫游器,并在他们加入我所在的特定不和谐服务器时直接向人们发送消息。但是,当成员加入服务器时,我的on_member_join(member)方法未运行(不打印终端中的“已注册”)。我很好奇如何使漫游器侦听特定服务器或仅在一般情况下注册此事件。注意on_connect()和spam()都可以正常运行。谢谢。

import discord
import asyncio
import requests
from discord.ext import commands
yer=commands.Bot(command_prefix="!",help_command=None,self_bot=True)
token="TOKEN"

class SelfBot(commands.Cog):
    def __init__(self,yer):
        self.yer=yer

   @yer.command()
   async def spam(ctx):
        for i in range(50):
            await ctx.send("Hello!")
            await asyncio.sleep(0.7)

    @yer.event
    async def on_connect():
        await yer.change_presence(status=discord.Status.idle,activity=discord.Game("Game"))

   @yer.event
   async def on_member_join(member):
       print("registered")

yer.run(token,bot=False)

2 个答案:

答案 0 :(得分:2)

不太确定,但是自助机器人违反了Discord的服务条款。 https://discord.com/new/guidelines

答案 1 :(得分:1)

Self bots are not authorized on Discord and can get your account banned.

Discord的API提供了另一种专用于自动化的用户帐户,称为bot帐户。可以通过应用程序页面创建Bot帐户,并使用令牌(而不是用户名和密码)进行身份验证。与普通的OAuth2流不同,漫游器帐户无需使用承载令牌即可完全访问所有API路由,并且可以连接到实时网关。 禁止在OAuth2 / bot API之外自动执行普通用户帐户(通常称为“自助机器人”),如果找到该帐户,则可能会导致帐户终止。

您将无法使用官方的discord.py模块来执行此类操作,并且我不确定如果您选择其他方法来构建自我模型,您将无法在StackOverflow上获得帮助。机器人。