具体来说,我想检查地理图书馆胶囊中的某些城市。我们通过让我们的系统调用 API 来进行基于城市的搜索。
我们最终想要完成的是确保用户可以在我们有可用列表的城市进行搜索,并防止他们在我们未覆盖的地方进行无果搜索。其中很大一部分是限制我们将在其中进行搜索的城市,所以我希望我们可以限制地理图书馆将识别的内容。另一部分是,如果城市名称可能表示多个州,我们希望根据我们支持的城市动态地提供一些消歧状态提示。
所以 TLDR:有什么方法可以自定义内置的库胶囊?
具体来说,我想检查地理图书馆胶囊中的某些城市。我们通过让我们的系统调用 API 来进行基于城市的搜索。
我们最终想要完成的是确保用户可以在我们有可用列表的城市进行搜索,并防止他们在我们未覆盖的地方进行无果搜索。其中很大一部分是限制我们将在其中进行搜索的城市,所以我希望我们可以限制地理图书馆将识别的内容。另一部分是,如果城市名称可能表示多个州,我们希望根据我们支持的城市动态地提供一些消歧状态提示。
所以 TLDR:有什么方法可以自定义内置的库胶囊?
您不需要对地理库胶囊进行任何自定义。
在决定是否覆盖与特定用户相关的地点并向用户提供适当的输出之前,您只需要让您的操作获取用户的位置并添加逻辑以根据您的位置要求检查它。
添加代码来解释注释:
行动 1 模型:
action (Action1) {
description (Checks to see if initial input can be served)
type (Search)
collect {
input (initialInput) {
type (InitialInput)
min (Required) max (One)
}
}
output (VerifiedInput)
}
行动2模型:
action (Action2) {
description (Does the search)
type (Search)
collect {
input (verifiedInput) {
type (VerifiedInput)
min (Required) max (One)
default-init {
intent {
goal:Action1
}
}
}
input (searchParameters) {
type (SearchParameters)
min (Required) max (Many)
}
}
output (FinalOutput)
}
您将训练话语以达到目标,Action2
并且由于default-init
需要启动其中一个输入Action1
,Bixby 将Action1
首先通过,然后通过Action2
.