我的应用程序每小时收到大约10份健康检查请求,这使我的谈话日志变得很混乱。由于健康检查没有屏幕功能,我们的后端服务器响应请求谷歌主页的请求。
有没有任何方法来检测该请求是否是健康检查请求?
发布于 2017-12-20 16:28:17
首先,你应该像谷歌主页一样做出回应。您必须用有效的输出进行响应,否则它将拒绝您。所以,不要试图在你的反应太花哨-只是使用这个,以避免混乱你的分析和日志。
健康检查看起来像是一个正常的欢迎请求。ping将包含一个名为is_health_check的参数,其boolValue为true,textValue为1。如果您使用的是对话框流,这将是originalRequest.data.inputs[0]的参数之一。对于Actions,它将位于data.inputs[0]。
下面是对话框流中的部分示例:
{
"originalRequest": {
"source": "google",
"version": "2",
"data": {
"surface": {
"capabilities": [
{
"name": "actions.capability.AUDIO_OUTPUT"
}
]
},
"inputs": [
{
"rawInputs": [
{
"query": "Sample",
"inputType": "VOICE"
}
],
"arguments": [
{
"textValue": "1",
"name": "is_health_check",
"boolValue": true
}
],
"intent": "actions.intent.MAIN"
}
],
...
}https://stackoverflow.com/questions/47899612
复制相似问题