自動化ツールMake(旧Integromat)を使ってTwitterに#FitBoxing2の投稿をしたらPOST requestを作成する
FitBoxing2 の記録をつけたいなーと思い Zapier で最初やろうと思ったけど POST request するのに月 2 千円は払えないなぁと思ってしまったのでMake(旧 Integromat)を使ってやってみました。
全体像
今の所運用してるワークフローはこんな感じ。
大まかな流れ
- 15 分に 1 度 5 件ツイートを取得する
- #FitBoxing2 のハッシュタグがあるツイートは次のステップへ進む
- ツイート ID が Data store に保存されていなかったら次のステップへ進む
- Router で処理を 2 つに分岐させる
- 1 つは Data store へツイート ID を保存する、もう一つは POST request を発行する
ツイートの取得
Zapier のようにツイートするごとにトリガーするようなものが無いので時間間隔を設定したり、特定の時間を指定したりしてトリガーを設定できます。
今回は 15 分に一回 5 件のツイートを取得するようなトリガーを設定しました。
またモジュール(Make では、丸いのがモジュール)間の点はフィルターが設定することができるので、次のステップへ進むのは画像つきで#FitBoxing2 のハッシュタグ付きツイートだけというフィルターを設定しました。
Date store にツイート ID が保存済みかどうか確認する
画像つきで#FitBoxing2 ありのツイートだけ すでに POST request を作成したトリガーとなったツイート ID は最後に Data store へ保存しているので、その ID が存在するかを確認しています。
ツイート ID が存在しなければ次のステップへ進みます。
Router で処理を 2 つに分ける
未処理のツイートだったら Data store への ID 保存を POST request の作成をやるように Router で処理を 2 つに分岐させています。
POST request する
ツイートの画像 URL とツイートした日時を特定の URL に POST します。 受け口は CloudRun を用意していてそこでは CloudVisionAPI を使って消費消費カロリーを抽出、pxela へ POST して記録するという流れを実装しています。
pixe.la
おわりに
これでフィットボクシングしたら Switch からツイートすることで消費カロリーの草を生やすことができるようになりました。
それにしてもMake(旧 Integromat)ってなんて検索しづらいんだ、、、ほとんど日本語の情報出てこないですね。