2020/9/9 (米国時間) に IFTTT Pro が発表されました。
以前からPower Automateでコネクターがなかったりすると時々利用していましたが、
- アクションが1個しか選べない
- 実行条件が設定できない
- Webhookの反応が遅い!!
という理由で実用にはあまり使えていませんでした。
今回のIFTTT Proでは、以下の点が改善・機能追加されているようです。
- Multi-step Applets
- Queries and conditional logic
- Multiple actions
- Faster Applet execution
これまでだと、IF + Then でトリガー+アクションな組み合わせしかなかったところに、条件分岐を追加したり、Query (用のアクションのようなもの)を追加できたり、複数のアクションを1つのApplet上で追加できたり、または実行速度が向上したということです。
今回は簡単に新しくなった部分をいくつか試してみましたので、ご紹介です。
条件分岐
IFTTT Proの条件分岐は簡単なJavascriptのコードを書くことで設定できます。
サンプルにも書いてありますすが、例えばトリガーしたときの時間、日付、またはトリガーデータに基づいた判定や、間に入れたクエリの結果を使って後続のアクションをON/OFFしたり、渡すデータを変えたりできます。
条件分岐を追加したい場合には、まずトリガーとアクションをセットしておきます。 (こうしないと追加できない)
フィルターを追加すると、コードエディターが表示されます。 ここではトリガー、アクションに付随する定義済みのオブジェクト、メソッドが表示されており、非常に簡単なコードでアクションを制御することもできます。
例えば以下のようなコードを書くと、Webhookで送られてくる値を見てアクション実行をスキップさせることができます。(デバッグモード的な利用)
if(MakerWebhooks.event.Value1 == "test"){ Twitter.postNewTweet.skip() }
または、アクションの入力 (ここではツイートの本文) を設定することもできます。
if(MakerWebhooks.event.Value1 =="test"){ const tweetbody ="これはテストツイートです"; Twitter.postNewTweet.setTweet(tweetbody) }
ということで、ここはコードが書ければある程度複雑にもできるという感じですね。
クエリ
クエリはアクションではない、各接続サービスに固有の情報取得系ステップです。
例えばスケジュールでトリガーするようなAppletで、その日のイベントを取得して、通知を出すようなものが作れます。
クエリはトリガーさえ追加すれば、作成できます。 サービスによってクエリに対応している/いない、またどんな情報取得ができるか が異なるので、実際に試してみるのがよさそうです。
クエリで取得した結果は、先ほどの条件分岐や、アクションで利用できます。例えば『毎日8時にカレンダーをチェック。カレンダーのイベントがあれば通知、なければ通知をスキップ』のような使い方ができます。
複数アクション
これまで単一アクションのみだったIFTTTですが、複数アクションに対応しました。通知であれば複数チャンネルに向けた送信。スマートホーム系なら、複数家電の操作などが1つのAppletでできます。
実行速度
特にWebhookが気になっていたのですが、Postmanから実行してみる限り数秒くらいでアクション実行まで進んでいるので、これなら実用に耐えそうです。
まとめ
ノーコードでトリガー→アクションが実行できたIFTTTの可能性が広がるようなPro版です。 ノーコードだったのをコードを追加できる自由度を追加したことで、これまでかゆいところに手が届かなかった/複数Appletで頑張っていたようなケースが救われるかなと思います。
また、中間のクエリによる情報取得に関してはサービス側でまだばらつきがあるので、もう少し拡充されるといいなと思います。
現在はキャンペーン?で自分で価格を設定できるIFTTT Pro。ちょっとだけ試してみるのもよいかもしれません。