Zapier から AUTORO を起動する
概要
AUTOROアプリを利用して、ワークフローを起動する方法について説明します。
このチュートリアルのゴール
AUTOROアプリとGmail、Google Spreadsheetを使用したZapを作成して、AUTORO に作成したワークフローを起動させます。 具体的には、
「担当者が休暇中にGmailの特定の送信者から来たメールを新たに受信したら、その内容をAUTOROへ送信し、Slackのチャネルに通知して他の社員に対応を依頼するワークフローを起動する」
というケースを試してみます。
手順
- AUTORO にワークフローを作成
- メール情報一時保存用のGoogle SpreadSheetを準備する
- ZapierでZapを作成する
- メールを送信してZapを起動し、AUTORO のセッションを確認
1. AUTORO にワークフローを作成
AUTOROに、受信したメールの情報をslackに通知するワークフローを作成します。 設定画面をエディタモードに切り替えて、以下のyamlファイルを貼り付けてください。(※slackコネクションのプロバイダーや投稿先のチャネル名はご自身の環境に合わせて設定してください。slackの設定についてはドキュメントを参照) ワークフロー内では休暇予定の日付とワークフロー実行時点の日付を比較して、休日にワークフローが実行された場合、slackで他の社員に対応を依頼するメッセージを送信する処理をしています。 ここで作成したワークフローはZapierから起動するために使用します。
# 休暇予定の日付を取得
+get_time_1:
action>: GetTime
format: 'YYYY-MM-DD'
timezone: 'Asia/Tokyo'
relativeTime:
number: 3
unit: day
preposition: after
startEndOption: ''
# 変数に保存
+store_value_1:
action>: StoreValue
key: holiday
value: +get_time_1
# 今日の日付を取得
+get_time_2:
action>: GetTime
format: 'YYYY-MM-DD'
timezone: 'Asia/Tokyo'
# 変数に保存
+store_value_2:
action>: StoreValue
key: today
value: +get_time_2
# 今日が休日のとき
+if_1:
if>: ${today === holiday}
_do:
# テキストを作成
+text_1:
action>: Text
text: "<!here>\n本日休暇のため、以下のメールでお問い合わせ頂いている件の対応をよろしくお願いします。\n------------------------------------------------------------------------------------\n件名 ${subject}\n送信者 ${sender}\n本文 ${body}\n------------------------------------------------------------------------------------"
# Slackでメッセージを送信
+send_slack_message_1:
action>: SendSlackMessage
provider: slack_dummy1234
channel: '#営業部'
text: +text_1
send_select: false
response_message: false
meta:
display:
provider:
type: chip
label: 'Slack (AUTORO Inc.)'
icon: slack
2. メール情報一時保存用のGoogle SpreadSheetを準備する
ZapierのGmailアプリでは、Gmailから取得した情報を直接利用することができる外部アプリが制限されているため、一時的にメールから取得した情報をスプレッドシートに記録しておくことで取得したメール情報をAUTOROアプリに送信できるようにします。
以下の例を参考にスプレッドシートを新規作成します。 1行目に入力されている件名
, 送信者
, 本文
といった項目はあとでZapを作成する際に参照するために入力しておきます。
3. ZapierでZapを作成する
zap作成画面 にアクセスして、Creat Zapボタンを選択します。
検索ボックスに「Gmail」と入力し、表示されたGmailアプリを選択します。
Trigger Eventには、Gmailに事前に設定したフィルター条件で新しいメールを受信したことを検知する「New Email Matching Search」を設定します。
次にZapで利用したいGoogleアカウントを選択します。
Search StringにはGmailでどんな条件のメールを受信したら、トリガーを起動する対象にするのかを指定することができます。 メールをフィルタリングするための構文についてはGmailヘルプ に詳しく記載されています。
今回はfrom:shunsuke.fukasawa@autoro.io
と指定することでshunsuke.fukasawa@autoro.io
から送信されたメールを新たに受信したときにトリガーが起動するように設定します。
「Test Trigger」を押してTriggerのテストを実行します。テストに成功すれば以下のような画面になります。 これでGmailのTrigger設定は完了です。
次にGoogle Sheetsアプリを利用してGmailから取得したメール情報をスプレッドシートに記録するActionの設定を行います。 検索ボックスに「Google Sheets」と入力し、表示されたGoogle Sheetsアプリを選択します。
Eventには「Create Spreadsheet Row」を設定します。
Accountには事前に手順2で準備したスプレッドシートにアクセスできるアカウントを選択してください。
Actionには以下の画像のように事前に用意したシートにメールから取得した情報を記録できるように設定を行なっていきます。DriveとSpreadsheet、Worksheetには用意したシートの情報を選択し、件名、送信者、本文にはそれぞれメールのSubject、From、Bodyを紐付けます。
最後にAUTOROアプリを利用してワークフローを起動するActionの設定を行います。 検索ボックスに「AUTORO」と入力し、表示されたAUTOROアプリを選択します。
Eventには「Run Workflow」を設定します。
Accountには作成したコネクションを選択してください。
次に起動したいワークフローと、ワークフローに引き渡すパラメータの設定を行います。 今回は先ほど作成した「Zap Test Workflow」を起動したいワークフローとして設定します。 ワークフローに引き渡すパラメータの名前をsubject
、sender
、body
を指定し、それぞれの値にスプレッドシートの件名
、送信者
、本文
を設定します。
テストを実行します。テストに成功すれば以下のような画面になります。 これでAUTOROのAction設定は完了です。
これまでの手順でZapの構築を完了しました。 Zapを有効化するために、「Publish」ボタンを押しましょう。
4. メールを送信してZapを起動し、AUTORO のセッションを確認
先程の手順で作成したZapを起動して、ワークフローを実行してみましょう。 Zapを起動するためのトリガーとして、Gmailのメール受信という操作を設定しているので、 shunsuke.fukasawa@autoro.io
からメールを送信してみます。 メールを送信してから数分後に確認すると、Zapで設定したワークフローが実行されたのが確認できます。
slackにもメールの内容が投稿されていることが確認できました。
AUTOROアプリについて
利用できるTrigger
- Get All Workflows Zapierで設定したコネクションに紐づくプロジェクトのワークフローを全て取得します。
利用できるAction
- Run Workflow 指定したワークフローを実行します。