RESTリクエストでロボットを実行した時のMC挙動

フォローする

概要

外部プログラムなどからMC上のロボットを実行する方法として、RESTリクエストを発行する方法がありますが、この時のリクエスト挙動は下記のような流れになります。

具体例

 1.  リクエスト元がRESTリクエストを実行する。
 2.  Tomcat上のMCがRESTリクエストを受け取る。
 3.  MCが実行可能なRSへロボットの実行命令を行う。
 ※実行可能なRSが存在しない場合、MCはリクエスト元へHTTP500エラーを返却する。
 4.  RS上でロボットが処理を開始する。
 5.  RS上でのロボットの処理が完了すると、MCはリクエスト元へ応答を返す(HTTP200)。
 ※MCからロボットを中断すると、そのタイミングでリクエスト元へ応答を返す(HTTP200)。
 6.  リクエスト元がRESTリクエスト実行結果を受け取る。

出力メッセージ

リクエスト元が受け取るMC(Tomcat)からの応答内容は、下記例のように所要時間の情報が含まれています。
※MCでロボット実行を中断した場合も同様の応答になります。
<例>XML形式での応答内容

<rest-result executionTime="<実行時間(単位ミリ秒)>">
 <values/>
</rest-result>

なお、実行可能なRSが存在しなかった場合は、下記のような実行エラーの応答が返ります。
※RSで同時に動作可能な最大同時ロボット数(Max concurrent robots)の上限を超えた場合の応答例です。この時、RESTリクエストしたロボットは動作していません。
<例>XML形式での実行エラー

<error>
 <general-error>
  There are no available slots on cluster '<クラスタ名>'
 </general-error>
</error>

区分 確認Ver
仕様 10.4.0.3