Typetalk用Botを作成する ~hubot入門その1~
環境 Mac OS X 10.10.5
備忘録です。 Typetalkとはメッセージのやり取りを行うチャットサービスです。
Botとは人間に変わって作業を定期実行してくれるプログラムのことで Twitterなんかでは定期的になにかしらつぶやくアカウントのことをBotと呼びます。
今回はGit hub が公開しているチャットBot作成フレームワークhubotを使用して、
- 9時に「おはよう」
- 5時半に「お疲れさまでした」
- 毎週月・木に「今日は燃えるゴミの日です」
と、Typetalkに書き込みをするBotをHeroku上に作成します。 今回はTypetalk上で書き込みをするとローカルで実行したBotが反応してくれるところまで。
ボットが使用するTypetalkアカウントを作成する
- ここからTypetalkアカウントを作成
- ここからbot用のアプリ設定
- アプリケーション名を入力して「登録」
- 「Client ID」と「Client Secret」をコピペ準備
- テスト用のトピックを作成しBotアカウントを招待
- トピックを開いたらURLが「https://typetalk.in/topics/数字」になるのでこの数字をコピペ準備
Macターミナルでhubot環境
Homebrewインストール
ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
node.jsとRedisインストール
brew install node redis sudo npm install npm -g
hubot yeoman generatorインストール
npm install -g yo generator-hubot
作業用ディレクトリ作成
mkdir bot cd bot
ひな形をyoemanで生成する
yo hubot
↑このコマンドを実行するといくつか質問が表示される
Bot adapterについて以外はEnter
Bot adapterで"typetalk"と入力。 ↓こんなかんじ。Bot nameも覚えとく。
? Owner namae <meado@mail.com> ? Bot name bottyan ? Description A simple helpful robot for your Company ? Bot adapter (campfire) typetalk
Redisサーバー起動
redis-server /usr/local/etc/redis.conf
hubot起動
bin/hubot
hubotが起動したら↑の質問で聞かれたBot name + コマンドでhubotを操作できるようになる。 今回の場合、
bottyan>
こんな感じに待機状態になるので
bottyan> bottyan help
でhelp内容が表示されたら成功
Typetalkとの連携をローカル環境で行う。
export HUBOT_TYPETALK_CLIENT_ID='クライアントID' export HUBOT_TYPETALK_CLIENT_SECRET='クライアントシークレットキー' export HUBOT_TYPETALK_ROOMS='トピックのID' bin/hubot -a typetalk
実際にTypetalkに "bottyan help"と入力してhelp内容が先ほどと同じように表示されたら成功!