Buttons Response Issue - Button send as text the intent name - Rasa Open Source - Rasa Community Forum

👋 Introducing the Rasa Playground

Buttons Response Issue - Button send as text the intent name

849 views

post by EvanMath on Oct 17, 2021

Hello everyone,

I don’t know if something has changed but I tried to run a chatbot I have implemented it a month ago (back then anything ran fine) and a new one and both have the same issue.


utter_ask_pick_from_floor:
  - buttons:
    - payload: /inform
      title: Impossible
    - payload: /inform
      title: Difficult
    - payload: /inform
      title: Easy
    text: Could you, please, indicate how difficult you perceive picking up something from the floor

forms:
  activlim_form:
    required_slots:
      doorbell:
      - intent: inform
        type: from_text
      heavy_load:
      - intent: inform
        type: from_text
      pick_from_floor:
      - intent: inform
        type: from_text
      user_id:
      - entity: number
        type: from_entity
      walking:
      - intent: inform
        type: from_text

Assuming the above. There is a slot named pick_from_floor which I want to fill when the intent is inform by using buttons. But all buttons assign the value /inform instead of the corresponded title.

A note here is that I have the same code on my previous bot, which a month ago was working fine but now neither does it. Any suggestions?

It works fine if I do this


utter_ask_pick_from_floor:
  - buttons:
    - payload: Impossible
      title: Impossible
    - payload: Difficult
      title: Difficult
    - payload: Easy
      title: Easy
    text: Could you, please, indicate how difficult you perceive picking up something from the floor

post by ChrisRahme on Oct 17, 2021

Hello!

You could send entities with the payload instead of just the intent, then use from_entity mapping:


utter_ask_pick_from_floor:
  - buttons:
    - payload: '/inform{{"difficulty":"impossible"}}'
      title: Impossible
    - payload: '/inform{{"difficulty":"difficult"}}'
      title: Difficult
    - payload: '/inform{{"difficulty":"easy"}}'
      title: Easy
    text: Could you, please, indicate how difficult you perceive picking up something from the floor?

forms:
  activlim_form:
    required_slots:
      doorbell:
      - type: from_entity
        entity: difficulty
      heavy_load:
      - type: from_entity
        entity: difficulty
      pick_from_floor:
      - type: from_entity
        entity: difficulty
      user_id:
      - type: from_entity
      entity: number
      walking:
      - type: from_entity
        entity: difficulty

post by EvanMath on Oct 17, 2021

I agree, but why this happens? Everything I have found as a resource regarding Buttons, give this way too. Has something changed regarding buttons?

post by ChrisRahme on Oct 17, 2021

I’m not sure to be honest.

I haven’t done it your way in a while, but I remember that when clicking a button, the text used to be the button’s payload and not title. Maybe it changed and then went back to how it was again?