Twitter API v2 でのツイート定期取得を enebular 実行環境で試す

前回の記事で試した Twitter API v2 を使ったツイート取得を、最近リリースされたenebularのクラウド実行環境で定期的に実行してみます。

事前設定:ツイートを取得できるようにしておく

今回のフローには Twitter API v2 でツイート取得するための設定が必要なので、前回のこちらの記事に従って、まず取得できるようにしておきます。

Flow EditorからTwitter API v2でツイートを定期取得してみる

実行環境用のプライベートノードを準備

こちらの記事 を参考に、今回インポートするプロジェクトに実行環境用のプライベートノードをインストールします。

image

Discover Flow

image

今回の Discover Flow はこちらです。 → ldcp-twv2-regular-check-sample

image

こちらをインポートして、

image

Flow Editorで表示しましょう。

自分のアプリケーションの Bearer Token を設定

image

前回のツイート取得の記事 と同じように自分のアプリケーションの Bearer Token を用意しましょう。TwitterBearerToken と書かれた change ノードをダブルクリックしてプロパティ設定を表示します。

image

<BearerToken> と書かれている部分を、まるごと自分のアプリケーションの Bearer Token に置き換えて完了ボタンをクリックします。

image

デプロイボタンをクリックして設定を反映させます。

これで、準備は完了です。

動作テストをしてみる

デプロイ後に動作テストをしてみましょう。

image

このような名前の inject ノードがあるので、ボタンをクリックしてみます。

image

この結果はこちらの debug ノードで出力しています。

そしてツイートのほうは、適度に更新されてチェックしやすい @nhk_news のアカウントの情報を取得しています。タイミングによっては、直近 15 分で何も更新されないこともあるので、その場合は実際にツイートされるのを待ってから取得してみましょう。

image

デバッグタブでは、このように取得された直前 15 分のツイート取得が見られます。 TypeError: Cannot read property 'lcdpNode' of undefined というのは、今後実行環境で動かすときに必要な設定がないエラーで、このように手動テストでは気にする必要はありません。

無事に動作確認ができたので、Flow Editorを終了します。

クラウド実行環境の作成

このフローを定期実行するenebularクラウド実行環境で動かします。下記の記事をベースに進めます(2022年4月時点の情報)。

新リリースのenebularクラウド実行環境の使い方 | enebular blog

image

まず実行環境を作成します。

image

この実行環境にフローをデプロイします。

image

設定でスケジュールトリガーを ON にして 毎時 15 分の実行にします。まず、0・15・30 をクリックします。

image

スクロールして 45 もクリックするのを忘れないようにします。

image

設定できたら「毎15」になっています。

image

設定を保存して、あとは実行されるのを待ちます。

ログの確認

image

15分ごとのスケジュールが数回実行されるのを待ちます。次に、今回実行した実行環境のログを見てみます。

image

無事にログが貯まっていました。

image

今回のフローでは、こちらの debug ノードでシステムコンソールへの出力をしているので、ツイート取得の結果も確認できます。

image

出力先の項目で「システムコンソール」とチェックしています。

image

ログをスクロールして見てみると、取得時間のログと共に、ツイート結果も確認できました。1 時間待っていれば 3 ~ 4 回は実行され、@nhk_news であれば1度はツイートが取得できるはずです。

image

一旦スケジュールを止めたい場合には、先ほど設定したスケジュールトリガーを OFF にしておきます。

以上の手順で、Flow EditorからTwitter API v2でツイートを定期取得してみる 仕組みを、開発環境から実行環境に載せ替えて、スケジュール実行も行うことができます。

みなさんも今回の手順を参考に、Flow Editorの開発環境で作成したフローを実行環境に載せて、継続的に実行してみてください。