Actions on google Google home设备和dialogflow

Actions on google Google home设备和dialogflow,actions-on-google,dialogflow-es,Actions On Google,Dialogflow Es,我有一个代理,使用V1对话框流。与两个谷歌家庭设备集成 一台谷歌家用设备在欧洲,一台在印度。这两个设备都配置为Account。相同的帐户用于部署webhook、deploy和dialogflow代理 固件版本相同 该代理在模拟器上运行良好 现在在Google home上谈论: 印度的谷歌设备:启动inovkes时,会询问特定的pin码,即使pin被慢慢提及,JSON请求pin的对话框流中也不会考虑空格。原文没有空格,比如pin是12345,JSON请求是12345 谷歌设备在欧洲:当启动inov

我有一个代理,使用V1对话框流。与两个谷歌家庭设备集成

一台谷歌家用设备在欧洲,一台在印度。这两个设备都配置为Account。相同的帐户用于部署webhook、deploy和dialogflow代理

固件版本相同

该代理在模拟器上运行良好

现在在Google home上谈论:

印度的谷歌设备:启动inovkes时,会询问特定的pin码,即使pin被慢慢提及,JSON请求pin的对话框流中也不会考虑空格。原文没有空格,比如pin是12345,JSON请求是12345

谷歌设备在欧洲:当启动inovkes时,会询问特定的pin码,即使pin码被慢慢提及,在对话框流JSON请求pin中也会考虑空格。原始的pin码带有空格并被修剪。 假设pin是12345,但JSON请求是123

不知道为什么会这样

需要帮忙吗

正在添加对话框流请求

来自印度Google Home设备的DF JSON请求到达后端-工作正常

{
  data: {
    'timestamp': '2018-06-15T17:42:38.261Z',
    'id': 'e5acf434-4e03-4c14-b3d9-e8fc98555694',
    'status': {
      'errorType': 'success', 'code': 200
    }
    ,
    'sessionId': '1529084528066',
    'originalRequest': {
      'source': 'google', 'data': {
        'user': {
          'userId': '1529084528066', 'locale': 'en-US'
        }
        ,
        'surface': {
          'capabilities': [{'name': 'actions.capability.MEDIA_RESPONSE_AUDIO'}, {'name': 'actions.capability.AUDIO_OUTPUT'}]
        }
        ,
        'isInSandbox': True, 'inputs': [{
          'arguments': [{
            'name': 'text',
            'rawText': 'my pin is 23456',
            'textValue': 'my pin is 23456'
          }],
          'intent': 'actions.intent.TEXT',
          'rawInputs': [{'inputType': 'VOICE', 'query': 'my pin is 23456'}]
        }], 'conversation': {
          'conversationId': '1529084528066',
          'conversationToken': '["0748bff2-90d8-4941-8f9f-cf59dd3d009c_id_dialog_context","actions_capability_audio_output","actions_capability_media_response_audio","auth_dialog_context","auth_dialog_params_pin","defaultwelcomeintent-followup","google_assistant_input_type_voice"]',
          'type': 'ACTIVE'
        }
      }
      ,
      'version': '2'
    }
    ,
    'lang': 'en-us',
    'result': {
      'speech': '',
      'action': 'DefaultWelcomeIntent.DefaultWelcomeIntent-custom',
      'actionIncomplete': False,
      'parameters': {
        'phone': '1234567890', 'pin': '23456'
      }
      ,
      'fulfillment': {
        'speech': '', 'messages': [{'speech': '', 'type': 0}]
      }
      ,
      'source': 'agent',
      'contexts': [{
        'name': 'google_assistant_input_type_voice',
        'parameters': {
          'phone': '1234567890',
          'pin': '23456',
          'pin.original': '23456',
          'phone.original': '12345 67890'
        },
        'lifespan': 0
      }, {
        'name': 'actions_capability_audio_output',
        'parameters': {
          'phone': '1234567890',
          'pin': '23456',
          'pin.original': '23456',
          'phone.original': '12345 67890'
        },
        'lifespan': 0
      }, {
        'name': 'auth',
        'parameters': {
          'phone': '1234567890',
          'pin': '23456',
          'pin.original': '23456',
          'phone.original': '12345 67890'
        },
        'lifespan': 5
      }, {
        'name': 'defaultwelcomeintent-followup',
        'parameters': {
          'phone': '1234567890',
          'pin': '23456',
          'pin.original': '23456',
          'phone.original': '12345 67890'
        },
        'lifespan': 1
      }, {
        'name': 'actions_capability_media_response_audio',
        'parameters': {
          'phone': '1234567890',
          'pin': '23456',
          'pin.original': '23456',
          'phone.original': '12345 67890'
        },
        'lifespan': 0
      }],
      'resolvedQuery': 'my pin is 23456',
      'score': 1.0,
      'metadata': {
        'matchedParameters': [{
          'prompts': [{'value': 'Please tell us your pin', 'lang': 'en'}],
          'required': True,
          'name': 'pin',
          'value': '$pin',
          'dataType': '@sys.phone-number',
          'isList': False
        }],
        'webhookUsed': 'true',
        'intentId': '0748bff2-90d8-4941-8f9f-cf59dd3d009c',
        'nluResponseTime': 296,
        'intentName': 'auth',
        'webhookForSlotFillingUsed': 'false',
        'isResponseToSlotfilling': False
      }
    }
  }
}
DF JSON请求从欧洲的Google Home设备发送到后端-请参阅pin码问题

{
  data: {
    'timestamp': '2018-06-15T13:19:06.014Z',
    'id': 'ca0ebb47-8bf1-478b-9c87-c704e0114cf9',
    'status': {'errorType': 'success', 'code': 200},
    'sessionId': '1529068715507',
    'originalRequest': {
      'source': 'google',
      'data': {
        'user': {'userId': '1529068715507', 'locale': 'en-US'},
        'surface': {'capabilities': [{'name': 'actions.capability.AUDIO_OUTPUT'}, {'name': 'actions.capability.MEDIA_RESPONSE_AUDIO'}]},
        'isInSandbox': True,
        'inputs': [{
          'arguments': [{
            'name': 'text',
            'rawText': 'my pin is 2 3 4 5 6',
            'textValue': 'my pin is 2 3 4 5 6'
          }],
          'intent': 'actions.intent.TEXT',
          'rawInputs': [{'inputType': 'VOICE', 'query': 'my pin is 2 3 4 5 6'}]
        }],
        'conversation': {
          'conversationId': '1529068715507',
          'conversationToken': '["0748bff2-90d8-4941-8f9f-cf59dd3d009c_id_dialog_context","actions_capability_audio_output","actions_capability_media_response_audio","auth_dialog_context","auth_dialog_params_pin","defaultwelcomeintent-followup","google_assistant_input_type_voice"]',
          'type': 'ACTIVE'
        }
      },
      'version': '2'
    },
    'lang': 'en-us',
    'result': {
      'speech': '',
      'action': 'DefaultWelcomeIntent.DefaultWelcomeIntent-custom',
      'actionIncomplete': False,
      'parameters': {'phone': '1234567890', 'pin': '234'},
      'fulfillment': {'speech': '', 'messages': [{'speech': '', 'type': 0}]},
      'source': 'agent',
      'contexts': [{
        'name': 'google_assistant_input_type_voice',
        'parameters': {
          'phone': '1234567890',
          'pin': '234',
          'pin.original': '2 3 4',
          'phone.original': '123-456-7890'
        },
        'lifespan': 0
      }, {
        'name': 'actions_capability_audio_output',
        'parameters': {
          'phone': '1234567890',
          'pin': '234',
          'pin.original': '2 3 4',
          'phone.original': '123-456-7890'
        },
        'lifespan': 0
      }, {
        'name': 'auth',
        'parameters': {
          'phone': '1234567890',
          'pin': '234',
          'pin.original': '2 3 4',
          'phone.original': '123-456-7890'
        },
        'lifespan': 5
      }, {
        'name': 'actions_capability_media_response_audio',
        'parameters': {
          'phone': '1234567890',
          'pin': '234',
          'pin.original': '2 3 4',
          'phone.original': '123-456-7890'
        },
        'lifespan': 0
      }, {
        'name': 'defaultwelcomeintent-followup',
        'parameters': {
          'phone': '1234567890',
          'pin': '234',
          'pin.original': '2 3 4',
          'phone.original': '123-456-7890'
        },
        'lifespan': 1
      }],
      'resolvedQuery': 'my pin is 2 3 4 5 6',
      'score': 1.0,
      'metadata': {
        'matchedParameters': [{
          'prompts': [{
            'value': 'Please tell us your pin',
            'lang': 'en'
          }],
          'required': True,
          'name': 'pin',
          'value': '$pin',
          'dataType': '@sys.phone-number',
          'isList': False
        }],
        'webhookUsed': 'true',
        'intentId': '0748bff2-90d8-4941-8f9f-cf59dd3d009c',
        'nluResponseTime': 356,
        'intentName': 'auth',
        'webhookForSlotFillingUsed': 'false',
        'isResponseToSlotfilling': False
      }
    }
  }
}
即使您的区域设置相同,您的位置也不同。 我想,这会影响对这个词的解释

因此,如果您使用另一个
数据类型
(例如),我认为它会起作用。
您可能可以通过在Google Actions模拟器中更改位置来尝试这一点。

(训练不同的数字序列似乎是如此。)

你在整个演讲中得到了什么?每个设备的区域设置是什么?如果你问“13579”,你会得到什么?Dialogflow(DF)语言是默认的英语。谷歌家庭设备语言都设置为英语。仅供参考,一个谷歌家用设备位于瑞典,另一个位于印度。但除了位置之外,它们的设置是相同的。我已经编辑了提供DF请求的帖子,该请求将被发送到后端。在两个请求中发出23456时,请检查pin。还有电话号码。两个请求中出现的格式。原始文本用空格填充,并且完整,但在第二种情况下,参数值没有正确使用,即欧洲的google home设备。Dialogflow不是为处理PIN而设计的,因此抄写有效是好的。您可能需要执行其他逻辑来从原始文本中识别参数。