[DAY 08]新成员进来时靠bot进行说明事项

最近进了一个公会群,发现当有新成员进来时管理员还需要问他们ID才能把他们邀进游戏里的工会

新成员进来时管理员问ID这步骤可以靠on_member_join函式来解决,这函式意思是当有新成员进频道时你的chatbot要做什麽回应

程序码如下:

import discord
import requests
import pandas as pd
import pickle
import difflib
from dotenv import load_dotenv



if __name__ == '__main__':
    #读取Token
    load_dotenv()
    TOKEN = os.getenv('DISCORD_TOKEN')
    
    intents = discord.Intents.default()
    intents.members = True
    client = discord.Client(intents=intents)
    embed = discord.Embed()
    
    
    #新成员加入
    @client.event
    #当有讯息时
    async def on_member_join(member):
        guild = client.get_guild(GUILD_ID)
        
        for channel in guild.channels:
        
            if channel.name == '一般':#<<记得改"一般"
                await channel.send(f"<@{member.id}> 你好呀:sunglasses:  请输入你的游戏ID,管理员看到就会把你加进公会~")

client.run(TOKEN) #TOKEN 在刚刚 Discord Developer 那边「BOT」页面里面

<@{member.id}>後面member.id是指新成员的昵称

channel.name的值是新成员进来时所在的频道,一般来说频道名称是general,这边可能要注意一下

呈现画面:

API其他函式可以看官方文档

这边也推荐可以进discrd的官方chatbotapi群询问问题,每个语言都有专属的子频道,不用怕讯息杂乱


<<:  JAVA 语言

>>:  DAY 11 Quick replies & Action objects in Messaging API

[Day 30] Android in Kotlin: 完赛心得

完赛罗 baby 这是我第一次参加铁人赛,这一个月下来,不仅算是给予暑假两个月的我一个复习的机会、加...

javascript函式的变形2

现在我们来学习函式的进阶,全域变数跟区域变数的差别和使用方法。区域变数的差别和使用方法。 ...

CNN

CNN在deep learning里占了非常大比例的应用,主要用在图像识别上,架构如下: CNN的h...

企业资料通讯Week6 (1) | DNS(网域名称系统)[二]

DNS Message DNS 的讯息传递也是两种:Query 与 Reply(就是要求与回覆),它...

Day 18 ml5.js-2

衔接 Day 16 的 ml5.js 范例,我们可以把辨识流程改成上传图片的形式。 之前的范例使用 ...