0

我目前正在使用 Jovo 跨平台开发 Alexa 和 Google Assistant 的技能/操作。

我目前遇到了一个障碍,我试图通过执行以下任一操作来获得先前的意图: this.user().context.prev[0].request.intent this.user().getPrevIntent(0).

但它没有奏效。我得到context is undefined并且getPrevIntent不存在。根据Docs,我需要使用 DynamoDB 设置一个表(我做了,并验证了它正在工作,因为 Jovo 能够存储用户对象),并将默认配置传递给 App。但似乎仍然无法让它工作。有任何想法吗?

const config = {
  logging: false,
  // Log incoming JSON requests.
  // requestLogging: true,
  /**
   * You don't want AMAZON.YesIntent on Dialogflow, right?
   * This will map it for you!
   */
  intentMap: {
    'AMAZON.YesIntent': 'YesIntent',
    'AMAZON.NoIntent': 'NoIntent',
    'AMAZON.HelpIntent': 'HelpIntent',
    'AMAZON.RepeatIntent': 'RepeatIntent',
    'AMAZON.NextIntent': 'NextIntent',
    'AMAZON.StartOverIntent': 'StartOverIntent',
    'AMAZON.ResumeIntent': 'ContinueIntent',
    'AMAZON.CancelIntent': 'CancelIntent',
  },
  // Configures DynamoDB to persist data
  db: {
    awsConfig,
    type: 'dynamodb',
    tableName: 'user-data',
  },
  userContext: {
    prev: {
      size: 1,
      request: {
        intent: true,
        state: true,
        inputs: true,
        timestamp: true,
      },
      response: {
        speech: true,
        reprompt: true,
        state: true,
      },
    },
  },
};

const app = new App(config);

谢谢

4

1 回答 1

1

要使用 Jovo 框架的用户上下文对象,您至少需要v1.2.0拥有jovo-framework.

您可以像这样将软件包更新到最新版本:npm install jovo-framework --save

(这曾经是一个评论。只需将其添加为答案,以便其他人也能看到)

于 2018-05-21T17:56:57.030 回答