Alexa不会使用lambda和python播放流中的音频

2024-10-01 22:40:39 发布

您现在位置:Python中文网/ 问答频道 /正文

我一辈子都不明白为什么这行不通。在

这是我的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。有个记号。我错过了什么?在


Tags: lambda函数httpsbuildeventurlreturnresponse
1条回答
网友
1楼 · 发布于 2024-10-01 22:40:39

来自Alexa的响应意味着该技能返回了一个Alexa不知道如何解析的无效响应。在

如果还没有,您应该检查CloudWatch日志中的Lambda函数,看看是否出现了错误:https://console.aws.amazon.com/cloudwatch/home?region=us-east-1#

据我所知,开发人员门户仍然不显示指令,因此您不想在那里进行测试。从开发者门户Alexa skill test页面:

Note: Service Simulator does not currently support testing audio player directives and customer account linking.

如果在CloudWatch中没有发现错误,您可以做的是从该页面复制/粘贴Service Request,并将其用作Lambda函数的自定义测试。在Lambda页面上,单击Actions下拉列表并选择Configure Text Event,然后将您从开发人员门户网站的请求粘贴到该页面中。这会让你更好地了解你回到Alexa时的反应。如果你搞不懂这个,在这里加上这个答案,我们会试着把事情弄清楚一点。在

相关问题 更多 >

    热门问题