Dispatcher.utter_message(response) is not working

I am trying to send response via dispacther but it not working but sending text message via dispatcher works fine.

class ActionGreetUser(Action):
def name(self) -> Text:
    return "action_greet_user"
async def run(
    self,
    dispatcher: CollectingDispatcher,
    tracker: Tracker,
    domain: Dict[Text, Any],
) -> List[EventType]:

    dispatcher.utter_message(response="utter_greet")
    dispatcher.utter_message(text="Hello World!")
    dispatcher.utter_message(response= "utter_func")

    return []

Here, the message is displayed but the 2 responses(utter_greet and utter_func) are not being displayed. Help needed?

Sometimes Rasa X does not display messages for some reason. Does it work if you use rasa shell?

Also, what version of Rasa are you using?

Rasa version: 2.0.2
No, it is not working on rasa shell also. What should then be the reason because for text it works fine but not for responses.

1 Like

Okay so it’s because of the version. Before 2.4.0, use dispatcher.utter_message(template = ...) instead of dispatcher.utter_message(response = ...).

1 Like