貴様は今までにSlackで審議リアクションを付けられた数を覚えているのか?
— ぶてい (@buty4649) 2016年5月25日
A. 85
Slack APIでリアクションが取れることを知ったので実際にカウントしてみた。
最初 reactions.list で取ろうと思ったけど、これはリアクション した
リストなので目的が達成できなかった。。
仕方ないので、 search.messages を使うことにした。
queryに has:reaction
を付けるとリアクション付きのメッセージが検索できる。
APIのレスポンスに含まれる messages
にはなぜか、reactions
が含まれないので reactions.getに必要な情報を渡して、一覧を取る必要があった。
ここまで来て、ワンライナーでできないことがわかったのでrubyでシュッと作った。
実行すると↓みたいな感じになる。 長いので途中省略…
$ be ./summarize-reaction.rb message total: 374 reaction total: 653 reactions --------- eyes: 23 hai: 34 hachanhasiru: 1 hunya: 4 otsu: 3 clap::skin-tone-4: 1 bob: 1 interrobang: 1 muscle: 4 sabachi: 1 clapping: 2 innocent: 28 hachanhai: 2 usu: 2 hachansuman: 1 niceyoshimoto: 2 +1: 32 metal: 2 pray: 12 toilet: 3 closed_lock_with_key: 2 tada: 17 cina2: 1 shingi: 85 (snip)
追記: shingiが85でダントツトップであった。 次に多かったのがhaiで34。ダブルスコアを付けている。。
追記2:
Slackのヘルプを見ていたら、 :shingi:
の付けられたメッセージ数だけなら検索クエリに has::shingi:
をつけてあげればいける気がしてきた。
ただ、これで取得できるのはメッセージ数だけなのでリアクション数を取るには一手間加える必要がありそうだ。
https://get.slack.help/hc/en-us/articles/202528808-Searching-in-Slack