Q: what’s Hubot ?

A: SlackやTwitterなどさまざまなプラットフォームに対応するボット作成ツール「Hubot」
 

Hubot インストール

# Botの作成(Web)
https://.slack.com/apps/-hubot?next_id=0
https://.slack.com/services/

# パッケージのインストール
npm list -g yo generator-hubot
npm install -g yo generator-hubot

# Botの作成(Local)
cd
mkdir -p ~/botest
cd ~/botest/
yo hubot --owner= --name="" --description="" --adapter=slack

# Gitリポジトリの作成(必要であれば)
# git init
# git add .
# git commit -m "Initial commit"

# アダプター:none でとりあえず動かしてみる
botest> botest ping
botest> PONG
botest> botest help
...

# アダプター:hubotで動かしてみる
# ※先ほどのようにコマンドを受け付ける訳ではないので、Slackで動作確認すること
HUBOT_SLACK_TOKEN= bin/hubot --adapter slack
ping # ダイレクトメッセージで
@botest ping # チャンネルで

# サンプルスクリプト作成
echo "echo 'Hello World'" > scripts/hello.sh
chmod 755 scripts/hello.sh

# コントローラー作成
vim scripts/controller.js

# 再度実行
HUBOT_SLACK_TOKEN= bin/hubot --adapter slack

hello # ダイレクトメッセージで
@hello # チャンネルで

# デーモン化 /etc/systemd/system/ にユニットを作成
sudo vim /etc/systemd/system/botest.service
# ==================================================
[Unit]
Description = botest

[Service]
Type = simple
Restart = always
WorkingDirectory = /home/cloud/botest/
ExecStart = /bin/sh bin/hubot
ExecStop = /bin/kill $MAINPID
ExecReload = /bin/kill -HUP $MAINPID

[Install]
WantedBy = multi-user.target
# ==================================================

sudo systemctl daemon-reload
sudo systemctl status botest
sudo systemctl start botest
sudo systemctl enable botest
sudo systemctl is-enabled botest.service
カテゴリー: 技術

0件のコメント

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です