【问题标题】:Error: 3 INVALID_ARGUMENT: Name 'Hello' does not match patterns DialogFlow错误:3 INVALID_ARGUMENT:名称“Hello”与模式 DialogFlow 不匹配
【发布时间】:2018-11-15 22:57:54
【问题描述】:

我正在使用 Nodejs 使用 DialogFlow V2 Api 开发一个项目,但以下代码似乎无法正常工作:

    var query = req.body.query;
    const request = {
      session: sessionPath,
      queryInput: {
        text: {
          text: query,
          languageCode: 'en-US',
        },
      },
      queryParams: {
      contexts: [
          {
            "name": "Question-followup",
            "parameters": {},
            "lifespanCount": 0
          }
        ]
      }
    };

    // Send request and log result
    sessionClient
      .detectIntent(request)
      .then(responses => {
        const result = responses[0].queryResult;
        console.log(result);
        res.json(result);   
        if (result.intent) {
          console.log(`  Intent: ${result.intent.displayName}`);
        } else {
          console.log(`  No intent matchede.`);
        }
      })
      .catch(err => {
        console.error('ERROR:', err);
      });

我收到的错误是:

错误:{ 错误:3 INVALID_ARGUMENT:名称“问题跟进”不 匹配模式 'projects/{projectId=}/agent/environments/{environmentId=}/users/{userId=}/sessions/{sessionId=}/contexts/{contextId= },projects/{projectId=}/agent/sessions/{sessionId=}/contexts/{contextId=}'。

注意:我在 Intent 中确实有“问题跟进”上下文,所以不应该是上下文不存在或什么的问题!

知道这会是什么吗?

【问题讨论】:

    标签: javascript node.js google-api google-cloud-platform dialogflow-es


    【解决方案1】:

    您需要包含上下文的完整路径。 Dialogflow v2 Node.js 库有一个帮助方法来为您构建上下文路径。

    contexts: [
          {
            "name": contextsClient.contextPath(projectId, sessionId, "Question-followup"),
            "parameters": {},
            "lifespanCount": 1
          }
        ]
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2023-03-28
      • 2012-08-14
      • 1970-01-01
      • 1970-01-01
      • 2015-09-02
      • 1970-01-01
      • 1970-01-01
      • 2015-03-22
      相关资源
      最近更新 更多