dialogapi
は、シナリオのアップロードやコンパイル、そして転送といった画面操作を、コマンドラインから行うツールです。
さらに、dialogapi
はボットのテスト機能も提供しており、シナリオのデプロイからテストまでの一連のプロセスを自動化することができます。
これにより、開発者はシナリオの作成に集中できるようになります。
コマンドについての詳細は、こちらをご覧ください。
SUNABA開発環境ではテスト機能のみご利用になれます。
事前準備
サンプルデータをもとにdialogapi
のインストールと設定を行います。
- バージョン 3.7 以上のPythonをインストールします。
pip
でdialogapi
をインストールします。1$ pip install git+https://github.com/docomo-dialog/dialogapi- サンプルデータをGithubからクローンします。
1$ git clone https://github.com/docomo-dialog/dialogapi.git
- 自然対話サーバに任意の名称で空のプロジェクトを作成します。
- クローンしたサンプルデータの
sample/da
ディレクトリに移動します。1$ cd dialogapi/sample/da dialogapi
の動作を確認します。
以下のコマンドを実行し、実行結果に上述で作成したプロジェクト名が出力されれば動作確認完了です。
※実行前に
YOUR_xxx
の部分をご利用の環境に合わせて変更してください。
(YOUR_HOST
はドメインのみ指定してください)
また、必要に応じてconfig.yml
のservers
を変更してください。123$ USER=YOUR_USER PASSWORD=YOUR_PASSWORD HOST=YOUR_HOST PROJECT=YOUR_PROJECT python -u -m dialogapi.main project list --config config.yml --server TestServerid name754 (YOUR_PROJECT)
プロジェクトのデプロイ
サンプルデータをもとに、2つのボット(hellobot
、qbot
)で構成されるプロジェクトを自然対話サーバにデプロイします。
- クローンしたサンプルデータの
sample/da
ディレクトリに移動します。1$ cd dialogapi/sample/da - プロジェクトをデプロイします。
以下のコマンドを実行します。
※実行前にYOUR_xxx
の部分をご利用の環境に合わせて変更してください。12345678910111213$ USER=YOUR_USER PASSWORD=YOUR_PASSWORD HOST=YOUR_HOST PROJECT=YOUR_PROJECT python -u -m dialogapi.main project setup --config config.yml --server TestServer --project TestProjectAdding bot (YOUR_PROJECT)_QBot ... doneUploading AIML qbot/qbot.aiml ... doneCompiling bot (YOUR_PROJECT)_QBot ... doneTransfering: bot (YOUR_PROJECT)_QBot ... doneAdding bot (YOUR_PROJECT)_HelloBot ... doneUploading AIML hellobot/hello.aiml ... doneUploading Set hellobot/hello.set ... doneUploading Map hellobot/hello.map ... doneUploading Config hellobot/hello.config ... doneUploading Property hellobot/hello.property ... doneCompiling bot (YOUR_PROJECT)_HelloBot ... doneTransfering: bot (YOUR_PROJECT)_HelloBot ... doneポイントデプロイ内容を変更(ボットの追加や削除など)する場合は、プロジェクト構成ファイル(config.yml
)を変更してください。
詳細はこちらを参照してください。
プロジェクトのテスト
サンプルデータをもとに、自然対話サーバにデプロイ済みの2つのボット(hellobot
、qbot
)のテストを行います。
- クローンしたサンプルデータの
sample/da
ディレクトリに移動します。1$ cd dialogapi/sample/da - プロジェクトのテストを実行します。
以下のコマンドを実行します。
※実行前にYOUR_xxx
の部分をご利用の環境に合わせて変更してください。12345678910111213$ USER=YOUR_USER PASSWORD=YOUR_PASSWORD HOST=YOUR_HOST PROJECT=YOUR_PROJECT python -u -m dialogapi.main project test --config config.yml --server TestServer --project TestProjectTesting bot (YOUR_PROJECT)_QBot- 「こんにちは」に対する名前・年齢質問テスト ... ok.- 「こんにちは」に対する名前・年齢質問テスト ... ok.- 「こんにちは」に対する名前・年齢質問テスト ... ok.- 「こんにちは」に対する名前・年齢質問テスト ... ok.- 「こんにちは」に対する名前・年齢質問テスト ... ok.- 「こんにちは」に対する名前・年齢質問テスト ... ok.- 「こんにちは」に対する名前・年齢質問テスト ... ok.- 「こんにちは」に対する名前・年齢質問テスト ... ok.Testing bot (YOUR_PROJECT)_HelloBot- 挨拶テスト ... ok.- NoMatchテスト ... ok.ポイントテスト内容を変更する場合は、テストファイルを変更してください。
詳細はこちらを参照してください。
プロジェクトのリセット
プロジェクトのボットを全て削除し、プロジェクトを作成直後の状態に戻します。
- クローンしたサンプルデータの
sample/da
ディレクトリに移動します。1$ cd dialogapi/sample/da - プロジェクトのリセットを実行します。
以下のコマンドを実行します。
※実行前にYOUR_xxx
の部分をご利用の環境に合わせて変更してください。123$ USER=YOUR_USER PASSWORD=YOUR_PASSWORD HOST=YOUR_HOST PROJECT=YOUR_PROJECT python -u -m dialogapi.main project reset --config config.yml --server TestServer --project TestProjectRemoving bot (YOUR_PROJECT)_QBot ... doneRemoving bot (YOUR_PROJECT)_HelloBot ... done