0

我的机器人问:“你(即客户)想如何为这个产品付款?”

客户说:“部分现金和 48 倍的差价”

客户上面说的是他想用现金支付并使用融资。该融资应考虑分期付款 48 期。

实体:

  1. 支付类型:{现金,融资};融资包括 48x 作为同义词

  2. 安装次数:{12x, 24x, 36x, 48x} ;48x 是所需的分期付款次数

仅使用 GUI,如何执行此操作: IF 用户说 '48x' THEN 同时将 'financed' 添加到 paymentType 列表并设置 numInstallments 等于 '48x' ?

显然,除非我做错了什么,否则 GUI 不允许我这样做(请参见屏幕下方,它允许将参数映射到实体并注意此下拉列表显然允许选择单个实体而不是两个实体,其中是我需要的)。

如何通过 GUI 轻松解决这个问题?

在此处输入图像描述

4

1 回答 1

0

我不知道您的想法在这种情况下是否真的可行。

您可以做的是保持意图和实体不变,然后在您填写此参数的页面或另一个页面中创建几个条件(我认为这是首选)。在该页面中,您可以在您的条件为真的情况下放置不同的路线,以根据需要修改您的参数。

例如,在询问用户他们想如何付款后,您可以有一条路线进入“设置参数”页面,该页面有几个路线:

  1. 第一条路线有一个条件 $session.params.numeroDeParcelas != null (你知道用户已经询问了具体的分期付款数量,所以通过设置你需要在这条路线中的参数来处理这种情况(在路线中的参数下写 paymentType :“资助”)
  2. 第二条路线有另一个条件,例如 $session.params.numeroDeParcelas = null (你知道用户没有要求融资,所以设置与之前相同的参数为“现金”)

依此类推,直到您用尽了您的用户案例(所有支付方式,可能所有类型的融资)。 注意:路由总是按顺序进行评估,因此在编写/排序它们时请务必牢记这一点:具体避免错误地完成错误(例如,通过创建复合条件,链接参数检查,如$session.params.numeroDeParcelas = null AND $session.params. numInstallments = "36x"

于 2021-05-05T18:29:31.240 回答