Alexa Skill在网站上工作,返回"出了问题"在设备上

时间:2018-01-17 09:06:54

标签: c# alexa alexa-skills-kit

我是开发Alexa技能的新手,但我创建了一个非常简单的技能,用C#编写并托管在Azure中。目前它只返回一条JSON消息。

public class AlexaController : ApiController
{
    [HttpPost, Route("api/alexa/demo")]
    public dynamic Pluralsight(dynamic request)
    {
        string version;
        version = "5";
        return new
        {
            version = "1.0",
            sessionAttributes = new { },
            response = new
            {
                outputSpeech = new
                {
                    type = "PlainText",
                    text = $"Finance build is version, {version}"
                },
                card = new
                {
                    type = "Simple",
                    title = "TeamCity",
                    content = "Version identifier"
                },
                shouldEndSession = true
            }
        };

    }

我的话语是:

    HelloWorldIntent hello
    HelloWorldIntent hi
    AMAZON.HelpIntent assistance needed please
    AMAZON.HelpIntent i need assistance

意图架构是:

    {
      "intents": [
        {
          "intent": "HelloWorldIntent"
        },
        {
          "intent": "AMAZON.HelpIntent"
        }
      ]
    }

在网站上测试时效果很好:

    {
      "version": "1.0",
      "response": {
        "outputSpeech": {
          "text": "Finance build is version, 5",
          "type": "PlainText"
        },
        "card": {
          "content": "Version identifier",
          "title": "TeamCity"
        },
        "speechletResponse": {
          "outputSpeech": {
            "text": "Finance build is version, 5"
          },
          "card": {
            "content": "Version identifier",
            "title": "TeamCity"
          },
          "shouldEndSession": true
        }
      },
      "sessionAttributes": {}
    }

然而,当我在我的Echo Dot上进行测试时,它说"出了问题"。

我已经检查过并启用了该技能,并且正在使用正确的帐户 反正有没有更多细节来了解正在发生的事情?

1 个答案:

答案 0 :(得分:1)

问题是由于我为该技能指定的语言。
我在英国工作并且已经将语言发送到英语(美国),这意味着技能将在美国的技能商店(但不在英国技能商店)。

添加一种新语言(设置为英国英语)允许在我的英国设备上测试该技能。