導入でつまずいたので、記事で残します。
環境とインストールしておくツール
- windows 10
- git (version 2.6.4.windows.1)
- node.js (v5.2.0)
git は必須ではないですが、git bashから構築及び実行をしているため挙げました。
git と node.js については公式配布物から最新版をインストールでよいです。
当該環境ではインストーラによる導入をしています。
git : https://git-scm.com/
node : https://nodejs.org/
Hubot を召喚しよう
Hubot プロジェクトの作成には、公式ドキュメントが大きな力になります。
https://hubot.github.com/docs/
召喚例として導入時の内容を以下に記述します。
環境を整えたら、まずは git bash を起動して node および npm が使えることを確認します。
$ node -v
v5.2.0
$ npm -v
3.5.2
npm のバージョンが確認できたら、Hubotのジェネレータをインストールします。
$ npm install -g yo generator-hubot
ここまでできたら、いよいよ召喚の議を行います。
召喚先のプロジェクトフォルダを作成し、Hubotをインストールします。
$ mkdir myhubot
$ cd myhubot
$ yo hubot
これでhubotが降臨します。
降臨中に Owner, Bot name, Description, Bot adapter の4つを聞かれるので回答します。
前者3つは自由回答でかまいませんが、adapter は slack と回答しましょう。
そうすることで slack 向けの初期設定がされます。
降臨後はコマンドで ./bin/hubot を実行し、対話を試みます。
対話では Bot name で決めた名前でよびかけます。
以下は Bot name を myhubot とした場合の対話例です。
$ bin/hubot
myhubot ping
myhubot> PONG
myhubot が PONG を返したので対話成功です。
インストールできたと言えます。
各コマンド実行の際に yeoman が不足しているなどの警告があれば適時インストールしてください。
自分の場合、(タイミングは忘れましたが)yeoman-doctor が欲しいと言われたので npm でインストールしました。
$ npm -g install yeoman-doctor
Hubot を Slackに呼ぼう
Slack に呼ぶ方法は以下を参考にしました。
https://www.seeds-std.co.jp/seedsblog/2125.html
Slack の Costom IntegrationページでHubotを召還する準備をします。
準備は2つです。
- Hubotを降ろすBotアカウントを追加
- API Token を控える
Botアカウントを追加できたら、Slackでの対話をしましょう。
以下を実行して、Hubotを起こします。
xxxxxxxxxxxxxxx には、先ほどのAPI Token を置換して実行ください。
$ HUBOT_SLACK_TOKEN=xxxxxxxxxxxxxxx bin/hubot --adapter slack
無事実行できたら、Hubotを降ろしたアカウント宛に ping します。
PONG をリプライされれば対話成功です。
導入はじめの手続きは以上です。
今は script ディレクトリに 対話例のスクリプト example.coffee があるので、いろいろと試して遊んでこの後を考えてます。
また、実際に運用する場合はローカルではなく heroku などを使うことになるかと思います(が、まだ試していません)。
参考
http://qiita.com/osamunmun/items/617fe116f89cd02d4913
http://qiita.com/kmdsbng/items/fdc069048b5f0d07295e
http://memo.sanographix.net/post/88371442780