CustomEventResolver
自定义事件解析器。根据得到的初步解析结果,将事件内容解析为一个 Event。
当存在多个自定义解析器,则会在首次得到非 null
结果时终止处理。
如果处理链上得到的全部都为 null
,则会在 RawEventResolveResult.rawEvent 不为 null
的情况下尝试解析为标准事件。如果无法解析,则最终会被解析为 love.forte.simbot.component.onebot.v11.event.UnknownEvent 和对应的 OneBotUnknownEvent。
异常
如果 resolve 产生异常,此异常会被暂时记录,并继续尝试使用其他解析器。 如果最终所有的 CustomEventResolver 都无法得到有效的结果,则:
如果 RawEventResolveResult.rawEvent 不为
null
,则会尝试解析为标准事件。如果解析成功,则记录的异常会以 异常日志 的形式输出。
如果解析失败,则会使用 OneBotUnsupportedEvent 进行包装,记录的异常会以 异常日志 的形式输出。
如果 RawEventResolveResult.rawEvent 为
null
,则会使用 OneBotUnknownEvent 进行包装, 记录的异常会以被整合并填充到 love.forte.simbot.component.onebot.v11.event.UnknownEvent.reason 中, 并以 异常日志 的形式输出。
Since
1.8.0
Author
ForteScarlet
See also
Inheritors
Types
Link copied to clipboard
interface Context
提供给 CustomEventResolver.resolve 进行处理的内容。