Hi,
How can I write a rule in RASA 3.0 (using rasa shell) that would initiate the conversation.
For example instead of a dialog\
User: Hello\
Bot: Hello, how can I help you?\
User: Could you solve my problem with ...
I wish to obtain:\
Bot: Hello, how can I help you?\
User: Hello, could you solve my problem with ...
Welcome to the forum
There are so many threads asking this already, please check them out:
http://forum.rasa.com/search?q=start%20conversation
I picked some of them for you:
Thank you for replying.
I read suggested threads. They explained the topic thoroughly.
However, it is a pity that, for such basic functionality, one has to code the starting action in frontend application instead of writing a rule like:
- rule: welcome message
conversation_start: true
steps:
- action: utter_welcome_message
You need to understand how socketio or rest based channel works, unless a connection is established how rasa will know, this can only be achieved through front-end. If you can go through this Repo you will be able to understand how frontend is playing a role for these kind of tasks in socketio folder.
1 Like
I agree, it would have been so much better.
But, as @bharath-madduri said, you need to open the channel to the bot first, which makes sense.
I understand that connection must be established before the start of communication. However, the frontend may open a channel before the user make his first utterance (for example when a widget with webchat is shown on screen). Then a predefined intent that trigger a welcome message may be sent to RASA via this channel. I expected that such functionality is a part of the library and do not need to be encoded separately for each application.