使用Amazon Alexa技能CLI更新交互模型

Cal*_*tes 1 amazon aws-cli amazon-echo

尝试使用基于命令行的AWS CLI更新我的技能的交互模型.到目前为止,我一直在将交互模型直接复制到在线技能编辑器中.以编程方式执行此操作的最佳过程是什么?

Cal*_*tes 5

通过AWS CLI更新Alexa技能交互模型:

1)使用来自AWS IAM配置文件的凭据设置AWS CLI配置文件 https://docs.aws.amazon.com/cli/latest/userguide/cli-chap-getting-started.html

$ aws configure --profile [PREFERED PROFILE NAME]
AWS Access Key ID [None]: AKIAIOSFODNN7_EXAMPLE_FOUND_IN_IAM
AWS Secret Access Key [None]: wJalrXUtnFEMI/K7MDENG/bPxRfiCY_EXAMPLE_KEY
Default region name [None]: us-east-1
Default output format [None]: json
Run Code Online (Sandbox Code Playgroud)

在命令行中:

SKILL_ID=[YOUR SKILL ID FOUND AT DEVELOPER.AMAZON.COM]
CLI_PROFILE=[YOUR CLI PROFILE CREATED ABOVE]

ask api update-model -s ${SKILL_ID} -p ${CLI_PROFILE} -l en-US -f [PATH TO FILE]/InteractionModel.json
Run Code Online (Sandbox Code Playgroud)

注意:

  • en-US更新英语交互模型

退货数据:

Model for en-US submitted.
Please use the following command to track the model build status:

ask api get-skill-status -s amzn1.ask.skill.4245ff2e-476c-418b-8004-dc63346dc432e4
Run Code Online (Sandbox Code Playgroud)

要跟踪您的进度,请务必附加您的AWS_CLI个人资料

ask api get-skill-status -s amzn1.ask.skill.4245ff2e-476c-418b-8004-dc63346dc432e4 -p ${CLI_PROFILE}
Run Code Online (Sandbox Code Playgroud)

跟踪结果数据:

{
  "interactionModel": {
    "en-US": {
      "eTag": "f05823449ac35d318acb4096d061eaa8",
      "lastUpdateRequest": {
        "status": "IN_PROGRESS"
      }
    }
  },
  "manifest": {
    "eTag": "df3b0a7c544b5c0ee006e34cf726dcd2",
    "lastUpdateRequest": {
      "status": "SUCCEEDED"
    }
  }
}
Run Code Online (Sandbox Code Playgroud)

LastUpdateRequest Status: 应该最终阅读 SUCCEEDED

预警:

  • 您无法更新实时技能的调用名称.这是我到目前为止遇到的唯一错误."message": "InvalidStageInvocationNameChange: You cannot change the invocation name for a live skill."