読者です 読者をやめる 読者になる 読者になる

しめ鯖日記

swift, iPhoneアプリ開発, ruby on rails等のTipsや入門記事書いてます

HubotでSlack用のBotを作る

まずは必要なツールをインストールします。

brew install npm
npm install -g hubot coffee-script yo generator-hubot

次に以下コマンドでプロジェクトを作成します。
質問は全てデフォルトを選択(Enter押下)しました。

mkdir -p test_bot
cd test_bot 
yo hubot

次はScriptを作成します。

vi scripts/test.coffee

test.coffeeを以下のようにします。

module.exports = (robot) ->
  robot.hear /hello/i, (msg) ->
    msg.send 'hello!!'

記述したスクリプトのテストをします。
以下コマンドでHubotを起動します。

bin/hubot

helloと打ってhello!!と返ってくれば成功です。

f:id:llcc:20160420223125p:plain

次にSlackのAdaptorを入れます。

npm install --save hubot-slack

SlackのAdaptorを使うようにProcfileファイルのコマンドをbin/hubot -a campfireからbin/hubot -a slackに直してください。

次はHerokuで動かします。
まずはHerokuでアプリを1つ作成します。

次にHerokuコマンドスクリプトをインストールします。

gem install heroku

以下のコマンドでHerokuへデプロイします。

heroku login
git init
git add .
git commit -m "Initial Commit"
heroku git:remote -a APP_NAME
git push heroku master

最後にSlackとHerokuをつなぎます。
以下URLからHubotを追加してください。

App Directory | Slack

SlackのTokenが発行されるのでHerokuの管理画面でHUBOT_SLACK_TOKENというキーとTokenをセットして下さい。

f:id:llcc:20160420224129p:plain

これでSlackでhelloと打つとhello!!と返ってきます。

f:id:llcc:20160420233530p:plain