我正在开发一个alexa技能,并在亚马逊提供的alexa模拟器上进行测试,这将根据用户提供的关键字提供一些新闻。
我设置了一个关键词“< bbc news '作为调用。
一切都在过去2天正常运行,现在突然间,alexa模拟器自行发送了两个请求。
在致电调用' bbc news '模拟器将 LaunchRequest 发送到我的服务器,然后在1秒内发送' SessionEndedRequest '到我的服务器自动。 我不知道发生了什么,我调试了我的PHP代码,但工作正常。
答案 0 :(得分:0)
我只是遇到了类似的问题,经过几小时的更改,一切仍然无法正常进行。在AWS Lambda上,所有测试都已成功运行。这听起来很愚蠢,但是在测试页面(alexa模拟器)上显示的是,在以下位置启用了技能测试:,您有两个选择:发展 / 关闭。
尝试切换关闭状态,然后再次选择开发。我100%确信它会以某种方式重置Alexa的模拟器当前状态,并使其对我再次正常工作。
答案 1 :(得分:0)
嗨,我在ALexa Echo节目中面临同样的问题。一旦我从echo show调用我的技能,它就会首先发送SessionEndedRequest,其原因是:USER_INITIATED,然后几秒钟后,它会自动发送另一个带有调用词和正确的IntentRequest的请求。
第一个答复:
{
type: 'SessionEndedRequest',
requestId: 'amzn1.echo-api.request.056129ac-6696-4928-98a7-b193cdf3301b',
timestamp: '2020-10-20T04:21:12Z',
locale: 'en-US',
reason: 'USER_INITIATED'
}
此之后,IntentRequest请求会自动出现
{
type: 'IntentRequest',
requestId: 'amzn1.echo-api.request.4a731091-72c8-430d-91e9-e7db1a5c4d16',
locale: 'en-US',
timestamp: '2020-10-20T04:21:12Z',
intent: {
name: 'EveryThingIntent',
confirmationStatus: 'NONE',
slots: { EveryThingSlot: [Object] }
}
这仅在alexa echo show中发生。从开发人员的测试仪表板和手机上的Alexa应用程序中,我仅收到IntentRequest