当社の取り組みのひとつとして、先日のkintone Café @ chiba みずいろ会館等でもご紹介させて頂いていますkintoneとLisBさんが提供するビジネスメッセンジャー「direct」との連携ですが、今回はその開発環境にフォーカスを当ててみたいと思います。
(directからkintoneの顧客情報にアクセスする例)
最近流行りのクラウドIDE「Cloud9(https://c9.io/)」を使って、「direct」用の拡張Hubotである「daab(ポータル)」の開発環境を3分で構築するというものです!(動画を撮ったらほぼ3分で出来たと言う結果論です)
daabは昨年12月15日にSDKが公開(無償)され、Hubotの拡張として Node.js上で動かすことができ、 Hubot従来機能に加えてdirectで使われる便利なスタンプ類(Yes/NO、セレクト、今ココ)や動画・画像といった添付ファイルを取り扱えることを特徴としています。
(「daab公式ページ」より)
一方、Cloud9はクラウドIDEですので、まずOSを選ぶことがありません。また、Hubotに必要なNode.jsやRedisサーバをカバーし、Linuxコマンドが利用できるターミナルを備えていることから、Hubotの開発には非常に適しています。
そこで、今回これらの組み合わせで「daab」の開発をスムーズに進めるために環境構築した時の内容をまとめたいと思います。はじめに実際に構築した時の動画です(解像度を上げて画面大きめでご覧ください)。
細かく書くと、Cloud9の初期プロジェクトである「demo-project」で、ターミナルからのコマンド操作を次のステップで進めています。※「share」設定については、事前に「Public」をオフにしていました
- Redisサーバの起動(
sudo service redis-server start
) - 今回は「Node.js」ディレクトリ配下に、daab用ディレクトリの作成(
mkdir daab&&cd daab
) - daab SDKのダウンロード(
curl -O https://direct4b.com/ja/bot/dev/samples/starter/starter-0.1.0.zip
)※バージョンは執筆時点のものです - daab SDKの展開(
unzip starter-0.1.0.zip
) - daabの起動(
./bin/hubot
) → daab用directアカウントの入力 → トークンの取得 - トークンを環境変数として書き込み(
echo export HUBOT_DIRECT_TOKEN={token} >> ~/.bashrc
) - 書き込んだ環境変数の有効化(
source ~/.bashrc
) - 再度daabの起動(
./bin/hubot
)
また、執筆時点のバージョンは
- – Node.jsが「v0.10.33」
- – npmが「v1.4.28」
- – Redis serverが「v2.8.4」
で、問題なくインストール出来ました。このSDKにはHubot定番の「ping.coffee」が標準搭載されていますので、directのトークにdaabを参加させて「ping」で確認します。
daabが「PONG」 を返してくれます。
やってみると実に簡単に終わりました!これで、あとは通常のHubotと同様「script」ディレクトリにCoffeeScriptやJavaScriptのスクリプトを配置してbotの開発を進めていくだけです(kintoneであればREST APIをリクエストするスクリプトを書くことで冒頭のような連携が実現できます)。
この組み合わせは、特にWindowsユーザーの方にとっては準備の手間が圧倒的に省力化され、敷居を下げることが出来ると思います。daab SDKは「daab ディベロッパーサイト」からダウンロードできますし、directもkintoneと同じように30日間無償トライアル(申込フォーム)が出来ますので、お試し頂ければと思います(^^)