【问题标题】:Search Functionality in Alexa skillAlexa 技能中的搜索功能
【发布时间】:2016-11-30 10:32:26
【问题描述】:
我正在构建播放音频的 Alexa 技能。音频具有标题、扬声器和其他属性。
问题:我想在我的技能中添加搜索功能,以便用户可以根据标题或演讲者姓名等播放音频。我该如何实现?
用户如何根据一些自定义字符串(扬声器、标题)进行搜索并将该字符串传递给我的技能?,我将在其中编写逻辑来搜索该音频。
我知道自定义意图和插槽,但我不知道它们在我的情况下如何工作。
请指导。我只需要一些起点。谢谢。
【问题讨论】:
标签:
node.js
alexa
alexa-skills-kit
alexa-voice-service
alexa-slot
【解决方案1】:
是的 - 您需要查看的是 custom slots。
你的intents.json
{
"intents": [
{
"intent": "GetAudio",
"slots": [
{
"name": "Query",
"type": "QUERY"
},
]
},
],
...
}
您定义的话语
您的话语可能包括以下内容:
GetAudio search for {Query}
GetAudio find audio matching {Query}
用你的技能处理请求
当你的技能接收到意图时,它会得到一个IntentRequest
充满您定义的任何插槽。因此,如果您如上所述定义了Query 的自定义槽(并理想地填充了示例搜索以改善匹配),您可能会收到类似的信息:
{
"type": "IntentRequest",
...
"intent": {
"name": "GetAudio",
"slots": {
"Query": {
"name": "Query",
"value": "jimi hendrix"
}
}
}
}
因此很容易检索value 字段并使用您的内部逻辑进行搜索。
希望对您有所帮助。
【解决方案2】:
您可以通过定义一个 AMAZON.SearchQuery 类型的自定义槽来实现。
所有详情here