LoginSignup
16
17

More than 5 years have passed since last update.

hubot-slack-timeline 使ってみた

Last updated at Posted at 2015-01-07

こちらの記事を拝見して、弊社の Slack でも試してみたいという声があったので導入してみました。

紹介されている npm を利用します。

すでに hubot-slack を利用して、Slack 上で Hubot が利用できる状態から始めました。
また、Hubot は Heroku 上で動かしています。

Slack Web API token を取得する

実はこれが一番はまりました。どの API token のことを言ってるのか分からなくて script ファイルと Slack のドキュメントと睨めっこしてしまった…
普段から API を弄ってるひとはすぐに分かるんでしょうけども、ずっと Integration の Hubot 用 token と間違えてました(;´Д`)

hubot-slack-timeline の README に以下の記述があります:

Note: You can generate Slack API token here https://api.slack.com/

https://api.slack.com/ にある "Slack Web API" のページで token を作成できます。

ss_2015-08-12-10-52-00_api_slack_com.png

複数チームに所属しているひとは、timeline を使いたい Team の token を取得しましょう。

生成した token を Heroku の環境変数 SLACK_API_TOKEN="YOUR_SLACK_API_TOKEN" に追加しておきます。

hubot-slack-timeline の有効化

今回は package.json に以下の2つのモジュールを追加しました。
request モジュールを利用していなかったため、ここでもちょっとハマリました。

  • "hubot-slack-timeline": ">= 0.1.0"
  • "request": ">= 2.51.0"

あとは external-scripts.json に "hubot-slack-timeline" を追加して、Heroku に deploy(push)します。

本題からは逸れますが、最近は Heroku の beta 機能である "Connected to GitHub" を利用して、GitHub 上の master ブランチに修正が merge されたときに自動で Heroku deploy されるようにしています。捗る。

Slack 上に #timeline チャンネルを作る

これはもちろん先にやっておいて構いません。
channel に Join する人は通知すべて OFF(Never)にするのをお忘れなく。topic に注意書きも書きました。

#timeline 始動

Hubot が正常に起動すると、すぐに timeline が動き始めます。

上手く動かない時は heroku logs でログを確認したり、環境変数の token を確認して heroku restart をしてみたりしてください。

hubot-slack-timeline にいろいろ設定が欲しかったり(特定ユーザ/チャンネルの除外とか)、 'via #channel' からその channel へジャンプしたいとか、ローカルで(動作確認のために)動かしたときは例外を吐かないで欲しかったりいろいろありますが、その辺は追々手を出していくかもしれません。

16
17
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
16
17