Class ModuleBase<T>
表示一个模块基类。
public abstract class ModuleBase<T> : IModuleBase where T : class, ICommandContext
Type Parameters
T模块的上下文类型。
- Inheritance
-
ModuleBase<T>
- Implements
- Derived
- Inherited Members
Properties
Context
获取此命令的上下文。
public T Context { get; }
Property Value
- T
Methods
AfterExecute(CommandInfo)
当此模块中的命令运行后执行。
protected virtual void AfterExecute(CommandInfo command)
Parameters
commandCommandInfo执行的命令。
AfterExecuteAsync(CommandInfo)
当此模块中的命令运行后异步执行。
protected virtual Task AfterExecuteAsync(CommandInfo command)
Parameters
commandCommandInfo执行的命令。
Returns
- Task
一个表示异步操作的任务。
BeforeExecute(CommandInfo)
当此模块中的命令在运行之前执行。
protected virtual void BeforeExecute(CommandInfo command)
Parameters
commandCommandInfo即将运行的命令。
BeforeExecuteAsync(CommandInfo)
当此模块中的命令在运行之前异步执行。
protected virtual Task BeforeExecuteAsync(CommandInfo command)
Parameters
commandCommandInfo即将运行的命令。
Returns
- Task
一个表示异步操作的任务。
OnModuleBuilding(CommandService, ModuleBuilder)
当构建此模块时执行。
protected virtual void OnModuleBuilding(CommandService commandService, ModuleBuilder builder)
Parameters
commandServiceCommandService创建此模块的命令服务。
builderModuleBuilder用于构建此模块的构建器。
ReplyCardAsync(ICard, bool, bool, RequestOptions?)
发送卡片消息到此命令消息所在的频道。
protected virtual Task<Cacheable<IUserMessage, Guid>> ReplyCardAsync(ICard card, bool isQuote = true, bool isEphemeral = false, RequestOptions? options = null)
Parameters
cardICard要发送的卡片。
isQuotebool是否引用源消息。
isEphemeralbool是否以临时消息的形式发送给命令调用者。如果设置为
true,则仅该用户可以看到此消息,否则所有人都可以看到此消息。optionsRequestOptions发送请求时要使用的选项。
Returns
- Task<Cacheable<IUserMessage, Guid>>
一个表示异步发送操作的任务。任务的结果包含所发送消息的可延迟加载的消息对象。
ReplyCardsAsync(IEnumerable<ICard>, bool, bool, RequestOptions?)
发送卡片消息到此命令消息所在的频道。
protected virtual Task<Cacheable<IUserMessage, Guid>> ReplyCardsAsync(IEnumerable<ICard> cards, bool isQuote = true, bool isEphemeral = false, RequestOptions? options = null)
Parameters
cardsIEnumerable<ICard>要发送的卡片。
isQuotebool是否引用源消息。
isEphemeralbool是否以临时消息的形式发送给命令调用者。如果设置为
true,则仅该用户可以看到此消息,否则所有人都可以看到此消息。optionsRequestOptions发送请求时要使用的选项。
Returns
- Task<Cacheable<IUserMessage, Guid>>
一个表示异步发送操作的任务。任务的结果包含所发送消息的可延迟加载的消息对象。
ReplyCardsAsync<TParams>(ulong, TParams, bool, bool, JsonSerializerOptions?, RequestOptions?)
发送卡片消息到此命令消息所在的频道。
protected virtual Task<Cacheable<IUserMessage, Guid>> ReplyCardsAsync<TParams>(ulong templateId, TParams parameters, bool isQuote = true, bool isEphemeral = false, JsonSerializerOptions? jsonSerializerOptions = null, RequestOptions? options = null)
Parameters
templateIdulong消息模板的 ID。
parametersTParams传入消息模板的参数。
isQuotebool是否引用源消息。
isEphemeralbool是否以临时消息的形式发送给命令调用者。如果设置为
true,则仅该用户可以看到此消息,否则所有人都可以看到此消息。jsonSerializerOptionsJsonSerializerOptions序列化模板参数时要使用的序列化选项。
optionsRequestOptions发送请求时要使用的选项。
Returns
- Task<Cacheable<IUserMessage, Guid>>
一个表示异步发送操作的任务。任务的结果包含所发送消息的可延迟加载的消息对象。
Type Parameters
TParams参数的类型。
ReplyFileAsync(FileAttachment, bool, bool, RequestOptions?)
发送文件到此命令消息所在的频道。
protected virtual Task<Cacheable<IUserMessage, Guid>> ReplyFileAsync(FileAttachment attachment, bool isQuote = true, bool isEphemeral = false, RequestOptions? options = null)
Parameters
attachmentFileAttachment文件的附件信息。
isQuotebool是否引用源消息。
isEphemeralbool是否以临时消息的形式发送给命令调用者。如果设置为
true,则仅该用户可以看到此消息,否则所有人都可以看到此消息。optionsRequestOptions发送请求时要使用的选项。
Returns
- Task<Cacheable<IUserMessage, Guid>>
一个表示异步发送操作的任务。任务的结果包含所发送消息的可延迟加载的消息对象。
ReplyFileAsync(Stream, string, AttachmentType, bool, bool, RequestOptions?)
发送文件到此命令消息所在的频道。
protected virtual Task<Cacheable<IUserMessage, Guid>> ReplyFileAsync(Stream stream, string filename, AttachmentType type = AttachmentType.File, bool isQuote = true, bool isEphemeral = false, RequestOptions? options = null)
Parameters
streamStream文件的流。
filenamestring文件名。
typeAttachmentType文件的媒体类型。
isQuotebool是否引用源消息。
isEphemeralbool是否以临时消息的形式发送给命令调用者。如果设置为
true,则仅该用户可以看到此消息,否则所有人都可以看到此消息。optionsRequestOptions发送请求时要使用的选项。
Returns
- Task<Cacheable<IUserMessage, Guid>>
一个表示异步发送操作的任务。任务的结果包含所发送消息的可延迟加载的消息对象。
ReplyFileAsync(string, string?, AttachmentType, bool, bool, RequestOptions?)
发送文件到此命令消息所在的频道。
protected virtual Task<Cacheable<IUserMessage, Guid>> ReplyFileAsync(string path, string? filename = null, AttachmentType type = AttachmentType.File, bool isQuote = true, bool isEphemeral = false, RequestOptions? options = null)
Parameters
pathstring文件的路径。
filenamestring文件名。
typeAttachmentType文件的媒体类型。
isQuotebool是否引用源消息。
isEphemeralbool是否以临时消息的形式发送给命令调用者。如果设置为
true,则仅该用户可以看到此消息,否则所有人都可以看到此消息。optionsRequestOptions发送请求时要使用的选项。
Returns
- Task<Cacheable<IUserMessage, Guid>>
一个表示异步发送操作的任务。任务的结果包含所发送消息的可延迟加载的消息对象。
ReplyTextAsync(string, bool, bool, RequestOptions?)
发送文本消息到此命令消息所在的频道。
protected virtual Task<Cacheable<IUserMessage, Guid>> ReplyTextAsync(string text, bool isQuote = true, bool isEphemeral = false, RequestOptions? options = null)
Parameters
textstring要发送的文本。
isQuotebool是否引用源消息。
isEphemeralbool是否以临时消息的形式发送给命令调用者。如果设置为
true,则仅该用户可以看到此消息,否则所有人都可以看到此消息。optionsRequestOptions发送请求时要使用的选项。
Returns
- Task<Cacheable<IUserMessage, Guid>>
一个表示异步发送操作的任务。任务的结果包含所发送消息的可延迟加载的消息对象。
ReplyTextAsync<TParams>(ulong, TParams, bool, bool, JsonSerializerOptions?, RequestOptions?)
发送文本消息到此命令消息所在的频道。
protected virtual Task<Cacheable<IUserMessage, Guid>> ReplyTextAsync<TParams>(ulong templateId, TParams parameters, bool isQuote = false, bool isEphemeral = false, JsonSerializerOptions? jsonSerializerOptions = null, RequestOptions? options = null)
Parameters
templateIdulong消息模板的 ID。
parametersTParams传入消息模板的参数。
isQuotebool是否引用源消息。
isEphemeralbool是否以临时消息的形式发送给命令调用者。如果设置为
true,则仅该用户可以看到此消息,否则所有人都可以看到此消息。jsonSerializerOptionsJsonSerializerOptions序列化模板参数时要使用的序列化选项。
optionsRequestOptions发送请求时要使用的选项。
Returns
- Task<Cacheable<IUserMessage, Guid>>
一个表示异步发送操作的任务。任务的结果包含所发送消息的可延迟加载的消息对象。
Type Parameters
TParams参数的类型。