カスタムアクション
一連のワークフローを一つのアクションとして登録することができます。 登録されたアクションは、カスタムアクションとして別のワークフロー内で呼び出すことができます。 カスタムアクションを呼び出し時に設定できる項目(パラメーター)を指定することもできます。 同じ作業をするが設定値が微妙に異なる一連のフローを登録しておくと便利です。
例)
- サイトにログインする(ログインIDとパスワードを設定可能にしておく)
- データをダウンロードする(対象のデータを設定可能にしておく)
設定項目
カスタムアクションでは、次の項目を設定できます。
設定項目 | 内容 | 例 |
---|---|---|
ワークフロー | カスタムアクションの元となるワークフローです。※新規登録時のみ設定可能です。 | 「AUTOROログイン」 |
カスタムアクション名 | カスタムアクションの名称を設定できます。 | 「ログインアクション」 |
説明 | カスタムアクションの説明を設定できます。 | 「AUTOROにログインします。」 |
アイコン | カスタムアクションのアイコンを設定できます。 | |
ワークフロー更新時の自動同期 | ワークフローの更新時、カスタムアクションの yaml を自動で同期するかどうか設定できます。 | |
パラメーター:パラメーター名 | パラメーター名を設定できます。設定しない場合は、カスタムアクション名の頭文字が表示されます。 | |
パラメーター:タイプ | パラメーターのタイプを設定できます。選択できるタイプはText とPassword です。 |
Text |
パラメーター:説明 | パラメーターのタイプを設定できます。 | 「メールアドレスを設定してください。」 |
カスタムアクションの元になるワークフロー
カスタムアクションのパラメーターとして使用したい部分は${}
で囲ってください。 以下の例では${email}
と${password}
がカスタムアクションのパラメーターとなります。
# ブラウザを開く
+open_browser_1:
action>: OpenBrowser
url: 'https://console.autoro.io/users/sign_in'
headless: true
# 文字入力
+type_text_1:
action>: TypeText
browser: +open_browser_1
selector: '.input-group--focused > .input-group__input > input'
text: ${email}
clearValue: false
ignoreError: true
# パスワード入力
+type_password_1:
action>: TypePassword
browser: +type_text_1
selector: '#app > div > div > div > div > div.card__text > form > div:nth-child(3) > div.input-group__input > input[type=password]'
password: ${password}
ignoreError: true
カスタムアクションの登録
カスタムアクションページに移動して、「カスタムアクション追加」をクリックします。
カスタムアクションとして使用するワークフローを選択してください。ワークフローを選択できるのは新規作成時のみです。 必要な項目を入力して、「SAVE」をクリックして登録を完了します。 パラメーターはワークフローから推測して表示されます。必要なパラメーターが設定されていなかったり、不要なパラメーターが表示されている場合は、パラメーターの追加・削除を行ってください。
カスタムアクションの情報
カスタムアクションの登録・編集・詳細ダイアログで「情報」をクリックすると、情報タブを表示することができます。このタブで所有組織や元になるワークフローなどの情報を確認できます。
カスタムアクションの使用
ワークフロー画面でCallCustomAction
を使うことで、カスタムアクションを呼び出すことができます。 詳しくはCallCustomActionのページを参照してください。
カスタムアクションの元になるワークフローを使ったカスタムアクションを使用する場合は、下記のようなワークフローになります。
# ログインアクション
+call_custom_action_1:
action>: CallCustomAction
id: ca_6e2c11788d1087992e28
params:
email: 'example@example.com'
password: password
meta:
version: '2020-06-18T08:32:05.000Z'
interface:
params:
email: Text
password: Password
output: Browser