チャットボットに乗換案内スキルを実装しよう

このチュートリアルでは、チャットボットに乗換案内スキルを実装します。

このチュートリアルは、「チャットボットを作ろう」が完了していることを前提としています。

乗換案内スキルを実装しよう

乗換案内スキルを担当するボットを作成します。

本チュートリアルでは、乗換案内の結果をGoogleマップで表示していますが、一般公開されている他のAPIと組み合わせることで、チャットボット上で乗換案内の結果を表示することも可能です。

ポイント

乗換案内を行うには、意図解釈エンジンによるスロットフィリングが必要になるため、スキルの実行中はBotSwitcherを使用して本ボットが優先して呼び出されるようにします。

作成手順

  1. ボット作成画面で「TransportationBot」という名前のボットを作成します。
  2. シナリオ設定画面で「<sraix>による呼び出し」の設定を「global」に変更します。
  3. 作成したボットに乗換案内スキルを記述したシナリオ(TransportationSkill.aiml)を登録します。
  4. 作成したボットのシナリオをコンパイルして転送します。

スキルコントローラに組みこもう

スキルコントローラに、乗換案内スキルを組み込みます。

作業手順

  1. スキルコントローラボットに、乗換案内スキルを持たせるシナリオ(TransportationSkillController.aiml)を登録します。
  2. スキルコントローラボットに、BotSwitcher(BotSwitcher.aiml)を登録します。
    ※すでに登録済みの場合、この手順は不要です。
  3. 作成したボットのシナリオをコンパイルして転送します。

動作を確認しよう

Webシナリオテストツールで動作確認します。
(Postmanをご利用になる場合は、Postmanのタブを押下してください)

WebシナリオテストツールPostman
  1. Webシナリオテストツールを起動します。
    シナリオテストツール
    Webシナリオテストツールの使用方法はこちらを参照。
  2. voice textに、「東京駅まで乗換案内してください」を入力し、Sendを押下します。
  3. レスポンスに「出発駅はどちらですか?」が設定されていることを確認します。
  4. voice textに、「横浜駅」を入力し、Sendを押下します。
  5. レスポンスに「横浜駅から東京駅まで乗換案内しますか?」が設定されていることを確認します。
  6. voice textに、「はい」を入力し、Sendを押下します。
  7. レスポンスにGoogleMapの検索結果が含まれていれば成功です。
  1. Postmanからシナリオ対話APIに、以下のリクエストを送信し、レスポンスが返ってくることを確認します。
    リクエスト(JSON)

    レスポンス(JSON)

  2. 以下のリクエストを送信し、レスポンスが返ってくることを確認します。
    リクエスト(JSON)

    レスポンス(JSON)

  3. 以下のリクエストを送信し、レスポンスにGoogleマップのリンクが含まれていれば成功です。
    リクエスト(JSON)

    レスポンス(JSON)