Concepts

Robot execution process

The robot will automatically execute the specified operation according to the preset trigger conditions, so that the repetitive work flow can be automated. The robot connects the data in the datasheet with various business systems and apps.

sequenceDiagram
    participant user as User
    participant event_manager as Event Manager
    participant action as Action
    user ->> event_manager: robot triggers event
    event_manager ->> event_manager: get action input data
    event_manager ->> action: action input data
    action ->> action: action excution process
    action ->> event_manager: action output data

In the interface IBaseAction:

  • endpoint(input: any): Promise<IActionResponse<any>> defines the action execution process

  • getInputSchema(): IJsonSchema defines the data structure of the action input parameter

  • getOutputSchema(): IJsonSchema defines the data structure of the action output parameter

  • getUISchema(): IUiSchema defines the action UI interface

getInputSchema(): IJsonSchema and getUISchema(): IUiSchema determines the UI interface of the robot action configuration.

How to write InputSchema, OutputSchema or UISchema?

InputSchema, OutputSchema and UISchema is JSON Schema. JSON Schema is a declarative language that allows you to annotate and validate JSON documents. Because the robot's form engine is based on react-jsonschema-form, so IJsonSchema and IUiSchema can refer rjsf documentation and our document.