Subscribed unsubscribe Subscribe Subscribe

SlackとHubotを連携させて、HubotにPONGさせてみる

f:id:keiwt:20160826222643j:plain

HUBOT

slackでhubotを作成する

https://{{組織名}}.slack.com/messages/general/
↓
組織名の横の↓をクリック
↓
Configure Integrations
↓
All ServicesタブでHubotをadd
↓
Configured IntegrationsでHubotをadd

※Hubotはデフォルトではgeneralチャンネルのみにいます

Hubotをgeneral以外のチャンネルに招待する

/invite @招待するhubotの名前

※これだけではHubotは招待したチャンネルにいますが、アクティブにはなっていません

サーバー上でHubotをインストールする

$ npm install -g yo coffee-script generator-hubot
$ npm install hubot-slack --save
$ mkdir {{Hubotを作成するディレクトリ}}
$ cd {{Hubotを作成するディレクトリ}}
$ yo hubot

※今回、Herokuは使用しません
※yoがすでにインストール済みの場合はgenerator-hubotのみをインストールします
Bot adapterはslackにしなくてよいです

※権限のエラーが出る場合は

# chmod -R g+rwx /root /root/.config /root/.config/configstore {{Hubotを作成するディレクトリ}}

HUBOT_SLACK_TOKENの設定

echo 'export HUBOT_SLACK_TOKEN=XXXXXXXXXXXXXXXXX' >> ~/.bash_profile

Hubotを起動する

$ bin/hubot --adapter slack

※HUBOT_SLACK_TOKENはSlackのHubotのページにいけば分かります。

Hubotの起動確認

該当チャンネルでHubotがアクティブになっているか確認する
↓
{{Hubot名}} ping

※PONGと返ってくれば起動まで完了です

f:id:keiwt:20150330213250p:plain

次回はhubotを使用して、chatからサーバー上のコマンドを実行したり、APIを使用して、外部サービスとの連携をしてみます。