WATSON dialog-toolのチュートリアル（日本語超意訳）からDialog-toolの日本語化まで

WATSON APIが良くわからない人むけ、超日本語意訳シリーズ。
今回はWATSON [Dialog](http://www.ibm.com/watson/developercloud/dialog.html)です。

このDialogはいわゆるチャットbot的なものを作ることができる機能です。
ざっくりいうと会話フローを記載したXMLを食べさせると、JSONを使ったアプリを使ってチャットbotを作ることができるというもの。

XMLの仕様の説明が貧弱すぎてよくわかん！
という人のために、体で覚えるためのXML検証ツールがあります。それがDialog-toolです！
https://github.com/watson-developer-cloud/dialog-tool

![editor_image_b32b1935-1abf-45ed-8c38-9ab5d7399db1.png](https://qiita-image-store.s3.amazonaws.com/0/3168/d02afd48-1c84-ac56-9fb2-48fee0eb2304.png)

画面上部でXMLをUploadできます。で、画面の真ん中の四角を選ぶと、画面下部でWATSONとチャットをすることができます。

# このツール何？
このサンプルは画面上部にある「Work with Dialogs」の操作でDialogファイル（XML）をファイルUploadすると、画面下部のチャットモジュールでテストができるもの。

# 作り方
基本的にはRead Meのとおりにやればよいが、BlueMixはじめての人向けに簡単な解説を残す。
 
意訳バリバリの日本語解説。

* Getting started
    * はじめましょう
* Create a Bluemix account. Sign up in Bluemix or use an existing account. Watson services in beta are free to use.
    * BlueMixに登録してね。Watsonサービスのベータは無料です。Dialogは使いすぎない限りは無料です。
* Download and install the Cloud-foundry CLI tool.
　    * BlueMixにあるCF　CLIをインストールしてね。具体的には[ここ](https://github.com/cloudfoundry/cli/releases)のサイトにあるバイナリをインストールする。Windows64bitCPUだと、「Windows 64 bit」。インストーラーがついているのでめんどくさいことは一切ないよ！
* Edit the manifest.yml file and replace <application-name> with a unique name for your copy of the tool. The name that you specify determines the tool's URL, such as <application-name>.mybluemix.net. Do not use blank spaces in the name.
     * このサイトのファイルをダウンロードしてね。で、DLしたフォルダの中の manifest.yml を編集してね。アプリ名を書く場合は以下の赤字部分。
アプリ名は<application-name>.mybluemix.netというURLになるから、誰かが使っている名前だと失敗するよ。てか、アプリ名にはスペースいれんなゴルァ！

```properties
applications:
- services:
  - dialog-service
  name: <application-name  #これは適切な名前にかえること
  command: node app.js
  path: .
  memory: 128M
```

* Connect to Bluemix by running the following commands in the command-line tool: 
    * Windowsだと、コマンドプロンプトを起動して、cfコマンドを実行する。インストールされていると色々文字列が出る。インストールされていることを確認したら、BlueMixに接続して（1行目）、BlueMixにログインして（2行目）ね。

```csh
$ cf api https://api.ng.bluemix.net 
$ cf login -u <your-Bluemix-ID>
```

* Create the Dialog service in Bluemix by running the following command:
    * 以下のコマンドをコピペしてね。これで、あなたのBlueMixにDialog Serviceが登録・生成されるから。

```csh
$ cf create-service dialog standard dialog-service
```
 
* Push it live by running the following command:
    * コマンドプロンプトの作業ディレクトリをGitからダウンロードしたフォルダのルート（manifest.ymlを編集したところ）に移動して。で、以下のコマンドをコピペしてね。そうすれば、ダウンロードしたプログラムがBlueMixにUpload＆Installされるよ。

```csh
$ cf push
```

* こんなんでサンプルができます。Urlにアクセスすればきっと画面ができているはず。ちなみに、この時点だと日本語化けます。改修方法はまた今度。

```csh
http://登録されたアプリ名称.mybluemix.net/
```

# ソースの見方

改修をするにはソースを見ないといけない。でも、古くて政治まみれのボタンばかりつくっていた、化石のようなエンジニアでも大丈夫！
一般的な知識なので、参考文献が探すことができます。Googleがあればね！　
 

##　参考文献:
このへんのサイトの解説が今回のプログラムのベースとなっています。プログラムの素養があれば、Node.js+JADEの構造がわかる・・・はず。
http://bonk.red/articles/Express/express4.html

JADEについてはこっちのほうがわかりやすいかも
http://qiita.com/nowri/items/242bc8a5d94e85d33a1e


#　日本語化
日本語化してみましょう。
以下のことをすればそれっぽく日本語化できることがわかっています。ここでは基本だけ伝えるので後は自力でやってください。

* dialog-tool-master\views/layout.jadeのhtml(lang='EN')をhtml(lang='ja')に変える
* ダウンロードしたファイルがShift-Jis形式だった場合、UTF-8形式で保存しなおす　（Terapad.exeのファイル>文字/改行コードの指定保存が便利）
* cf pushでアップロード。
* サイトにアクセスする


それではよいWATSONライフを。