我正在尝试使用按钮进行嵌入,当您单击按钮时会创建一个频道,并且机器人会通过嵌入向您发送 DM,但我在尝试通过 bot.get_channel(channel_id) 获取频道时遇到错误
这是我的代码:
try:
server = await bot.fetch_guild(server_id)
channel = server.get_channel(channel_id)
view = View()
except Exception as e:
print(f"Error: {e}")
else:
embed.set_author(name=server.name, icon_url=server.icon.url)
await interaction.response.defer()
await channel.send(embed=embed, view=view)
我也尝试使用调试它
print(channel)
print(channel.id)
输出:
None129
129xxxxxxxxxxxx6
OBS:我使用interaction.response.defer()作为命令,因为它是日志并且发送有延迟。
问题是您想要发送
Member
一个带有嵌入内容的 dm,如您所说,但在代码中,您试图对您的 server
的频道执行此操作。
如果你尝试这样的事情会有帮助:
await member.send(embed=embed, view=view)
如果这不起作用,则
Member
可能已禁用公共直接消息。