有没有办法用API.AI结束Google与服务器的对话?
我假设我需要以某种方式访问expect_user_response并将其设置为false。
我还看到,在actions中,您可以使用'assistant.tell()',但这在API.AI看来是不可访问的。
发布于 2016-12-22 04:17:19
可以,停那儿吧。在应用程序中,编写一个将查询“停止”发送给代理的函数。
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');
。
..。
在“意图”窗格中,在“履行”下,有一个“在Google上的操作”部分,您可以对其进行扩展。在这下面,你会看到“结束对话”选中了那个框。
在你的实践中,包括以下几点:
data: {
google: {
expect_user_response: false,
}
}
在响应中添加与您的语音属性相同的级别。
发布于 2016-12-22 06:59:35
对于不使用SDK的人。在使用API.AI时,我发现有两种方法可以阻止Google上的麦克风。
在“意图”窗格中,在“履行”下,有一个“在Google上的操作”部分,您可以对其进行扩展。在此下面,您将看到“结束会话”复选框。检查那个盒子。
在你的实践中,包括以下几点:
data: {
google: {
expect_user_response: false,
}
}
在响应中添加与您的语音属性相同的级别。
发布于 2017-08-25 04:02:04
对于那些使用Node.js客户端库的用户,这是通过tell()
函数(ActionsSdk文档客户机、API.AI文档客户端)以编程方式完成的。
即使医生简单地说:
告诉助手呈现语音响应并关闭麦克风。
这将有效地结束与您的助手应用程序的通信,将用户返回到Google。
通过在特定意图中检查API.AI web中的“结束会话”框(当然,这不是动态的,每次调用该意图时都会结束会话),也可以完成相同的任务:
https://stackoverflow.com/questions/41274798
复制相似问题