创建子频道

创建一个子频道。

注意

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

使用示例

import botpy
from botpy.message import Message
from botpy.types.channel import ChannelSubType, ChannelType

class MyClient(botpy.Client):
    async def on_at_message_create(self, message: Message):
        await self.api.create_channel(
          guild_id=message.guild_id,
          name="创建子频道",
          type=ChannelType.TEXT_CHANNEL,
          sub_type=ChannelSubType.TALK,
          position=1,
          parent_id=1,
        )

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

注意

  • 要求操作人具有管理频道的权限,如果是机器人,则需要将机器人设置为管理员。
  • 创建成功后,返回创建成功的子频道对象,同时会触发一个频道创建的事件通知。
  • 目前不支持创建的子频道类型
    • 子频道分组
    • 私密子频道

参数说明

字段名必填类型描述
guild_idstring频道 ID
namestring子频道名
typeChannelType子频道类型
sub_typeChannelSubType子频道子类型
positionint排序,非必填
parent_idint分组 ID

ChannelType

描述
0文字子频道
1保留,不可用
2语音子频道
3保留,不可用
4子频道分组
10005直播子频道
10006应用子频道
10007论坛子频道

注:由于 QQ 频道还在持续的迭代中,经常会有新的子频道类型增加,文档更新不一定及时,开发者识别 ChannelType 时,请注意相关的未知 ID 的处理。

ChannelSubType

描述
0闲聊
1公告
2攻略
3开黑

返回说明

返回 ChannelRes 对象。

ChannelRes

字段名类型描述
idstring子频道 ID
guild_idstring频道 ID
namestring子频道名
typeint子频道类型 ChannelType
sub_typeint子频道子类型 ChannelSubType
positionint排序,非必填
owner_idstring创建者 ID

返回示例

data

{
  "id": "channel_id",
  "guild_id": "guild_id",
  "name": "channel_test",
  "type": 1,
  "sub_type": 0,
  "position": 1640240055,
  "owner_id": "2854198244"
}