皆さんはSlackでどのようにチャンネル間を移動していますか?
command+k
? option+↑↓
? /open CHANNEL_NAME
?
上記の方法はいずれも Slackを開く
-> チャンネル移動
という2ステップを踏まなければいけません。しかし、どんなアプリを開いている時でも特定のチャンネルを一発で開くことが出来ます。そう、Alfredならね。
変更点(2015-03-10)
- チャンネル一覧を
slack
ではなくs
で開くよう変更 (workflow設定画面から変更可) - チャンネル一覧にトピックを表示するよう実装
- TODOに複数チーム対応を追加
依存環境
Alfredで様々なスクリプトなどを実行、インポートするためのPowerPackが必要です。これがない人は今すぐ買いましょう。使ってないならかなり損してます。本当に。
導入手順
以下のように、Workflowをダウンロードして、SlackのAPI Tokenを設定するだけ。
- Alfred-Slack-Channelsをダウンロードし、ダブルクリック
-
update slack channels YOUR_SLACK_API_TOKEN
とAlfredでタイプして、SlackのAPI Tokenを設定して下さい。YOUR_SLACK_API_TOKEN
の部分に入力すべきTokenはSlack APIドキュメントのAuthenticationセクションにあります。 - あとはAlfredで
s
とタイプするだけ。絞込み検索もできます。
チャンネル一覧はキャッシュしてるので、チャンネル名を変更したり、チャンネルが増減した時はまたupdate slack channels YOUR_SLACK_API_TOKEN
して下さい
実装方法
最初のupdate slack channels
でAPIを叩いてチャンネル一覧をキャッシュし(ruby)、選択されたチャンネル名をapplescriptでSlackの入力欄に自動入力しているだけ。
AppleScriptでかなり強引にやっているので、この辺は要改善(PR歓迎)
TODO
- 複数チーム対応
- チャンネル切り替え処理の改善
- チャンネル一覧キャッシュ更新の自動化
AlfredのWorkFlowを一般公開するのは初めてなので、不具合や手順の抜けがあればお気軽にコメント下さい。