概要
Azure Logic Appsはノーコードで色々なパーツを組み合わせることでアプリケーションを作れるAzureのサービスです。
実現したいこと
Twitterの横浜DeNAベイスターズ公式アカウントが試合がある日にその日のスタメンをつぶやいているので、つぶやいたらそのツイートをslackに通知することで仕事しながらその日のスタメンを知りたい
Twitterトリガーを使ってみるも失敗
Twitterトリガーというトリガーを使うことでツイートを検索して任意のアクションに渡すことができます。
なので最初に以下のようなアプリを作りましたが、これはうまくいきませんでした。
頻度の設定が効かない
頻度を短くして保存しても1時間の1回しかトリガーが発火してくれませんでした。
これは以下ドキュメントにあるTwitterトリガーの制約でそうなってしまうようです。
Frequency of trigger polls: 1 hour
Twitterトリガーではなく繰り返しトリガー+Twitterアクションを使う
1時間に1回だとほしかったリアルタイム性が落ちてしまい残念なbotになってしまいます。
そこでトリガーを時間指定で起動させられる繰り返しトリガーとし、トリガーのたびにTwitter検索のアクションを行うことで代替できないか試してみたところ、うまくいきました。
最終的に出来上がったアプリはこんな感じです。
デーゲームの場合もあるので繰り返しは日中帯〜夕方の間、5分ごとに起動するようにしました。
条件部分では発火時点から5分以内のツイートのみをslackに連携するような条件分岐しています。
これがないと前日のスタメンを延々と通知し続けてしまうためです。
Azure全般に言えることですが時刻はUTCとなるため注意が必要です。
これで最大5分遅延で、ベイスターズ公式ツイッターがスタメンをつぶやいたらslackに通知が来るように設定できました。
No responses yet