Slackでチャンネルの検索が名前だけでなくチャンネルの目的でもできるようになりました
はじめに
こんにちは。プロダクトグループのshoitoです。
Slackを使っていて 「Go言語を話題にしてるチャンネルあるかな?」 「コンテナを話題にしてるチャンネルは?」 とチャンネルを探したいシーンがあったと思います。
私は昨日気付いたんですが、2019年3月25日からSlackの検索画面にチャンネルタブが加わり、チャンネル名や目的でチャンネルを探せるようになりました。これは地味に嬉しい。
こちらの公式ブログでアナウンスされていました。 Introducing channel search: an easier way to find channels in Slack https://slackhq.com/introducing-channel-search-for-slack
これまでのチャンネルの探し方
これまでSlackの標準機能ではチャンネル名でしか検索できなかったため、チャンネル名に命名規約を決めて #misc-golang や #misc-container のような名前にし、チャンネル一覧から「golang」や「container」でチャンネル名に部分一致でヒットすることを期待して探していました。
独自に運用していたチャンネル検索用のスラッシュコマンド
やっぱりチャンネルの名前や目的、トピックでチャンネルを検索したいよなーと思い、独自にチャンネル検索用のスラッシュコマンドを作り、導入していました。
スラッシュコマンドとは https://get.slack.help/hc/ja/articles/201259356
スラッシュコマンドは、 Slack での特定のアクション に対応するショートカットとして機能します。 使い方は、メッセージフィールドにスラッシュコマンドを入力し、Enter キーを選択して送信するだけ。 ワンステップでタスクを実行できます!
Slack /ch Command https://github.com/shoito/slack-ch-command
/ch search 検索ワード とメッセージフィールドに入力すると、チャンネルリストを取得し、名前、目的、トピックに検索ワードが含まれているかどうかチェックします。 下の図はElasticsearchというワードで検索した例です。
こちらはSlackアプリケーションとして作っていて、AWS環境にデプロイしています。 作りはシンプルにAmazon API GatewayとAWS Lambda(Python)をAWS SAMで構築しています。
さいごに
チャンネルの数が数百、数千になるとなかなか目的のチャンネルを探すのも大変でしたが、今回のチャンネル検索機能がSlackで公式に提供されたおかげで楽になりそうです。 Slack /ch Commandは2ヶ月足らずで役目を終えたので供養しようと思います。