DialogFlow:Intents 和@sys.any 类型中的字母数字(固定长度)参数

DialogFlow: Alphanumeric (fixed length) parameter in Intents and @sys.any type

我在 DialogFlow 中有一个意图,它接受来自用户的 input/parameter 以进行验证。该参数是固定长度的,并且是字母数字(例如 ABC1234)。对于不同的用户,它是一个不同的随机 ID。使用 webhook 调用在后端验证数据输入。

为了接受输入值,我必须将参数类型设置为 @sys.any。它确实有效,并将值传递给 webhook 进行验证。但由于此意图没有 "Input contexts",因此永远不会触发下一个意图,因为来自用户的每个输入都被评估为 @sys.any

我需要的是一种接受自定义值的类型。但我找不到任何。

这是意图的屏幕截图:

另请注意,未触发的下一个意图具有 "In context" = authentication 并且用户说出 book me 这样的表达式。由于上述意图中的@sys.anybook me导致上述意图触发。

这个问题有类似要求但没有答案:

另外:https://discuss.api.ai/t/alphanumeric-support/2572

这在 Dialogflow 上是不可能的。例如,您可以使用正则表达式在您的 webhook 中实现。

所以经过一番挖掘,我不得不改变方法。也就是说,@sys.any 不是要走的路。我选择使用输入参数的数字部分(最后四位数字)而不是 alpha-numeric,并在服务器 end/webhook 上处理任何重复。我使用的类型是 @sys.number-sequence.

我仍然必须以 number-sequence 的任何输入都不会触发此意图的方式处理上下文。