Search
K

Control

制御系のアクションの一覧です。

If

概要

指定された条件により処理を分岐します。条件が真の場合、ブロック内に定義された処理を実行します。

パラメーター

名前
概要
condition
文字列
条件(変数利用可能)
${total > 90}

使用例

# 変数に保存
+store_value_1:
action>: StoreValue
key: total
value: 100
# 真のとき
+if_1:
if>: '${total > 90}'
_do:
# テキストを作成
+text_1:
action>: Text
text: '合格'

ForEach

概要

リストの各要素に対して一度ずつ処理を実行します。

パラメーター

名前
概要
iterable
配列
対象のリスト
["apple","orange","banana"]
element
文字列
要素を格納する変数名
fruit
withIndex
文字列
現在の繰り返し回数を格納する変数名。*変数名が設定されていない場合は、繰り返し回数を取得することができません。
count

使用例

# 各要素について繰り返す
+for_each_1:
for_each>:
fruit: ["apple","orange","banana"]
withIndex: count
_do:
# テキストを作成
+text_1:
action>: Text
text: "${count}回目の繰り返し\n${fruit}"

Loop

概要

指定した回数だけ処理を繰り返します。

パラメーター

名前
概要
times
数値
繰り返す回数
5

使用例

# 繰り返し
+loop_1:
loop>: 5
_do:
# テキストを作成
+text_1:
action>: Text
text: Hello

BreakIf

概要

Loop / ForEachブロックの中に配置します。 指定された条件が真の場合、繰り返し(Loop / ForEach)ブロックを抜けてブロック外の次のタスクに移動します。 繰り返しが入れ子になっている場合、一番内側の繰り返しブロックから抜けます。

パラメーター

名前
概要
condition
文字列
条件(変数利用可能)
${total > 90}

使用例

# 繰り返し
+loop_1:
loop>: 5
_do:
# 繰り返しを終了する
+break_if_1:
break_if>: ${i === 3}
# テキストを作成
+text_1:
action>: Text
text: '${i}回目'

Try

概要

ブロック内のエラーを捕捉します。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>: OpenBrowser
url: 'https://autoro.io'
headless: true
# XY座標でクリック
+click_point_1:
action>: ClickPoint
browser: +open_browser_1
x: 100
y: 100
selector: '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>: Text
text: 'Handle this error as you like!'

KillAttempt

概要

KillAttemptは、実行中のセッションを異常終了させます。実行されるとエラーステータスで完了となります。想定通り終了した場合もエラーステータスとなるので注意してください。
終了メッセージをつけることができるので、デバッグや条件により終了させたいときに使います。

パラメーター

*は、必須パラメーター
名前
概要
message
文字列
終了時に残すメッセージ
終了しました

アウトプット

無し

使用例

+kill_attempt_1:
action>: KillAttempt
message: 'この条件では、ワークフローが完了しないので終了させます。'

AddToQueue

概要

AddToQueueは、指定したワークフローをセッションキューに追加します。 paramsパラメーターを使えば、ワークフローにデータを渡すことも可能です。

パラメーター

*は、必須パラメーター
名前
概要
workflow_id*
数値
セッションキューに追加するワークフローのID
1234
params
オブジェクト
ワークフローに渡すデータ
{"url":"https://www.autoro.io/"}

アウトプット

タイプ
概要
Text
文字列
セッションキューのステータス
"running"

使用例

+add_to_queue_1:
action>: AddToQueue
workflow_id: 1234
params:
url: 'https://www.autoro.io/'

Wait

概要

次のアクションへ進むのを待機することができます。

パラメーター

名前
概要
time
数値
待機時間(ms)
100 (default)

アウトプット

無し

使用例

+wait_1:
action>: Wait
time: 100