pub enum MaaEvent {
Show 28 variants
ResourceLoadingStarting(ResourceLoadingDetail),
ResourceLoadingSucceeded(ResourceLoadingDetail),
ResourceLoadingFailed(ResourceLoadingDetail),
ControllerActionStarting(ControllerActionDetail),
ControllerActionSucceeded(ControllerActionDetail),
ControllerActionFailed(ControllerActionDetail),
TaskerTaskStarting(TaskerTaskDetail),
TaskerTaskSucceeded(TaskerTaskDetail),
TaskerTaskFailed(TaskerTaskDetail),
NodePipelineNodeStarting(NodePipelineNodeDetail),
NodePipelineNodeSucceeded(NodePipelineNodeDetail),
NodePipelineNodeFailed(NodePipelineNodeDetail),
NodeRecognitionStarting(NodeRecognitionDetail),
NodeRecognitionSucceeded(NodeRecognitionDetail),
NodeRecognitionFailed(NodeRecognitionDetail),
NodeActionStarting(NodeActionDetail),
NodeActionSucceeded(NodeActionDetail),
NodeActionFailed(NodeActionDetail),
NodeNextListStarting(NodeNextListDetail),
NodeNextListSucceeded(NodeNextListDetail),
NodeNextListFailed(NodeNextListDetail),
NodeRecognitionNodeStarting(NodePipelineNodeDetail),
NodeRecognitionNodeSucceeded(NodePipelineNodeDetail),
NodeRecognitionNodeFailed(NodePipelineNodeDetail),
NodeActionNodeStarting(NodePipelineNodeDetail),
NodeActionNodeSucceeded(NodePipelineNodeDetail),
NodeActionNodeFailed(NodePipelineNodeDetail),
Unknown {
msg: String,
raw_json: String,
err: Option<String>,
},
}Expand description
Unified event enum for all framework notifications.
This enum encapsulates all possible event types emitted by the framework, providing
a type-safe way to handle notifications from Tasker, Controller, or Resource.
Each variant wraps a detailed structure containing relevant information about the event.
§See Also
EventSink- The trait for receiving these events.Tasker::add_event_sink- Registering an event sink.
Variants§
ResourceLoadingStarting(ResourceLoadingDetail)
Triggered when a resource starts loading.
ResourceLoadingSucceeded(ResourceLoadingDetail)
Triggered when a resource is successfully loaded.
ResourceLoadingFailed(ResourceLoadingDetail)
Triggered when resource loading fails.
ControllerActionStarting(ControllerActionDetail)
Triggered before a controller performs an action (e.g., click, swipe).
ControllerActionSucceeded(ControllerActionDetail)
Triggered after a controller action completes successfully.
ControllerActionFailed(ControllerActionDetail)
Triggered if a controller action fails.
TaskerTaskStarting(TaskerTaskDetail)
Triggered when a task begins execution.
TaskerTaskSucceeded(TaskerTaskDetail)
Triggered when a task completes successfully.
TaskerTaskFailed(TaskerTaskDetail)
Triggered when a task fails.
NodePipelineNodeStarting(NodePipelineNodeDetail)
Triggered when a node in the pipeline starts execution.
NodePipelineNodeSucceeded(NodePipelineNodeDetail)
Triggered when a node in the pipeline completes successfully.
NodePipelineNodeFailed(NodePipelineNodeDetail)
Triggered when a node in the pipeline fails.
NodeRecognitionStarting(NodeRecognitionDetail)
Triggered when image recognition begins for a node.
NodeRecognitionSucceeded(NodeRecognitionDetail)
Triggered when image recognition succeeds.
NodeRecognitionFailed(NodeRecognitionDetail)
Triggered when image recognition fails.
NodeActionStarting(NodeActionDetail)
Triggered before a node action is executed.
NodeActionSucceeded(NodeActionDetail)
Triggered after a node action completes successfully.
NodeActionFailed(NodeActionDetail)
Triggered if a node action fails.
NodeNextListStarting(NodeNextListDetail)
Triggered when processing the “next” list for a node.
NodeNextListSucceeded(NodeNextListDetail)
Triggered when the “next” list processing succeeds.
NodeNextListFailed(NodeNextListDetail)
Triggered when the “next” list processing fails.
NodeRecognitionNodeStarting(NodePipelineNodeDetail)
Trace event: Recognition node starting.
NodeRecognitionNodeSucceeded(NodePipelineNodeDetail)
Trace event: Recognition node succeeded.
NodeRecognitionNodeFailed(NodePipelineNodeDetail)
Trace event: Recognition node failed.
NodeActionNodeStarting(NodePipelineNodeDetail)
Trace event: Action node starting.
NodeActionNodeSucceeded(NodePipelineNodeDetail)
Trace event: Action node succeeded.
NodeActionNodeFailed(NodePipelineNodeDetail)
Trace event: Action node failed.
Unknown
Represents an unknown or unparsable event.
This variant is used as a fallback when the event message is not recognized or if JSON deserialization fails.
Implementations§
Source§impl MaaEvent
impl MaaEvent
Sourcepub fn from_json(msg: &str, details: &str) -> Self
pub fn from_json(msg: &str, details: &str) -> Self
Parses a notification message and detail string into a MaaEvent.
This function handles the conversion from the raw C-string values provided by the framework callback into safe, typed Rust structures.
§Arguments
msg- The notification type identifier (e.g., “Resource.Loading.Starting”).details- The JSON string containing event details.