我一辈子都不明白为什么这行不通。在
这是我的lambda函数
def lambda_handler(event, context):
url = "https://prod-65-19-131-166.wostreaming.net/kindred-wcmifmmp3-128"
return build_audio_response(url)
def build_audio_response(url):
return {
"version": "1.01",
"response": {
"directives": [
{
"type": "AudioPlayer.Play",
"playBehavior": "ENQUEUE",
"audioItem": {
"stream": {
"token": "sdfsdfsdfsdfsdf3ew234235wtetgdsfgew3534tg",
"url": url,
"offsetInMilliseconds": 0
}
}
}
],
"shouldEndSession": True
}
}
当我在devportal中运行测试时。我得到了一个我应该得到的回应,但它缺少指令。在
^{pr2}$Alexa只是说“请求的技能响应有问题。”
我认为这是因为指令没有结束。但我已经测试过了,它是有效的。是https。有个记号。我错过了什么?在
来自Alexa的响应意味着该技能返回了一个Alexa不知道如何解析的无效响应。在
如果还没有,您应该检查CloudWatch日志中的Lambda函数,看看是否出现了错误:https://console.aws.amazon.com/cloudwatch/home?region=us-east-1#
据我所知,开发人员门户仍然不显示指令,因此您不想在那里进行测试。从开发者门户Alexa skill test页面:
如果在CloudWatch中没有发现错误,您可以做的是从该页面复制/粘贴
Service Request
,并将其用作Lambda函数的自定义测试。在Lambda页面上,单击Actions
下拉列表并选择Configure Text Event
,然后将您从开发人员门户网站的请求粘贴到该页面中。这会让你更好地了解你回到Alexa时的反应。如果你搞不懂这个,在这里加上这个答案,我们会试着把事情弄清楚一点。在相关问题 更多 >
编程相关推荐