5
4

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

Macにdirectの開発環境daabを構築してみる

Last updated at Posted at 2017-07-25

MacBook買いたてで全然慣れません・・・
チャットボット作成のため会社で導入しているdirectのボット開発フレームワークであるdaab環境を構築してみます。

#daabって?
daabディベロッパーサイト参考です。
チャットツール「direct」のチャットボットを開発するためのフレームワークでGithub社のhubotを拡張させたものです。

#事前の準備
##daabツールをインストール

terminalコマンド
$ npm install -g daab
出力ログ
/Users/take/.nodebrew/node/v8.1.2/bin/daab -> /Users/take/.nodebrew/node/v8.1.2/lib/node_modules/daab/lib/daab.js

> websocket@1.0.23 install /Users/take/.nodebrew/node/v8.1.2/lib/node_modules/daab/node_modules/websocket
> (node-gyp rebuild 2> builderror.log) || (exit 0)

  CXX(target) Release/obj.target/bufferutil/src/bufferutil.o
  SOLINK_MODULE(target) Release/bufferutil.node
  CXX(target) Release/obj.target/validation/src/validation.o
  SOLINK_MODULE(target) Release/validation.node
+ daab@0.1.6
added 20 packages in 13.159s

インストールできたようなのでhelpコマンドが通るか確認してみます。

terminalコマンド
$ daab help
出力ログ
  Usage: daab [options] [command]


  Commands:

    init        setup the daab environment.
    login       login as a bot account.
    logout      logout from the service.
    run         run the daab. (Ctrl-C to stop)
    start       run the daab as a deamon.
    stop        stop the daab deamon.
    deploy      upload the server.
    invites     show and accept a domain invite.
    help [cmd]  display help for [cmd]

  Options:

    -h, --help     output usage information
    -V, --version  output the version number

大丈夫そうですね。

##ボットの作成
ボットディレクトリを作成し作成したmybotディレクトリに移動します。

terminalコマンド
$ mkdir mybot && cd $_

daab環境を初期化します。

terminalコマンド
$ daab init
出力ログ
Initialized empty Git repository in /Users/take/mybot/.git/
remote: Counting objects: 284, done.
remote: Total 284 (delta 0), reused 0 (delta 0), pack-reused 284
Receiving objects: 100% (284/284), 501.80 KiB | 465.00 KiB/s, done.
Resolving deltas: 100% (114/114), done.
From https://github.com/lisb/daab-starter
 * branch            master     -> FETCH_HEAD
 * [new branch]      master     -> daab-starter/master
daab initialized.

##directへのログイン
directに存在するアカウントをボットとして動作させるためにdaabからログインさせます。

terminal
$ daab login
Email: loginid@bot.email.com
Password: *****
logged in.
terminal
daab run
> websocket@1.0.23 install /Users/take/mybot/node_modules/websocket
> (node-gyp rebuild 2> builderror.log) || (exit 0)

  CXX(target) Release/obj.target/bufferutil/src/bufferutil.o
  SOLINK_MODULE(target) Release/bufferutil.node
  CXX(target) Release/obj.target/validation/src/validation.o
  SOLINK_MODULE(target) Release/validation.node

> fsevents@1.1.2 install /Users/take/mybot/node_modules/fsevents
> node install

[fsevents] Success: "/Users/take/mybot/node_modules/fsevents/lib/binding/Release/node-v57-darwin-x64/fse.node" already installed
Pass --update-binary to reinstall or --build-from-source to recompile
npm notice created a lockfile as package-lock.json. You should commit this file.
added 383 packages in 16.704s
[2017-06-28 00:44:48]  WebSocket opened.    
[Wed Jun 28 2017 00:44:49 GMT+0900 (JST)] INFO hubot-redis-brain: Discovered redis from REDIS_URL environment variable

mybotディレクトリ配下はこうなってます。
Kobito.BtutxV.png

##directでボットに話しかけてみる
「ping」と話しかけて「PONG」と返ってきたら成功です。
Kobito.HMv6e7.png

繋がってますね。

5
4
5

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
5
4

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?