Bot权限: Admin (所有权限)
Bot Role位于列表顶部
我尝试了以下代码:
client.on("guildDelete", async guild => {
try {
await guild.roles.find(r => r.id == "123456789").delete()
}
catch(err){
// Missing Permissions
}
})
但是,我也尝试过此操作(模拟guildDelete事件)
参数“公会”是一个真实的公会
client.emit("guildDelete", guild)
// This time, the role is deleted...
为什么这次可以使用,但在实际事件中却不可用?
答案 0 :(得分:0)
public class ObjectsMapper
{
private readonly IMapper _mapper;
private const string _dateFormat = "yyyy’-‘MM’-‘dd’T’HH’:’mm’";
public ObjectsMapper()
{
var config = new MapperConfiguration(cfg =>
{
cfg.CreateMap<Customer, CustomerTO>()
.ForMember(dest => dest.SomeDate.ToString(_dateFormat), opt => opt.MapFrom(src => src.SomeDate))
.ForMember(dest => dest.SomeDate.ToString(_dateFormat), opt => opt.MapFrom(src => src.SomeDate));
cfg.CreateMap<CustomerTO, Customer>()
.ForMember(dest => dest.SomeDate, opt => opt.MapFrom(src => Convert.ToDateTime(src.SomeDate)))
.ForMember(dest => dest.SomeDate, opt => opt.MapFrom(src => Convert.ToDateTime(src.SomeDate)));
});
_mapper = config.CreateMapper();
}
public User Map(CustomerTO user) => _mapper.Map<CustomerTO, Customer>(customer);
}
事件被触发意味着您的机器人帐户已从该公会中删除,或者通过离开自己,被踢,被禁止或被公会删除。
不再进入公会将使您的Bot无法与该公会中的任何内容进行互动,从而引发无效的权限错误。
使用guildDelete
时,您正在模拟事件被触发,这意味着您的Bot仍在公会中并且仍然具有访问权限。