はじめに
仕事仲間のNさんが密かに公開したhubot-line-trialがなかなかの優れものだったので使ってみた感じを紹介します。
hubot-line-trial
- GitHub
- https://github.com/notok/hubot-line-trial
- 導入方法
- https://liptonista.wordpress.com/2016/04/10/build-hubot-using-line-bot-api-trial/
- hubot-line-trialについて
- https://liptonista.wordpress.com/2016/04/11/hubot-line-trial-adapter/
LineのBOT API Accountを用意して、導入方法を見ながら進めていけば導入できると思います。
導入方法はメモ的なので適宜読みかえが必要です。
- Ubuntu以外の場合、heroku-toolbeltのインストール手順は各環境に置き換える
- herokuコマンドは
heroku create <appname>
で成功
自分も同じようにherokuにhubotをデプロイし、うまくいきました。
既にhubotを動かしているという方は以下を行えばよいと思います。(たぶん)
- npmでhubot-line-trialをインストール
- adapterにline-trialを指定
- linebotの各IDを環境変数に設定
- LINE管理画面でコールバック等を設定
hubot-line-trialで何ができるか?
チャットBOTのhubotの通知をlinebotに対して行えます。つまり、
- linebotの反応をhubotスクリプトで書けます
- 既存のhubotスクリプトを再利用できます**(しかもnpmを使って簡単に!)**
試しに自作hubotスクリプトを通知させてみた
自分で作ったhubotスクリプトを自分のlinebotアカウントで通知させてみました。
定番のおみくじです。コードは以下です。
module.exports = (robot) ->
robot.respond /おみくじ|omikuji/i, (res) ->
res.send res.random ['大吉', '吉', '凶', '凶', '大凶', '大凶', '大凶']
これをlinebotで通知させると次のようになります。
見事hubotがlinebotに通知してくれています。
linebot周りの処理を意識せずに、簡潔にコードを書けるというのも利点かもしれません。
npmでもってきたhubotスクリプトを通知させてみた
hubotスクリプトを使う利点として、既存のhubotスクリプトを再利用することが挙げられます。
以下が参考になると思います。
- http://qiita.com/hirosat/items/dd292490b12b6ce8bdbc
- https://github.com/hubot-scripts
- https://hubot-script-catalog.herokuapp.com/
今回は日本の天気を教えてくれるhubot-weather-jaを使わせていただきました。
導入は以下でできました。
npm install hubot-weather-ja
- external-scripts.jsonにhubot-weather-jaを追加
- package.jsonのdependenciesにhubot-weather-jaを追加
git add .
git commit -m 'Add weather-ja'
git push heroku master
自分でコード書かなくていいのが嬉しいです。
これをlinebotで通知させると次のようになります。
hubotスクリプトは他にもRedmine連携できるもの、GitHub連携できるものなどたくさんあるので色々なことが簡単にできると思います。
最後に
hubotを使っている方、使っていない方、ぜひhubot-line-trialを使ってみてください。
作者の方もきっと喜びます。