Alexa 技能 - 如何获取向 Alexa 提出的完整声明文本

NKS*_*NKS 8 alexa alexa-skill alexa-voice-service alexa-slot alexa-app

我正在创建 Alexa 技能,我编写了几个自定义和默认意图,并且它们运行良好。

现在我想写一个后备意图,其中我想获得询问/发送给 Alexa 技能的确切语句,有没有一种方法可以让我们获得已向 Alexa 技能询问的整个问题字符串/文本。我知道我们可以获取槽值和意图信息,但我需要将整个文本语句发送给技能。

谢谢

Abh*_*ave 5

嗯,我也遇到过同样的问题。经过尝试多种方法,我得到了询问Alexa的声明的完整文本。

您必须在 Alexa 技能中进行以下设置(您可以根据需要选择意图名称、插槽名称和插槽类型)

设置意图

设置意图

设置自定义插槽类型

设置自定义插槽类型

设置 Alexa 技能后,您可以调用您的技能,保留对启动请求的一些响应并说出您想要的任何内容,您可以捕获完整文本,如下所示。

"intent": {
            "name": "sample",
            "confirmationStatus": "NONE",
            "slots": {
                "sentence": {
                    "name": "sentence",
                    "value": "hello, how are you?",
                    "resolutions": {
                        "resolutionsPerAuthority": [
                            {
                                "authority": "xxxxxxx",
                                "status": {
                                    "code": "xxxxxxx"
                                }
                            }
                        ]
                    },
                    "confirmationStatus": "NONE",
                    "source": "USER"
                }
            }
        }
Run Code Online (Sandbox Code Playgroud)

注意*:在这种方法中,如果有多个意图,您将需要正确处理话语。


Nir*_*hah -1

美国英语语言有一个名为 的插槽类型AMAZON.LITERAL,可让您捕获所使用的确切短语或句子(取决于它在您的话语中的使用方式)。但是,此老虎机类型在其他地区不可用。

亚马逊也不建议使用它:

尽管您可以使用 AMAZON.LITERAL 提交新的和更新的英语(美国)技能,但在大多数情况下,自定义槽类型比 AMAZON.LITERAL 提供更好的准确性。因此,我们建议您在可能的情况下考虑迁移到自定义插槽类型。请注意,AMAZON.LITERAL 不支持英语(美国)以外的任何语言。

请参阅:https ://developer.amazon.com/docs/custom-skills/literal-slot-type-reference.html