指定された条件により処理を分岐します。条件が真の場合、ブロック内に定義された処理を実行します。
名前 | 型 | 概要 | 例 |
condition | 文字列 | 条件(変数利用可能) | ${total > 90} |
# 変数に保存+store_value_1:action>: StoreValuekey: totalvalue: 100# 真のとき+if_1:if>: '${total > 90}'_do:# テキストを作成+text_1:action>: Texttext: '合格'
リストの各要素に対して一度ずつ処理を実行します。
名前 | 型 | 概要 | 例 |
iterable | 配列 | 対象のリスト | ["apple","orange","banana"] |
element | 文字列 | 要素を格納する変数名 | fruit |
# 各要素について繰り返す+for_each_1:for_each>:fruit: ["apple","orange","banana"]_do:# テキストを作成+text_1:action>: Texttext: ${fruit}
指定した回数だけ処理を繰り返します。
名前 | 型 | 概要 | 例 |
times | 数値 | 繰り返す回数 | 5 |
# 繰り返し+loop_1:loop>: 5_do:# テキストを作成+text_1:action>: Texttext: Hello
Loop / ForEachブロックの中に配置します。 指定された条件が真の場合、繰り返し(Loop / ForEach)ブロックを抜けてブロック外の次のタスクに移動します。 繰り返しが入れ子になっている場合、一番内側の繰り返しブロックから抜けます。
名前 | 型 | 概要 | 例 |
condition | 文字列 | 条件(変数利用可能) | ${total > 90} |
# 繰り返し+loop_1:loop>: 5_do:# 繰り返しを終了する+break_if_1:break_if>: ${i === 3}# テキストを作成+text_1:action>: Texttext: '${i}回目'
ブロック内のエラーを捕捉します。Tryブロック内でエラーを捕捉した場合、Tryブロックを抜けてブロック外の次のタスクに移動します。エラーオブジェクトは、errorObjectNameパラメーターで設定した変数に格納されます。Tryブロック内でエラーが捕捉されたかどうかは、IfタスクでerrorObjectNameに値が入っているかどうかをチェックすることにより確認できます。エラーオブジェクトを使って、エラーの種類によって異なるエラーハンドリングを実装することができます。実際の使い方については、使用例をご覧ください。エラーが捕捉されない場合は、ブロックのおわりまでいきます。
名前 | 型 | 概要 | 例 |
errorObjectName | 文字列 | エラーオブジェクトを格納する変数名 | error |
{"message": "Error: something went wrong.", // エラーメッセージ"task_name": "+try_1+sub_try+click_point_1", // エラーが発生したタスクの名前"attempt_id": "2611", // エラーが発生した試行のID"session_time": "2020-08-24T22:16:45+09:00" // エラーが発生したセッションの開始時刻}
# TRY+try_1:try>: error_do:# ブラウザを開く+open_browser_1:action>: OpenBrowserurl: 'https://tutorial.co.jp/'headless: true# XY座標でクリック+click_point_1:action>: ClickPointbrowser: +open_browser_1x: 100y: 100selector: 'body > div.wrapper > section.module.divider-bottom.pt-5 > div > div.row.pt-5 > div > not > found'confirm: false# 真のとき+if_1:if>: ${error}_do:# 真のとき+if_2:if>: ${error.message.includes('Anchor point not found')}_do:# テキストを作成+text_1:action>: Texttext: 'Handle this error as you like!'
KillAttemptは、実行中のセッションを異常終了させます。実行されるとエラーステータスで完了となります。想定通り終了した場合もエラーステータスとなるので注意してください。
終了メッセージをつけることができるので、デバッグや条件により終了させたいときに使います。
*は、必須パラメーター
名前 | 型 | 概要 | 例 |
message | 文字列 | 終了時に残すメッセージ | 終了しました |
無し
+kill_attempt_1:action>: KillAttemptmessage: 'この条件では、ワークフローが完了しないので終了させます。'
AddToQueueは、指定したワークフローをセッションキューに追加します。 paramsパラメーターを使えば、ワークフローにデータを渡すことも可能です。
*は、必須パラメーター
名前 | 型 | 概要 | 例 |
workflow_id* | 数値 | セッションキューに追加するワークフローのID | 1234 |
params | オブジェクト | ワークフローに渡すデータ | {"url":"https://www.roboticcrowd.com/"} |
タイプ | 型 | 概要 | 例 |
Text | 文字列 | セッションキューのステータス | "running" |
+add_to_queue_1:action>: AddToQueueworkflow_id: 1234params:url: 'https://www.roboticcrowd.com/'