任务管理

更新时间:
复制为 MD 格式

任务调度模式

  • 触发方式:目前仅支持通过OpenAPI(详见 CreateTask)、MCP Tool(详见 发布和管理MCP Tool)创建任务调度服务型机器人

  • 任务分配模式。创建任务时支持手动指定机器人或自动分配机器人。

    分配方式

    指定机器人

    指定分组自动分配

    适用场景

    • 自动化流程中涉及的软件或系统有较为严格的登录状态限制。例如在使用IM软件时,在不同电脑上登录会触发一些软件本身的限制。

    • 自动化流程中涉及的软件或系统没有登录状态限制。例如自动化采集互联网公开信息。

    使用OpenAPI

    • 调用接口时需要AllocateMode=manu,同时指定RobotId。如果被指定的机器人处于“空闲”状态,则任务立刻开始执行;若被指定的机器人当前处于“运行中”状态,则任务开始在对应机器人上排队等待。

    • RobotId可在控制台中的服务型机器人列表页中获得,或通过API获取。

    • 调用接口时需要AllocateMode=auto,即可让系统自动在指定分组中查找适合的机器人,分配任务。

    • 您可以将服务型机器人划分到不同的分组中,每个分组会根据自己的等待队列情况分配任务。系统会根据任务优先级,找到空闲的机器人执行任务。如果当前没有空闲的机器人,则任务处于等待状态。

    使用MCP Tool

    • MCP Tool调用时需要指定机器人ID

    • 不支持

    最大等待运行的任务数量

    • 每个机器人的等待运行任务数量最大100个,超过则无法创建任务。

    • 每个分组的等待运行任务数量最大1000个,超过则无法创建任务

  • 任务执行顺序

    • 基本方式:通过设置任务优先级控制同一等待队列中的执行先后顺序。

      • 在同一等待队列,如机器人的等待运行的任务队列,分组的等待运行的任务队列。

      • 优先级可设置为1-100的正整数。排序规则为:首先按照优先级倒序(数字越大优先执行);其次相同优先级任务,按照任务创建的时间的先后顺序执行。

      • 如果机器人和分组都有等待运行的任务,则优先执行指定机器人的任务。

    • 高级方式:结合机器人分组进行任务控制

      • 例如将机器人分成2个分组:一个高优先级分组,包含少量机器人,保证高优先级任务的立刻执行;一个普通分组,包含大量机器人,按照任务优先级进行控制执行先后顺序。

任务状态

任务主要包括如下四种状态:

  • 等待运行:任务等待匹配机器人或正在特定机器人上排队时,显示处于等待运行的状态。

  • 正在运行:任务当前正在机器人上运行。

  • 正常结束:任务已经正常执行结束,即RPA应用顺利执行到最后,支持过程中机器人客户端没有抛出异常,但正常结束并不代表您的RPA应用完成了对应的业务结果目标。

  • 异常结束:任务执行时引擎报错,导致任务终止。可能的原因如应用执行到某个位置报错、停止任务等。

操作任务

除了创建任务之外,主要的操作包括:

  • 重新执行。重新执行是根据原本任务的条件复制出一个新的任务,原本任务的数据不受影响;只有终态(“正常结束”或“异常结束”)的任务可以重新执行。

    说明

    重新执行时所有任务参数不变,包括RPA应用的版本。例如第一个任务调用的RPA应用版本是0.1.0,在重新执行之前该应用发布了0.1.1版本,对此任务进行重新执行的时候,仍然调用的是0.1.0版本。

  • 删除。删除后任务将不可见,且无法恢复;“正在运行”的任务不可直接删除。

  • 停止。停止后任务状态变成异常结束,同时RPA服务端会通知服务型机器人停止当前执行的任务。

  • 调整优先级。仅支持对等待运行任务调整优先级。

任务结果和运行日志

运行结果

  • 适用场景

    • 对任务执行的时效性要求不高、或记录的内容较少的情况下使用

    • 对于时效性要求较高,需要记录的内容较多的场景,建议直接在自动化流程中调用您的业务接口进行结果上报。

  • 使用方式:需要在自动化流程中增加相关代码,使用方式和限制详见 task_result

运行日志

  • 使用方式:需要在自动化流程中增加相关代码,使用方式和限制详见 Logger

  • 更多关于机器人日志详见 机器人日志

任务回调

详见 任务