为什么 Alexa for apps 技能清单更新失败并出现错误 DENIED_FEATURE_ACCESS

问题描述 投票:0回答:1

我正在尝试创建 Alexa for apps 自定义技能,以允许对我的 Android 应用程序进行语音控制。该应用程序的深层链接已经过验证并且可以正常工作,并且该技能本身已在 Alexa 开发人员控制台中部分实现(因此为根用户创建了 AWS 帐户以及 IAM 设置)。 ASK CLI 工具安装在我的 Windows 11 桌面上并且显然可以正常工作。

我编写了一个 Skills.json 文件,据我所知,该文件是正确的,但在尝试使用以下方法更新它时:

ask smapi update-skill-manifest -s SKILLID -g development --manifest "file:skill.json" --debug

我收到 400 错误,响应正文如下:

{"message":"Skill manifest is not valid.","violations":[{"code":"DENIED_FEATURE_ACCESS","message":"User is not allowed access to the \"AppLink V2\" feature and, therefore, cannot use string instance with value \"\"APP_LINKS_V2\"\" at \"$.manifest.apis.custom.interfaces[0].type\". Further information: \"[email protected]\".","validationDetails":{"feature":{"contact":"[email protected]","name":"AppLink V2"},"originalInstance":{"dataType":"string","propertyPath":"$.manifest.apis.custom.interfaces[0].type","type":"BODY","value":"\"APP_LINKS_V2\""}}}]}

这是 Skills.json(省略了某些值):

{
  "manifest": {
    "apis": {
      "custom": {
        "endpoint": {
          "uri": "myendpointarn"
        },
        "interfaces": [
          {
            "type": "APP_LINKS_V2"
          }
        ],
        "appLink": {
          "linkedApplications": [
            {
              "friendlyName": {
                "default": "MobileShopper"
              },
              "catalogInfo": {
                "type": "GOOGLE_PLAY_STORE",
                "identifier": "com.ideasave.mobileshopper2"
              },
              "domains": [
                "www.ideasave.com"
              ]
            }
          ]
        },
        "regions": {
          "NA": {
            "endpoint": {
              "uri": "lambdaarn1"
            }
          },
          "EU": {
            "endpoint": {
              "uri": "lambdaarn2"
            }
          },
          "FE": {
            "endpoint": {
              "uri": "lambdaarn3"
            }
          }
        }
      }
    },
    "manifestVersion": "1.0",
    "permissions": [
      {
        "name": "alexa::devices:app:push_notifications"
      }
    ],
    "publishingInformation": {
      "isAvailableWorldwide": true,
      "locales": {
        "en-US": {
          "description": "Create shopping lists and recipes with MobileShopper on Android. Try saying 'Alexa, tell Mobile Shopper I need milk' to add milk to your needed items list.",
          "examplePhrases": [
            "Alexa, open Mobile Shopper",
            "Alexa, tell Mobile Shopper to find wine",
            "Alexa, tell Mobile Shopper I need milk",
            "Alexa, tell Mobile Shopper I need recipe Rib Roast"
          ],
          "name": "Mobile Shopper",
          "summary": "Create shopping lists and recipes with MobileShopper on Android."
        }
      },
      "testingInstructions": "Sample Testing Instructions."
    }
  }
}

我认为我的 IAM 配置可能缺少权限,但我没有找到看起来相关的权限更改/添加。

有谁知道可能导致此错误的原因是什么?无论如何,我发现用于设置 AWS 和 IAM 的教程非常难以遵循,因为其中显示和记录的步骤与 AWS 当前可用的 UI 完全不同。我完全有可能错过了一些重要的事情。

android manifest alexa-skills-kit
1个回答
0
投票

事实证明,发生错误的原因是亚马逊已经放弃了对 Alexa for Apps 的支持,因此不再可能开发这方面的技能。文档声称它仍然可以使用命令行工具使用,但我怀疑文档已经过时了。

© www.soinside.com 2019 - 2024. All rights reserved.