Class RequireUserPermissionAttribute
Requires the user invoking the command to have a specified permission.
[AttributeUsage(AttributeTargets.Class|AttributeTargets.Method, AllowMultiple = true, Inherited = true)]
public class RequireUserPermissionAttribute : PreconditionAttribute- Inheritance
- 
      
      
      
      RequireUserPermissionAttribute
- Inherited Members
Constructors
RequireUserPermissionAttribute(ChannelPermission)
Requires that the user invoking the command to have a specific ChannelPermission.
public RequireUserPermissionAttribute(ChannelPermission permission)Parameters
- permissionChannelPermission
- The ChannelPermission that the user must have. Multiple permissions can be specified by ORing the permissions together. 
RequireUserPermissionAttribute(GuildPermission)
Requires that the user invoking the command to have a specific GuildPermission.
public RequireUserPermissionAttribute(GuildPermission permission)Parameters
- permissionGuildPermission
- The GuildPermission that the user must have. Multiple permissions can be specified by ORing the permissions together. 
Remarks
This precondition will always fail if the command is being invoked in a IPrivateChannel.
Properties
ChannelPermission
Gets the specified ChannelPermission of the precondition.
public ChannelPermission? ChannelPermission { get; }Property Value
ErrorMessage
When overridden in a derived class, uses the supplied string as the error message if the precondition doesn't pass. Setting this for a class that doesn't override this property is a no-op.
public override string ErrorMessage { get; set; }Property Value
GuildPermission
Gets the specified GuildPermission of the precondition.
public GuildPermission? GuildPermission { get; }Property Value
NotAGuildErrorMessage
Gets or sets the error message if the precondition fails due to being run outside of a Guild channel.
public string NotAGuildErrorMessage { get; set; }Property Value
Methods
CheckPermissionsAsync(ICommandContext, CommandInfo, IServiceProvider)
Checks if the command has the sufficient permission to be executed.
public override Task<PreconditionResult> CheckPermissionsAsync(ICommandContext context, CommandInfo command, IServiceProvider services)Parameters
- contextICommandContext
- The context of the command. 
- commandCommandInfo
- The command being executed. 
- servicesIServiceProvider
- The service collection used for dependency injection.