ブログに人が来たらSlackに通知してくれるようにした

GoogleアナリティクスとSlackを使ってSlackに通知してくれるようにしました。
このブログを始めて一か月が経ちました。
なかなかに訪問者が伸びていますが、毎日数えるくらいしか来てくれていません。
なのでアクセスしてくれた人がいたら通知をして、
「あ!世界のどこかに私のブログを読んでくれている人がいる!」
って思いたいので(変態)
日々感動を味わえるようにしたいと思います。

手順

①Slackを用意する

「https://slack.com/intl/ja-jp」
Slackのアカウントを用意します。もう持っている人はそれでいいです。

②Google Apps Scriptでプロジェクトを作成する

「https://script.google.com/home」
上記URL遷移先の上左の「新規プロジェクト」をクリック。
ログインしてない方はGoogleアナリティクスを使用しているアカウントで入った方がいいです。
そうしたらソースコードを入力する画面が出てきます。

③コードを入力

以下のコードをコピペしてください。
function myFunction() {
try{
//slack('start...');
var realTimeUser = getRealTimeUser()
Logger.log(realTimeUser);
if (realTimeUserNumber !== undefined){
//リアルタイムユーザー数が1以上の場合
slack(new Date() + '現在のユーザー数: ' + realTimeUserNumber);
}else{
//リアルタイムユーザー数が0の場合
//slack(new Date() + '現在のユーザー数: ' + 0);
}
}catch(e){
slack('error...');
}
//slack('end...');
}
function getRealTimeUser() {
return Analytics.Data.Realtime.get('ga:〇〇〇, 'rt:activeUsers').getRows();
}
function slack(message) {
const WebhookUrl = 'https://hooks.slack.com/services/XXXXX/YYYYY/ZZZZZ'
var payload = {
text: message,
link_names: 1
};
UrlFetchApp.fetch(WebhookUrl, {
method: "POST",
payload: JSON.stringify(payload)
});
}

④GoogleアナリティクスのビューIDを手に入れる

③で書いたコードのままでは動きません。
「ga:〇〇〇」の〇の部分にあなたのGoogleアナリティクスビューIDを入れる必要があります。
ビューIDはGoogleアナリティクスの設定にあります。

⑤WebHookのURL

もう一つだけ入力する必要があるものがあります。
「https://hooks.slack.com/services/XXXXX/YYYYY/ZZZZZ」
の部分です。
「https://team-name.slack.com/apps」にアクセスし、
「ncoming WebHooks」と検索をしたら、ハンドスピナーみたいなアイコンのAppが出てくるので
それをクリック。
どのチャンネルにメッセージを送るかなど設定をしたらURLが発行されます。
それをコードに貼り付けてください。

⑥ちゃんと動くかテスト

テストしてみましょう。
コード入力画面のメニューに再生ボタンアイコンがあるのでそれをクリック。
リアルタイムユーザーが1以上の場合、コードの設定などすべてうまくできていればSlackに通知が来るはず。
うまくいかない場合はもう一度見直してみましょう。
通知が来たらもうあとは簡単です。

⑦トリガーをセットする

コード入力画面のメニューに時計のアイコンがあるのでそれをクリック。
実行・・・myFunction
イベント・・・時間主導型、分タイマー、1分ごと
と設定し、保存
すると、1分ごとに書いたコードが起動されます。

⑧通知を確認

私が書いたコードはユーザーごとではありません。
同じユーザーがページに5分留まってくれていたら、通知は5通きます。
もっといい方法があるのでしょうが、今の私にはこれが精いっぱいです。
1分ごとに訪問者数をカウントして通知してくれます。
これでニヤニヤライフができます(変態)

⑨応用してみよう

ここまでできたらもう勝手が分かったはず。
訪問者がいるかどうかだけでなく、
異常にユーザー数が減少したときに通知が来るように、
逆に急増したときに、なんてカスタマイズもできちゃいます。
減少していたら、知らないうちにサーバーが落ちてブログが停止してしまっても通知で気づくことができます。
急増した時は誰かが不正行為を働いている可能性があることも通知で把握することができます。
たぶんもっともっと工夫・アイデア次第で便利になるはず。

⑨さいごに

分かりずらかったらすみません。
ここまで読んでくれてありがとうございました!
参考にしていただければ幸いです!

応援よろしくお願いします!!

ブログランキング・にほんブログ村へ
にほんブログ村

人気ブログランキング

Twitterもよろしくお願いします。広告をクリックしてくれたら泣いて喜びます。