2016-04-27 10 views
3

私はApi.aiコンソールでいくつかの例を試しています。エージェントがユーザークエリまたはコンテキストから抽出した値を使用して応答する例があります。しかし、実行されたアクションの出力を使用して形成されたレスポンスを表示する方法はありますか?例えばApi.aiで実行されたアクションの結果に基づいて動的な応答を得るにはどうすればよいですか?

-

ユーザー:私のピザの注文が確認されていますか?

処置:チェック注文状況

応答:はい、それは(または「いいえ、それはありません」)を確認しています

答えて

0

はい、あなたがウェブフックでこれを行うことができます。

通常、あなたは、あなたが考え意図持つことができ、あなたのDB内の注文のステータスを救う:

  1. は、ユーザーのクエリを理解する(私のピザの注文が確認されている)
  2. 意図があなたのwebhookを呼び出す
  3. Webhookはステータスの順序を返します。
  4. Api.aiは答えを出します。

あなたがspeech応答を返す必要がウェブフック使用、displayText、必要に応じてアプリが必要datacontextOutsource

私は、あなたが今注文の状況について質問しているように、api.aiでいくつかのコンテキストを実装する必要があると思います。 sessionId

1

これを行うには、サードパーティ製のAPIと統合するか、独自のデータベースサイドにサーバー側のコール(この場合はwebhook)を使用する必要がありますユーザーのIDを取得し、ピザの準備ができているかどうかを問い合わせると、API.aiに渡されます。 https://github.com/api-ai/apiai-weather-webhook-sample

+0

これはPythonを使用していますが、node.jsのサンプルは参照していますか? – PirateApp

0

マットはここに正しいです:

は、ここであなたが求めているものを行うには、サードパーティのウェブフックを使用した例です。 Webhookを使用する必要があります。残念ながら、API.AIのドキュメントは現在非常に貧弱です。受信した投稿リクエストのスクリーンショットの例を次に示します。私のメッセージ関数は、目的の応答を持つオブジェクトを返します。この場合、私はTelegramチャットボットを使用しています。メッセンジャーを使用していない場合、データキー:値を削除できます。 FollowupEventもオプションです。あなたのAPI.AIの意図に

Node.JS code with Restify

、ウェブフックをオフに確認してください。ここでテキストレスポンス「Broken」を終了したら、何かがうまくいかず、エラーコードを確認する必要があります。

API.AI intent

そして最後に、フルフィルメント]タブの下で、ウェブフックを有効にして、右のエンドポイントでそれを指すようにしてください。

+0

コードを画像として投稿しないようにしてください(最初のスクリーンショット)。コードを4つのスペースだけインデントして、整形された出力を生成します。 – chtz

関連する問題