如何在处理rasa中的按钮时禁用用户输入?

时间:2020-04-25 22:38:22

标签: python-3.x rasa-nlu rasa-core rasa rasa-x

对于使用Rasa和堆栈溢出我还是陌生的。 我正在Rasa中创建一个餐厅搜索机器人,但按钮上存在问题。

utter_ask_budget:
- buttons:
    - payload: cheap
      title: Lesser than Rs. 300
    - payload: medium
      title: Rs. 300 to 700
    - payload: expensive
      title: More than 700
    text: what is your budget?

我创建了此响应,并在请求预算时显示了按钮,但问题是它还显示了文本输入字段,以便用户可以在该字段中输入自定义值。我不希望那样发生。我想将响应限制为仅无文本字段的按钮。我在Rasa论坛上进行了检查,但无法理解答案。

因此转向堆栈溢出社区。

对于此问题的任何帮助,我们将不胜感激

谢谢

2 个答案:

答案 0 :(得分:0)

我想当您指的是“文本字段”时,是指用户通常在哪里键入消息。我认为您不能禁用该功能:这些按钮允许向用户提供预定义的选项,易于使用,但他/她可以决定键入一条消息。

在这种情况下,您需要验证收到的消息是预期值之一。

答案 1 :(得分:0)

您可以通过使用模板中的“ custom:”键发送自己的自定义元素。

这是我的例子:

utter_buy.confirm:
    - text: "Are you sure?"
      buttons:
        - title: "Yes"
          payload: "/affirm"
        - title: "No"
          payload: "/deny"
      custom:
        input_type: "disable"
        back_button: true
        exit_button: false

别忘了在下一封漫游器消息上重新启用按钮……