我试图创建一个函数,该函数首先创建一个名为“ management”的类别,然后创建一个以我的服务器成员数命名的通道。
预期的结果是,类别和渠道如上所述得到相应创建。
这是我要使用的代码
@client.command()
async def setup_counter(ctx):
try:
await ctx.send("Setting up management!")
await guild.create_category("Management", overwrites=None, reason=None)
await guild.create_voice_channel(f"Member Count: {guild.member_count}", overwrites=None, category="Management", reason=None)
await ctx.send("Setup finished!")
except Exception as errors:
print(f"Bot Error: {errors}")
答案 0 :(得分:1)
您需要选择要在哪个服务器(公会)上执行此操作。另外,您需要传递对类别的引用,而不仅仅是其名称。如果您知道公会的ID,请使用以下代码:
@client.command()
async def setup_counter(ctx):
try:
guild = client.get_guild(id) # <-- insert yor guild id here
await ctx.send("Setting up management!")
category = await guild.create_category("Management", overwrites=None, reason=None)
await guild.create_voice_channel(f"Member Count: {guild.member_count}", overwrites=None, category=category, reason=None)
await ctx.send("Setup finished!")
except Exception as errors:
print(f"Bot Error: {errors}")
如果您不知道公会ID,请按照官方article进行讨论,寻找他们的服务器ID。
答案 1 :(得分:0)
在使用ctx.guild
的地方使用guild.#something
。无需使用guild = client.get_guild()
。