show log include yunabe

勉強したことの復習を兼ねて、IT関係(主にネットワーク/サーバ)についてまとめてます。

Hubotを他のSlackチームにも所属させる方法

概要

Hubotを自分のチームで作って、他のチームにも移植して欲しいという要望がありました。
トークン増やせばいいだけかなと思ったら、ポート等も変えなくてはいけず、手間取った部分があったため、今回は複数のSlackチームでBOTを動かすことをご紹介します。
hubotにインストール自体の方法はこちら↓
yunabe.hatenablog.com

複数のSlackチームにBOTを所属させる

BOTを作成したあとに一つのチームだけでなく、そのBOTを他のチームに所属させたい場合があります。
その場合複数のトークンを追記し、さらにやり取りをするポートを分ける必要があります。
※以下の例は上記のインストールで説明されているデーモン化がすでにできている状態のコンフィグです。

デーモン化しているプロセスの表示

forever list

デーモン化しているプロセスの終了

forever stop 0

BOTを他のSlackチームに所属させるためにコンフィグを追記

cd myhubot
※"myhubot"は適時変更
vi bin/hubot

set -e
npm install

#docomo-chat-API-Token
export HUBOT_DOCOMO_DIALOGUE_APPID="xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxx"
export HUBOT_DOCOMO_DIALOGUE_API_KEY="xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"


#Bot-A
export PATH="node_modules/.bin:node_modules/hubot/node_modules/.bin:$PATH"
export PORT=8081
export HUBOT_SLACK_TOKEN="xoxb-xxxxxxxxxxxx-xxxxxxxxxxxx-xxxxxxxxxxxx"
export PATH=$PATH:node_modules/.bin
forever start -c coffee node_modules/.bin/hubot --adapter slack

#Bot-B
export PATH="node_modules/.bin:node_modules/hubot/node_modules/.bin:$PATH"
export PORT=8082
export HUBOT_SLACK_TOKEN="xoxb-xxxxxxxxxxxx-xxxxxxxxxxxx-xxxxxxxxxxxx"
export PATH=$PATH:node_modules/.bin
forever start -c coffee node_modules/.bin/hubot --adapter slack

docomo-chat-API-Tokenについては今回の内容では不要です。次回以降にchat BOTを公開したときにご紹介致します。

export PORT=xxxx
それぞれ別のポートを指定
export HUBOT_SLACK_TOKEN="xoxb-xxxxxxxxxxxx-xxxxxxxxxxxx-xxxxxxxxxxxx"
それぞれ指定されたトークンを記載
export PATH=$PATH:node_modules/.bin
forever start -c coffee node_modules/.bin/hubot --adapter slack
それぞれの起動コマンドを追記

再起動

bin/hubot restart