获取频道成员列表

获取频道下的成员列表。

注意

  • 公域机器人暂不支持申请,仅私域机器人可用,选择私域机器人后默认开通。
  • 注意: 开通后需要先将机器人从频道移除,然后重新添加,方可生效。

使用示例

import botpy

from botpy.message import Message

class MyClient(botpy.Client):
    async def on_at_message_create(self, message: Message):
        await self.api.get_guild_members(guild_id="xxxx", after="0", limit=1)

intents = botpy.Intents(public_guild_messages=True)
client = MyClient(intents=intents)
client.run(appid={appid}, token={token})

参数说明

字段名必填类型描述
guild_idstring频道 ID
afterstring上一次回包中最大的用户 ID, 如果是第一次请求填 0,默认为 0
limitnumber分页大小,1-1000,默认是 1

返回说明

返回 Member 对象。

Member

字段名类型描述
userUser用户的频道基础信息,只有成员相关接口中会填充此信息
nickstring用户在频道内的昵称
rolesstring[]用户在频道内的身份组 ID,默认值可参考DefaultRoleIDs
joined_atstring用户加入频道的时间,是个 ISO8601 timestamp 字符串,例:"2021-11-23T15:16:48+08:00"

User

字段名类型描述
idstring用户 ID
usernamestring用户名
avatarstring用户头像地址
botboolean是否是机器人

返回示例

data

[
  {
    "user": {
      "id": "用户 ID",
      "username": "用户名",
      "avatar": "用户头像地址",
      "bot": false,
      "public_flags": 0,
      "system": false
    },
    "nick": "",
    "roles": [
      "4"
    ],
    "joined_at": "2021-11-23T15:16:48+08:00",
    "deaf": false,
    "mute": false,
    "pending": false
  }
]