4

API.AI を使用して Google Home とサーバーとの会話を終了する方法はありますか?

どういうわけか、expect_user_response にアクセスして false に設定する必要があると想定しています。

また、アクション SDK では「assistant.tell()」を使用できますが、API.AI ではアクセスできないようです。

4

3 に答える 3

5

SDKを使用していない人向け。API.AI の使用中に Google Home でマイクを停止する方法が 2 つあります。

[インテント] ペインのフルフィルメントの下に、展開できる [Actions on Google] セクションがあります。その下に「会話を終了する」チェックボックスが表示されます。そのボックスをチェックしてください。

フルフィルメントには次のものが含まれます。

data: {
  google: {
    expect_user_response: false,
  }
}

これを応答の speech プロパティと同じレベルに追加します。

于 2016-12-22T06:59:35.473 に答える
3

はい、できます。アプリで、クエリ「停止」をエージェントに送信する関数を記述します。

function stop_conversation(){ var api_request = new Request('https://api.api.ai/v1/query?v=20150910', {
        method: 'POST',
        mode: 'cors',
        redirect: 'follow',
        headers: {
            'Authorization': 'Bearer 21f6a5778d484870ad46be4d34ac2eeb',
            'content-Type': 'application/json; charset=utf-8'
        },
        body: JSON.stringify({
            q: 'stop',
            lang: 'en',
            sessionId: '44628d21-d7a4-47d5-b1c6-a7f851be65fv'
        })
    });
}

フルフィルメント ライブラリを使用している場合は、 を呼び出しAssist('stop');ます。

...

[インテント] ペインのフルフィルメントの下に、展開できる [Actions on Google] セクションがあります。その下に、「会話を終了する」というチェックボックスが表示されます

フルフィルメントには次のものが含まれます。

data: {
  google: {
    expect_user_response: false,
  }
}

これを応答の speech プロパティと同じレベルに追加します。

于 2016-12-22T04:17:19.490 に答える