如果机器人创建了一个文本频道,您如何 select 它刚刚创建的频道并让机器人 post 在其中发送消息?

If the bot creates a text channel, how could you select the channel that it has just made and have the bot post a message in it?

我正在制作服务器并想要一个机器人。它有一个票务系统。你这样做,ticket(原因),然后它将与用户和一些支持创建一个私人文本通道,但是当创建文本通道时,我希望机器人先说: @Support ,@(调用工单的用户)已经为(原因)

制作了工单

当前代码:

@client.command(pass_context=True)
async def ticket(ctx,*,reason):
    global ticketNumber
    ticketNumber = str(ticketNumber)
    global supportRole
    supportRole = discord.utils.get(ctx.guild.roles, name="Support")
    overwrites = {
        ctx.guild.default_role: discord.PermissionOverwrite(read_messages=False),
        ctx.guild.me: discord.PermissionOverwrite(read_messages=True, send_messages=True),
        supportRole: discord.PermissionOverwrite(read_messages=True, send_messages=True),
        ctx.author: discord.PermissionOverwrite(read_messages=True, send_messages=True)
    }
    name = 'Tickets'
    category = discord.utils.get(ctx.guild.categories, name=name)
    guild = ctx.message.guild
    await guild.create_text_channel(f'Ticket-{ticketNumber}', category=category, overwrites=overwrites)
    ticketNumber = int(ticketNumber) + 1
    await ctx.author.send("Your ticket has been made, a support team member will try to answer it ASAP. Thank you.")
    await ctx.send(reason)
    await ctx.author.add_roles(discord.utils.get(id=ID NUMBER))

还好create_text_channel()returns创建了频道
要提及某个角色,您可以使用 role.mention.


ticket_channel = await ctx.guild.create_text_channel(f'Ticket-{ticketNumber}', category=category, overwrites=overwrites)

msg = f'{supportRole.mention}, {ctx.author.mention} has made a ticket for {reason}'
await ticket_channel.send(msg)