Nの外部記憶

作ったアプリや、作成時の備忘録を書くブログ。やりたいことが多すぎるッ!

【Discord.py】サーバに参加(または退出)した人がいた場合に自動でメッセージを送信する

コード例

@bot.event
async def on_member_join(member):
    CHANNEL_ID = #チャンネルID(int)
    channel = bot.get_channel(CHANNEL_ID)
    await channel.send(str(member.mention)+'さん!ようこそ!')

@bot.event
async def on_member_remove(member):
    CHANNEL_ID = #チャンネルID(int)
    channel = bot.get_channel(CHANNEL_ID)
    await channel.send(str(member.mention)+'さん!さよなら!')

解説

サーバに人が参加、またはサーバから退出すると、on_member_join(member),on_member_remove(member)が呼び出されます。
コメントしたいチャンネルを指定して、メッセージを送信します。

member.mentionで、メンションを取得できる。「@○○」という形で送信される。 ユーザの名前だけを取得したい場合、member.display_nameを指定する。

注意点

  • 「CHANNEL_ID」は、int型で格納する。(ダブルクォーテーションを付けない)