Slack のリマインド機能 /remind がわかりづらいのでわかりやすくまとめた
Slack にはスラッシュコマンドという /xxxx と書いてコマンド xxxx を実行する仕組みがある。これに /remind があり、リマインダーを実現できるらしい。使い方を調べてみたが、既存の記事はわかりづらいので、自分にとってわかりやすいようにまとめてみた。
前半はリマインド概要、後半から具体例。
目的
やりたいことは以下の 2 つ。
- 自分自身に対して、
- 「~~時に~~する」「~~分後に~~する」みたいな 今日中の予定をリマインドしたい
- タスク管理したい。特にルーチンタスクを登録したい
これらの実現に絞って調べた。
リマインド概要
リマインドとは何か
リマインドとは指定時間後or指定時刻に指定メッセージを通知すること。事前に「~~時に~~というメッセージを表示しろ」と仕込んでおくことで実現する。
リマインドを実現するツールや機能はリマインダーと呼ばれる。
一番わかりやすいのは目覚まし時計。メッセージではなく音ではあるものの、事前に~~時に鳴るように設定しておけば、~~時に鳴った時に知らせてくれる。知らせてくれれば、思い出せる。
事前仕込みと通知。これがリマインド。
リマインドは何が嬉しいか
リマインドを導入すると「いったん忘れることができる」ようになる。その分、頭を本来の仕事に費やせる。集中できる。
たとえば 15 時から打ち合わせがあったとすると、忘れないよう「15時から会議、15時から会議」と頭で意識することになるが、これだと仕事に集中できない。リマインダーがあれば、14:50 くらいに「会議だぞ!」と表示するリマインドをセットしておくだけでいい。これだけで、14:50 に「会議だぞ!」と通知されるので思い出せる。それまでは、会議のことは一切意識することなく、仕事に集中できる。
予定失念を防止しつつ、集中も確保する。それがリマインドの意義。
Slack ではどうやってリマインドを行うか
本題。Slack ではどうやってリマインドを実現しているか。
以下のようなスラッシュコマンドを投稿すると、
/remind me メッセージ in 10 m
10分後に Slackbot から以下メッセージが届く。
Slackbot「あなたからのリクエストにより、リマインダーを送信します : “メッセージ”」
/remind コマンドはどこで投稿してもいい。
「/xxx」のようにスラッシュ始まりの文字列はコマンドであり、間違ってもメッセージとして投下されることはないから心配しなくてもいい。気兼ねなく投稿しよう。
Q: Slack を起動していなくてもリマインドされますか?
Ans: されません。
なので Slack のリマインドに頼りたければ、Slack は常に起動しておきましょう。
リマインドを設定する
ここから Slack の /remind の使い方例に入っていく。(基本n)と題して、計8個の例を紹介する。
(基本1) n秒後/n分後/n時間後にリマインドする
たとえば 10 秒、10分、10時間後だとすると。
/remind me メッセージ in 10 s /remind me メッセージ in 10 m /remind me メッセージ in 10 h
/remind me
はお決まりなので絶対に書くこと。
in
も必要なので書く。
秒分時の単位について s
や m
や h
が最も楽だろう。seconds
や second
も可能だが、あえて長い文字を打つ必要はあるまい。
(基本2) n秒後/n分後/n時間後にリマインドする(別パターン)
「メッセージ in 時間指定」の他に「in 時間指定 to メッセージ」という書き方もある。
/remind me in 10 s to メッセージ /remind me in 10 m to メッセージ /remind me in 10 h to メッセージ
ルーチンタスクを設定する
ルーチンタスクとは「定期的に実施するタスク(やること)」であり、日々の雑務や定型作業をルーチンタスクとして扱うと日々忘れずに消化できる。(ゴミ捨てなど些細なものも含めれば)人は一日に数十のルーチンタスクを抱えており、頭だけでこなそうとするとたいていやり忘れが生じるが、タスク管理すればこれを完全に防止できる。
……と前置きはこのくらいにして。ルーチンタスクを管理する方法は様々だが、リマインダーを使って「繰り返しのリマインド」をセットすることで実現する方法もある。
ここでは /remind を使って繰り返しのリマインドを行う例をいくつか取り上げる。
(基本3) 毎週xx曜日にリマインドする
以下は毎週水曜日 9:00 にリマインドする例。
/remind me メッセージ every wed
時刻指定がない場合は 9:00 固定となる。
曜日は wed など三文字表記が楽。
(基本4) 毎週xx曜日のhh:mmにリマインドする
以下は毎週水曜日 12:35 にリマインドする例。
/remind me メッセージ every wed at 12:35
時間は at (hh:mm)
のように指定する。しかしながら実は at は無しでもいける(次の基本5で取り上げる)。
(基本5) 毎週xx曜日とyy曜日のhh:mmにリマインドする
以下は毎週月曜日と木曜日の 8:30 にリマインドする例。
2 つ書いているがどちらを使っても良い。
/remind me メッセージ 8:30 every mon thu /remind me メッセージ every mon thu 8:30
リマインドの状況を確認する
(基本6) リマインド状況を一覧表示する
/remind list
を使うと、現在のリマインド状況を一覧で表示できる。また、ここから一部操作を行うこともできる。
表示内容と対応操作は以下のとおり。表示順もこのとおり。
- 今後の予定
- まだリマインドされていないもの
- 対応操作: 完了, 削除
- 繰り返しのイベント
- every で設定されたリマインド
- 対応操作: 削除
- 未完了の過去の予定
- リマインドされたが完了or削除or再通知していないもの
- 対応操作: 完了, 削除, 再通知(15分後/1時間後/明日), 全削除
- 完了
- リマインドされ, 完了操作もされたもの
- 対応操作: 削除
ただし 一度に10件までしか表示されない。ページネーションについては「次の10件を表示する」→「次の10件を表示する」→ …… 「残りを表示する」という具合に、10件ずつ辿っていく感じ。「前の10件を表示する」みたいな仕組みはない。大量のリマインダーを管理するにはいささか不便か。
リマインドの動作や挙動を試したい
(基本7) どのように通知されるかを試したい
以下は 1 秒後にリマインドを行う例。1秒はすぐに過ぎるので、事実上リマインドの動作確認になる。
/remind me in 1 s to 表示テストです
ただし 1 秒後ジャストにリマインドされるわけではなく、若干(数秒~十数秒くらいか)のタイムラグがある。
(基本8) 設定した繰り返しのリマインドが正しいか確かめたい
/remind を実行した後に設定内容が表示されるので、それを見て確かめる。
例1:
/remind me メッセージ 8:30 every mon thu
これを投稿すると「毎週月曜日と木曜日 8:30 に、あなたにこれをリマインドします : “メッセージ”」と表示される。これは期待通り。ただしい。
例2:
/remind me メッセージ 8:30 12:33 every mon thu
これを投稿すると「毎週月曜日と木曜日 8:30 に、あなたにこれをリマインドします : “メッセージ”」と表示される。これは正しくない。12:33 はどこに行った?
おそらく /remind は時刻の複数指定には対応していないのだろう。
……とこのような感じで、試しに投稿してみる → 設定結果を読んでみる、を繰り返して正しい書き方を覚えていくことになる。
参考資料
いずれも網羅的はあるものの、「~~したいだけなんだけど、結局どうすればいいの?」が少しわかりづらかったので、今回このような記事を書くことにした。