rasa icon indicating copy to clipboard operation
rasa copied to clipboard

Slack init message

Open koszta5 opened this issue 4 years ago • 7 comments

Proposed changes:

  • Allow slack channel to support welcome message pattern by forwarding to init intent automatically when a user interaction with chatbot starts
  • fixes #7366 Status (please check what you already did):
  • [] added some tests for the functionality
  • [✅] updated the documentation
  • [✅ ] updated the changelog (please check changelog for instructions)
  • [✅] reformat files using black (please check Readme for instructions)

koszta5 avatar Nov 25 '20 12:11 koszta5

CLA assistant check
All committers have signed the CLA.

CLAassistant avatar Nov 25 '20 12:11 CLAassistant

Thanks for submitting a pull request 🚀 @rgstephens will take a look at it as soon as possible ✨

sara-tagger avatar Dec 01 '20 08:12 sara-tagger

hi @tmbo - yes I m aware of that. But you are kind of proving my point by your reply.

we have session_started event that we emit if a new conversation is started If you read the article that I provided (and I can provide more as a proof) the good default behavior of chatbot should be that it actively send the 1st message to user.

Which current solution using session_started is incapable of. This solution will only react to user's first message. Which is putting the burden on user having him/her understand what the chatbot can do or having to ask the obvious question what can you do for me?

The burden of having to figure out the "init" of the user is not that hard. Bottom line - this behavior is optional and this fact is clearly documented in changed doc files.

koszta5 avatar Dec 11 '20 08:12 koszta5

@tmbo any updates on this? :D

akelad avatar Feb 17 '21 10:02 akelad

I agree that there is a use case for this and that it is earlier than what we currently call "SessionStarted". I do think that we need a more general approach to this though, that works across channels.

I don't think using a special intent is the right approach for this for different reasons:

  • you'd be able to create stories that start with init and some that don't, but what is the difference?
  • to generalize this and to be able to get access to as much information about the user as possible, you'd want to have access to more meta information when writing this initial message. You might want to look up the user in a DB and respond with user-specific information, e.g. "Hey there Sara, you got 3 bills awaiting payment, do you want me to make a transfer?"
  • backwards-incompatible (at least in its current implementation)

I think we should at least think about more generalisable/alternative approaches to support this use case, e.g.

  • add an event that gets triggered before a user initializes a conversation, on chat window open
  • move the sessionstarted event to get triggered earlier

tmbo avatar Feb 17 '21 13:02 tmbo

@tmbo - I like your ideas - they make sense to me.

I think we should at least think about more generalisable/alternative approaches to support this use case, e.g.

  • add an event that gets triggered before a user initializes a conversation, on chat window open
  • move the sessionstarted event to get triggered earlier

which of those 2 makes more sense from your point of view? I could understand both but maybe for the purpose of compatibility there could be a new event called sessioninitiated?

Something like that? When I get some time I would look into it and try to implement this (I hope that I find the right place in code :P )

koszta5 avatar Feb 18 '21 15:02 koszta5

This PR has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions.

stale[bot] avatar Apr 16 '22 07:04 stale[bot]