IFTTTのディレイ機能を使って、ブログ投稿のツイートを一定時間を空けて投稿するアプレットを作りました。
トリガー発動とアクション実行の間にディレイを作る
IFTTTでトリガー発動とアクション実行の間にディレイを作る方法について書きました。
これを使って、ブログを投稿したら3時間後にリンクをツイートするアプレットを作ってみました。
もともとIFTTTでBufferを使って「フィードが更新されたらツイートする」というアプレットを作っていました。
しかしこのアプレットは更新されるとすぐにアクションが実行されるので、タイミングによっては投稿した瞬間に実行されるJetpackのパブリサイズ共有機能の自動ツイートと間が開かず連投になってしまうので、あまり意味がない状態になっていました。
下の例では間隔が約40分だけど、もっと短くなることもあります。
iPhoneでタスクを自動化するためのいろいろな方法【ショートカット/IFTTT/Google アシスタント】 https://t.co/M04kLJaV6h
— はらだよしのり (@yoshi_h21) September 26, 2021
【最新記事】iPhoneでタスクを自動化するためのいろいろな方法【ショートカット/IFTTT/Google アシスタント】 https://t.co/c3BS01BAQy https://t.co/ivpktaD44Y
— はらだよしのり (@yoshi_h21) September 26, 2021
これを解決します。
ひとつめのアプレット
トリガーはRSS Feed > New feed item で自分のブログのフィードURLを入れます。
アクションはWebhook > Make a web request で、このように入力します。
URLは元の記事で紹介したとおりに入力。
イベント名はrssdelayとして、t(時間)を180分=3時間後に設定しました。
Bodyに次のアプレットに引き継ぐ値(3つまで)を設定します。
右下のAdd ingredientボタンを押すとRSS Feedから使える値を見られます。
(アプリではAdd ingredientボタンは表示されません。Web版を使ってください。)
ここでは
- Value1:EntryTitle(記事タイトル)
- Value2:EntryUrl(記事URL)
- Value3:FeedTitle(ブログタイトル)
と設定しました。
ふたつめのアプレット
トリガーはWebhook > Recieve a web request で、イベント名(ここではrssdelay)を入力します。
アクションはTwitter > Post a tweet を選択して、このように入力します。
さきほどひとつめのアプレットで設定したValue1〜3を変数として使用できるので、これを使用してツイート内容を設定します。
これで完成です。
実行
ブログ記事を書いて投稿しました。
こちらのツイートはJetpackのパブリサイズ共有機能による自動ツイート。
セゾンカードのお月玉に当選した https://t.co/0O2niiQuq9
— はらだよしのり (@yoshi_h21) November 24, 2021
その後、
【最新記事】 セゾンカードのお月玉に当選した | ハミングスタジオブログ
https://t.co/AvBxhjQBF2— はらだよしのり (@yoshi_h21) November 24, 2021
このように自動でツイートされました。
ちゃんと3時間後になっています。