我在Alexa开发者控制台中看到一种奇怪的行为,即具有配置 endpoints 值的技能:

enter image description here

使用 endpoints 的一些旧的兑现值(注意与配置中的上述一个的url差异:https://87d44b5e.ngrok.io/kai/api/v1/alexa)导致 SKILL_ENDPOINT_ERROR

enter image description here

在Alexa外部可以完全访问配置的 endpoints (https://87d44b5e.ngrok.io/kai/api/v1/alexa) .

设备日志的异常堆栈中引用的 endpoints 值不同:https://simeonleyzerzon5.localhost.run/kai/api/v1/alexa . 我不是__33499_是我几天前一直在使用的遗留 endpoints . 由于这些值每天都会过期几次,因此需要在Alexa开发控制台中重新配置它们 . 似乎它已被Alexa内部缓存 .

该技能已启用帐户关联 .

我尝试清理浏览器cookie,重新启动浏览器,以隐身模式运行它,在Alexa json编辑器中重新保存并重新构建模型,在那里重新保存 endpoints 的正确值,禁用开发控制台上的帐户链接,禁用并通过https://alexa.amazon.com重新启用技能 - 似乎没有任何帮助 . 在不同的浏览器中,我也会遇到同样的错误 .

我通过Developer Console的邀请他与同事分享了一项技能设置|用户权限,他能够毫无错误地运行技能,而不会遇到错误的缓存行为(他的技能使用新更新的 endpoints ),而对我而言,它会继续发生 .

  • 似乎Alexa在某个时刻保存了一个技能快照 per user ,此时 endpoints 值(也许还有一些其他值?)被记忆然后重复使用,有人可以解释这个记忆何时发生以及如何重置它?

  • 是否高于正确的假设,如果是这样,是否进行了记忆以防止在将技能分配到(通过链接)并被多个用户攻击时存在与并发相关的问题?或者是否打算用于其他目的?

  • 如何解决这种错误行为?

  • 用户和技能之间的关系是什么?为什么多个用户共享的技能状态不同步?如何在消耗该技能的所有用户之间触发技能状态的重置和重新同步 . 是什么让它不同步?