Qiita Teams that are logged in
You are not logged in to any team

Log in to Qiita Team
Community
OrganizationAdvent CalendarQiitadon (β)
Service
Qiita JobsQiita ZineQiita Blog
Help us understand the problem. What is going on with this article?

HUBOTでSlackと連携する。(2回目)

More than 3 years have passed since last update.

1回目はコチラ

Slackと連携するための準備

  1. slackでBOT用のトークンを取得する
    • コチラを参考にして環境変数の設定までおこなう。
    • なお、起動時にbin/hubotを叩くので覗いて見たら中で npm installを実行してから、node_modules/.bin/hubotを起動するshellだったので、npm installの後にexport HUBOT_SLACK_TOKEN=xxxxxxxを入れて起動する直前でトークンを設定するようにしてみた。
    • これで、環境変数設定し忘れたりしなくなるかな。。。
  2. Slack側での確認
    • 後はhubotをinviteしたチャンネルで呼びかけて見たら反応してくれる!
  3. 単純につなぐまでは出来たので、後は好きな様にカスタマイズ!!!
    • いつも名前呼びかけるのもダルいので、特定のチャンネルに投稿されたら反応するようにする
  # scripts/norabot.coffee
  #Commands:
  #  msg - Return a message msg
  #
    module.exports = (robot) ->
      robot.hear /(.*)$/i, (msg) ->
        room = msg.envelope.room
        text = msg.message.text
        text_en = encodeURIComponent text
        if room == "test"
          msg.send room, "#{text} "
  • 上記はtestチャンネルに発言された内容をオウム返しする
  • 正規表現を覚えればなんか色々できちゃいそう。正規表現覚えなきゃ。。。
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away