- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
我正在创建一个 Alexa 技能,它本质上是一个问卷。在亚马逊网站上的开发者模拟器中,它在没有超时的情况下运行得相当好。经过研究,我开始意识到大约有一个强制性的 8 秒超时。我还看到在 aws lambda 函数的设置中,可以将超时从默认的三秒一直更改为最多五分钟,这是我在故障排除过程中所做的。然而,这种变化似乎没有效果。
我的问题如下:
在 alexa 应用程序或 echoism.io 上进行测试时(我没有 Alexa 设备,但可以想象这些设备的行为与它类似),Alexa 提出的问题只有在被打断时才能回答。换句话说,假设问题已经问完了。然后,会发出哔哔声,表示用户应该响应。在这种情况下,即使用户输入合理,也不会发生任何事情并且技能会退出。但是,如果在提示期间的任何时候,用户点击了发言按钮并回答了问题,从而中断了提示,那么答案将按照开发人员控制台模拟中的预期正确记录。
有什么可能导致这种情况的想法吗?
请求
{
'version':'1.0',
'session':{
'new':False,
'sessionId':'amzn1.echo-api.session.f55b0102-a3cb-4c1a-9b0c-6ef73f579c69',
'application':{
'applicationId':'amzn1.ask.skill.20852205-3919-4d6a-8a62-cb6f8c6214ef'
},
'user':{
'userId':'amzn1.ask.account.AHVXIGHORW6PSATGYB6KWTZFBJ64Q2XXGRX3KFWWTRV7KLUAYSSR657SD74Z6E5PHXF35R75SZ7GJITERAT3XZ73LRXLR4KH2552NLMAL6WMAK2NQUZQ3EXB6DGOU2BZOTXFTT4UBBQSNNXB4J74U44UNWH6QJCWYBBATIIPE6YLV7W3TP4EYWQBTNTJ3LBVXF2EGFRDYRPTUCA'
}
},
'context':{
'System':{
'application':{
'applicationId':'amzn1.ask.skill.20852205-3919-4d6a-8a62-cb6f8c6214ef'
},
'user':{
'userId':'amzn1.ask.account.AHVXIGHORW6PSATGYB6KWTZFBJ64Q2XXGRX3KFWWTRV7KLUAYSSR657SD74Z6E5PHXF35R75SZ7GJITERAT3XZ73LRXLR4KH2552NLMAL6WMAK2NQUZQ3EXB6DGOU2BZOTXFTT4UBBQSNNXB4J74U44UNWH6QJCWYBBATIIPE6YLV7W3TP4EYWQBTNTJ3LBVXF2EGFRDYRPTUCA'
},
'device':{
'deviceId':'amzn1.ask.device.AHO5K5QILDUNW7BKDBJMLWENV7INXNFAHIAUB6ELHJ66MVMKQUPFT77GEEILVUDLABIN2JNUUQGPCOW2K6FX2EFTVKAZHGYFEFHZOLSZK5SHAQHLUK624DFPDS2FBBR6X4AZTKFLIJNLOCAWVQSLW5K2YJ5PGMGT2JBYXSNJE7GZWFIZC7WYK',
'supportedInterfaces':{
}
},
'apiEndpoint':'https://api.amazonalexa.com',
'apiAccessToken':'eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsImtpZCI6IjEifQ.eyJhdWQiOiJodHRwczovL2FwaS5hbWF6b25hbGV4YS5jb20iLCJpc3MiOiJBbGV4YVNraWxsS2l0Iiwic3ViIjoiYW16bjEuYXNrLnNraWxsLjIwODUyMjA1LTM5MTktNGQ2YS04YTYyLWNiNmY4YzYyMTRlZiIsImV4cCI6MTUzMjk2OTc3NSwiaWF0IjoxNTMyOTY2MTc1LCJuYmYiOjE1MzI5NjYxNzUsInByaXZhdGVDbGFpbXMiOnsiY29uc2VudFRva2VuIjpudWxsLCJkZXZpY2VJZCI6ImFtem4xLmFzay5kZXZpY2UuQUhPNUs1UUlMRFVOVzdCS0RCSk1MV0VOVjdJTlhORkFISUFVQjZFTEhKNjZNVk1LUVVQRlQ3N0dFRUlMVlVETEFCSU4ySk5VVVFHUENPVzJLNkZYMkVGVFZLQVpIR1lGRUZIWk9MU1pLNVNIQVFITFVLNjI0REZQRFMyRkJCUjZYNEFaVEtGTElKTkxPQ0FXVlFTTFc1SzJZSjVQR01HVDJKQllYU05KRTdHWldGSVpDN1dZSyIsInVzZXJJZCI6ImFtem4xLmFzay5hY2NvdW50LkFIVlhJR0hPUlc2UFNBVEdZQjZLV1RaRkJKNjRRMlhYR1JYM0tGV1dUUlY3S0xVQVlTU1I2NTdTRDc0WjZFNVBIWEYzNVI3NVNaN0dKSVRFUkFUM1haNzNMUlhMUjRLSDI1NTJOTE1BTDZXTUFLMk5RVVpRM0VYQjZER09VMkJaT1RYRlRUNFVCQlFTTk5YQjRKNzRVNDRVTldINlFKQ1dZQkJBVElJUEU2WUxWN1czVFA0RVlXUUJUTlRKM0xCVlhGMkVHRlJEWVJQVFVDQSJ9fQ.CPFDpKzKMBq9Dyhlw7S_fIHTkxN2YODIg-T85YMRWMqHQbalCFd2nC1rqOXoIAX-T6TTkKiXpOSsvEBgnERKivzPgXTRFou3dxsXijSyr4-ip2Ouu5rk-9lQ0IfVtnD424Kbezq7UzlSeEqyvblaOw4Yd7JwbTD0EuPUtCaj_pwLZny3i5-NunFdy1ytmGPN3KTsIIBjkpal61Ao_xNGgEYq_t5lOIwtEfx8uzPIO3VXn78IVC37FOEgylX3sWljGoxDyG_dQ36sprXWIdHBU0SvFnYJYntNwFH4i59KB2G3XseIcjtKDT2oN2VGF-eBdeolQ9_V_qWxqgOooYhNHw'
}
},
'request':{
'type':'IntentRequest',
'requestId':'amzn1.echo-api.request.848c8eed-7f47-4e32-a214-e034f03caf54',
'timestamp':'2018-07-30T15:56:15Z',
'locale':'en-US',
'intent':{
'name':'ScheduleCall',
'confirmationStatus':'NONE',
'slots':{
'OMProductName':{
'name':'OMProductName',
'confirmationStatus':'NONE'
},
'DidSymtomsReAppear':{
'name':'DidSymtomsReAppear',
'confirmationStatus':'NONE'
},
'ProvideHCPContactInfo':{
'name':'ProvideHCPContactInfo',
'confirmationStatus':'NONE'
},
'PatientFirstName':{
'name':'PatientFirstName',
'confirmationStatus':'NONE'
},
'AskWhenEventBegun':{
'name':'AskWhenEventBegun',
'confirmationStatus':'NONE'
},
'DidHCPRecommendAnyTreatment':{
'name':'DidHCPRecommendAnyTreatment',
'confirmationStatus':'NONE'
},
'PNursing':{
'name':'PNursing',
'confirmationStatus':'NONE'
},
'PDueDate':{
'name':'PDueDate',
'confirmationStatus':'NONE'
},
'PlanToContinue':{
'name':'PlanToContinue',
'confirmationStatus':'NONE'
},
'HowOftenUseProduct':{
'name':'HowOftenUseProduct',
'confirmationStatus':'NONE'
},
'OMPDose':{
'name':'OMPDose',
'confirmationStatus':'NONE'
},
'DateOfMiscarriage':{
'name':'DateOfMiscarriage',
'confirmationStatus':'NONE'
},
'WhatDateWasPAdmitted':{
'name':'WhatDateWasPAdmitted',
'confirmationStatus':'NONE'
},
'AskIfFirstTime':{
'name':'AskIfFirstTime',
'confirmationStatus':'NONE'
},
'WhenStartUsingProduct':{
'name':'WhenStartUsingProduct',
'confirmationStatus':'NONE'
},
'PAnyMedicalConditions':{
'name':'PAnyMedicalConditions',
'confirmationStatus':'NONE'
},
'DrugNameSQ':{
'name':'DrugNameSQ',
'confirmationStatus':'NONE'
},
'DidPatientReUseProduct':{
'name':'DidPatientReUseProduct',
'confirmationStatus':'NONE'
},
'OtherMedications':{
'name':'OtherMedications',
'confirmationStatus':'NONE'
},
'AskPermission':{
'name':'AskPermission',
'confirmationStatus':'NONE'
},
'ReportedCauseOfDeath':{
'name':'ReportedCauseOfDeath',
'confirmationStatus':'NONE'
},
'OMPFreq':{
'name':'OMPFreq',
'confirmationStatus':'NONE'
},
'PatientInitials':{
'name':'PatientInitials',
'confirmationStatus':'NONE'
},
'PPregnant':{
'name':'PPregnant',
'confirmationStatus':'NONE'
},
'WasPAdmittedToHospital':{
'name':'WasPAdmittedToHospital',
'confirmationStatus':'NONE'
},
'AEMiscarriage':{
'name':'AEMiscarriage',
'confirmationStatus':'NONE'
},
'DidTreatSymptoms':{
'name':'DidTreatSymptoms',
'confirmationStatus':'NONE'
},
'DidPContactHCPAbtSymptoms':{
'name':'DidPContactHCPAbtSymptoms',
'confirmationStatus':'NONE'
},
'PatientsHeight':{
'name':'PatientsHeight',
'confirmationStatus':'NONE'
},
'PChildAE':{
'name':'PChildAE',
'confirmationStatus':'NONE'
},
'AEBirthDefect':{
'name':'AEBirthDefect',
'confirmationStatus':'NONE'
},
'OMPStartTaking':{
'name':'OMPStartTaking',
'confirmationStatus':'NONE'
},
'OMIsItTopical':{
'name':'OMIsItTopical',
'confirmationStatus':'NONE'
},
'IsPatientStillExperiencingSymptoms':{
'name':'IsPatientStillExperiencingSymptoms',
'confirmationStatus':'NONE'
},
'DrugReaction':{
'name':'DrugReaction',
'confirmationStatus':'NONE'
},
'AskLastTimeUsed':{
'name':'AskLastTimeUsed',
'confirmationStatus':'NONE'
},
'PAnyAllergies':{
'name':'PAnyAllergies',
'confirmationStatus':'NONE'
},
'DateOfDeath':{
'name':'DateOfDeath',
'confirmationStatus':'NONE'
},
'ReportedCauseBirthDefect':{
'name':'ReportedCauseBirthDefect',
'confirmationStatus':'NONE'
},
'DescPreviousPtSimilarExperience':{
'name':'DescPreviousPtSimilarExperience',
'confirmationStatus':'NONE'
},
'OMPReason':{
'name':'OMPReason',
'confirmationStatus':'NONE'
},
'AskPatientDrugQtyUse':{
'name':'AskPatientDrugQtyUse',
'confirmationStatus':'NONE'
},
'WhenDidSymptomsEnd':{
'name':'WhenDidSymptomsEnd',
'confirmationStatus':'NONE'
},
'DidYouGoToER':{
'name':'DidYouGoToER',
'confirmationStatus':'NONE'
},
'PatientWeight':{
'name':'PatientWeight',
'confirmationStatus':'NONE'
},
'ReportedCauseMisCarriage':{
'name':'ReportedCauseMisCarriage',
'confirmationStatus':'NONE'
},
'AgeOfPatient':{
'name':'AgeOfPatient',
'confirmationStatus':'NONE'
},
'WhyPUseProduct':{
'name':'WhyPUseProduct',
'confirmationStatus':'NONE'
},
'PhoneNumber':{
'name':'PhoneNumber',
'confirmationStatus':'NONE'
},
'OMPLastTimeUsed':{
'name':'OMPLastTimeUsed',
'confirmationStatus':'NONE'
},
'WhatDidERDoForP':{
'name':'WhatDidERDoForP',
'confirmationStatus':'NONE'
},
'NameOfHospital':{
'name':'NameOfHospital',
'confirmationStatus':'NONE'
},
'DidSymtomsImproveAfterStop':{
'name':'DidSymtomsImproveAfterStop',
'confirmationStatus':'NONE'
},
'AskAnyLabTest':{
'name':'AskAnyLabTest',
'confirmationStatus':'NONE'
},
'AECausedDeath':{
'name':'AECausedDeath',
'confirmationStatus':'NONE'
}
}
},
'dialogState':'STARTED'
}
}
响应
{
'version':'1.0',
'sessionAttributes':{
},
'response':{
'outputSpeech':{
'type':'PlainText',
'text':'Thank you for using the Jane skill. See you next time!'
},
'card':{
'type':'Simple',
'title':'Jane - Thanks',
'content':'Thank you for using the Jane skill. See you next time!'
},
'reprompt':{
'outputSpeech':{
'type':'PlainText',
'text':None
}
},
'shouldEndSession':True
}
}
最佳答案
默认的 Alexa 超时为 8 秒,不可配置。您可以使用 reprompt
通知用户回答。在最初的 8 秒后,reprompt
将被触发,这给了用户另外 8 秒的响应时间。
但是,您可以尝试一些技巧,例如在后台播放一段时间的无声音频以延长此时间。但是您必须在两者之间使用唤醒词“Alexa”来发出命令或回答。
而 Lambda 超时是不同的,它是每个请求到达您的 Lambda 函数的最长执行持续时间。
In the developer simulator on amazon's website, it works reasonably well without timeout.
Alexa 模拟器选项卡中的技能 session 不会像设备那样超时,让您有更多时间在测试时输入您的响应。如果您的技能使 session 保持打开状态,您可以使用“停止”将其关闭。
shouldEndSession
如果您希望 Alexa 开始等待用户响应,响应 JSON 中的此参数必须设置为 false
。当你真的想结束 session 时,你应该将它设置为 true
。
"shouldEndSession": true
有关响应对象的更多信息 here
关于python - Alexa 技能立即超时,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51563357/
我正在研究 Alexa 技能(用于 Echo),并且我从一开始就研究了 Alexa 技能套件。 现在,我对 Alexa 语音服务感到困惑。我已经阅读了亚马逊上的文档,但无法更好地理解它。 请指导什么是
我正在尝试为 Alexa 创建一项技能,根据我选择的 tg 类别重现 .mp3 文件。我声明我从未使用过 node.js 并且我看过一门关于如何创建 alexa 技能的类(class)。到目前为止,我
是否可以远程触发 Alexa,即我有一个场景,应根据移动应用程序上的某些操作触发 Alexa,并且所提供的响应将由 echo dot 读出。 瓦伦 最佳答案 如果用户不与支持 Alexa 的设备交互,
在 Alexa 中创建技能时,每个插槽最多可以添加多少个值? 由于担心将原始用户对话记录为输入的技能,AMAZON.LITERAL 似乎已被弃用。 如果无法记录用户原始输入,我有大量可能的值可用作输入
我正在尝试编写我的第一个 Alexa 技能,但应用程序流程有点困惑,甚至阅读了有关对话委托(delegate)等的所有文档。我真的很喜欢一些建议。 我追求的流量 "Alexa, start Movie
我已经使用 aws lamda 函数创建了示例技能。我已经使用模拟器测试了技能,效果很好。我想测试 Alexa 应用程序的技能。 有人可以提及从头开始测试 Alexa 应用程序技能的步骤吗? 最佳答案
我已经使用 aws lamda 函数创建了示例技能。我已经使用模拟器测试了技能,效果很好。我想测试 Alexa 应用程序的技能。 有人可以提及从头开始测试 Alexa 应用程序技能的步骤吗? 最佳答案
我正在开发节点中的 Alexa 技能,我想知道如何对我的代码进行单元测试。我正在使用亚马逊发布的alexa sdk。 我找到了很多库来实现这一点,但它们似乎是在 alexa sdk 可用之前开发的。
我正在尝试在 Amazon Alexa 中创建一个简单的调查技巧,Alexa 向用户提出问题,然后他们以他们喜欢的任何方式(开放式)做出回应。例如,如果 Alexa 询问“你会做饭吗?”,用户可能会以
是否有任何方法可以在 Alexa 技能中显示像“阅读更多”这样的超链接?我试图在我的自定义 Alexa 技能中显示超链接,但找不到任何方法来实现它 最佳答案 超链接现在作为 APL 的一部分提供支持它
我正在尝试开发 Alexa 技能,我需要获取相对时间,例如:“ 5 分钟前 ”。 我为我的技能定义了一个时间段,它接受像 5 minutes 这样的时间, 6.30 am或 4 in the morn
我正在开发一项 Alexa 技能,我会在其中停下来获取水果名称。但是,如果我说诸如“苹果的成本是多少”之类的话,其中插槽值带有撇号,Alexa 似乎无法识别撇号。解决方法是说“一个苹果的成本是多少”之
如何为Alexa技能创建通用插槽?这样我就可以创建自己的Todo应用程序,它将识别自由格式的文本。 最佳答案 Alexa blog announced a List Skill API。如上所述,新技
如果我告诉 Alexa 以某些语言(中文、俄语等)或表情符号发出文本,它不会对用户说什么。 Alexa API 是否有办法指示字符串在发出之前或之后将转换为空/无声?或者,有没有办法在 Alexa 之
我想在我的网站/移动应用程序中使用 amazon alexa api。鉴于我开发了我的自定义技能,我想知道是否可以使用以及如何集成 alexa。 最佳答案 您可以使用 Alexa 语音服务。您需要收集
我打算根据自己的技能调用指定的电话号码。 例如 Me: Alexa, ask to find the customer service number Alexa: Sure, the custome
自定义技能已创建但未发布。 我可以在服务模拟器中对其进行测试。 当我尝试从门户网站 ( http://alexa.amazon.com/ ) 或手机上的 Alexa 应用程序将技能添加到我的设备时,搜
我一直在进行 alexa 开发,最近遇到了前所未有的情况。在尝试启用新技能测试时,我在 上收到以下错误测试 标签 : There was a failure enabling your skill,
我正在重写与 Particle.io API 通信的 Alexa 技能。这次我使用 ask-cli 来管理上传。所以到目前为止我的基本流程是: “问新”以创建入门技能和 lambda “请求部署”以创
我使用 PHP 创建了自定义技能和 https 端点。我已经在它正在运行的模拟器上测试了技能。我能够在 alexa android 应用程序上看到我的技能,并且我已经启用了它。但未得到有效响应。 最佳
我是一名优秀的程序员,十分优秀!