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

sachin21's blog

技術メモブログ

Campfire,HipChat,IRCで処理を自動化するbot

便利

こんにちは、@sachin21です。

Github社がHubotというチャットサービス向けのbotのテンプレートを提供しています。

どんなことが出来るというと

@#{bot_name} ping
=> PONG

@#{bot_name} youtube Lang-8
=> http://www.youtube.com/watch?v=TrG5hjStNZo&feature=youtube_gdata

こんな風にメッセ送るor特定の文字列で処理が行われるので面白いことに色々使えそうです

うちの会社では導入したばっかりなのでmisawaという文字列に反応して返す、ということだけやってます〜。

導入手順

node.jsとredisが必要なのでインストールします

brew install node redis

hubotのインストール

Slackの場合

npm install hubot -g
hubot --create [path_name]
cd [path_name]
npm install hubot-slack --save
echo "web: bin/hubot --adapter slack" >> Procfile

でひと通りhubotのインストールが終わります

普通に起動する

./bin/hubot

or foremanで起動

foreman start

deploy

herokuへのdeployは

heroku create my-company-slackbot
heroku addons:add redistogo:nano
heroku config:add HEROKU_URL=http://soothing-mists-4567.herokuapp.com # deploy先URL
heroku config:add HUBOT_SLACK_TOKEN=dqqQP9xlWXAq5ybyqKAU0axG # Slackのtoken
heroku config:add HUBOT_SLACK_TEAM=myteam  # botを使いたいチーム名
heroku config:add HUBOT_SLACK_BOTNAME=slackbot # bot名 なんでもおk

git push heroku master
heroku ps:scale web=1

※herokuのaddonを使うのはクレジットカードの登録が必要です

チームの設定画面>intergrations>Hubotを追加したら各種環境変数の値が書いてあります

f:id:sachin21:20140317202926p:plain

後は./scripts/*.coffeeのファイルを編集するだけでbotが作れます。

こんな簡単にbotが作れるってすごいですね!!

便利。これから趣味で色々書いていこうと思います。

f:id:sachin21:20140317201057p:plain