長らく「
PVをツイートするサービス」を利用させて頂いて来ましたが、
Integromat の
Basic プラン($9/mon) を使っていることもあり、なるべくそっちを使おうということで引っ越ししました。
特に難しいことはなくて、Google Analytics の APP を使って欲しいメトリクスを選択して取得したら、あとはいつものとおりにツイッターに流すだけです。
詳細
PV 以外にも色んな情報が取れますが、最終的に以下のようにツイートさせるようにしました。
それぞれ以下の Metrics を取得しています。
Pageviews | ga:pageviews |
1 Day Active Users | ga:1dayUsers |
Sessions | ga:sessions |
Avg. Time on Page | ga:avgTimeOnPage |
Avg. Time on Page は秒数が入ってるので、Tool の Set Variable オペレータで、「分:秒」テキストに変換しています。
{{toString(floor(round(2.`ga:avgTimeOnPage`) / 60))}}:{{toString(round(2.`ga:avgTimeOnPage`) % 60)}}
ハマったこと
Error 400 (badRequest): Selected dimensions and metrics cannot be queried together.
Metrics によっては、Dimensions と一緒に取得しなければいけないものがあるそうです。
なので、「metrics and dimensions」を選択して、「Dimensions」には適当に Date を指定するといいと思います。
どこにあるのかわかりづらい
ハマったというか、使いづらいなぁ・・・と思ったところです。
Metrics からはいろいろな情報が取得できるのですが、Integromat の UI から目的の要素を見つけるのが
クソ面倒でした。
月間PVの対応
「
PVをツイートするサービス」は、月初に先月の PV もツイートしていたのでそちらにも対応しました。
できたシナリオはこちら。
Google Atalytics の設定
まずは一月分のメトリクスを取得する必要があります。
期間の設定を「先月の1日0時」から「今月の1日0時」までにします。
以下のように計算しました。
先月の1日0時:
{{addMonths(parseDate(formatDate(now; "YYYY/MM"); "YYYY/MM"); -1)}}
今月の1日0時:
{{parseDate(formatDate(now; "YYYY/MM"); "YYYY/MM")}}
そして、取得するデータの数がデフォルトだと 10 になっているので、
一ヶ月分取得できるように
31 にしておきます。
月間PV数を計算
Google Analytics オペレータからは日毎の結果が入ってくるので、各日の PV 数を Aggregate で配列にして Iterator で Sum して、月間PVを算出しています。
(これもう少し簡単にかけると嬉しいな)
Notification
最後にツイートです。
PV数を桁区切りするようにフォーマットしてるくらいで、あとは普通にテキストを指定しています。
先月のブログズミのPVは {{formatNumber(12.result; 0; "."; ",")}} でした。
https://srz-zumix.blogspot.com/
最後に
Basic プラン使ってることもあって、オペレータ数とかあまり気にせず作りましたが、工夫すれば少し減らせると思います。(変数セットをツイートオペレータにベタ書きとか)
daily/monthly で実行するものなので、起動回数的にも消費リソースは少なくて済むはずなので、無料プランでも運用できるかな?と思います。
最後に、ながらくお世話になった「
PVをツイートするサービス」に感謝 m(_ _)m