How to handle not defined Input (Keywords)

(Peter Wolter) #1

Hey guys,
I’m new to Flow XO and simplified: I want to use it for an FAQ. I’ve made the paths to the most asked questions with Shortcuts (Keywords) like “sick” which triggers the action “Send Message Sick”. So far so good. But if the user types “ill” instead of sick the bot will restart with Hello this is test console. I know that it’s possible to use a send message Box with a lot of Does not contain filter (in this example does not containt sick). I have nearly 30 keywords and i dont want to have 30 does not contain filters. Is there any better way?
Thanks in advance

(Nathan Stults) #2

Hi Peter,

There is indeed a much simpler way to organize your FAQ that doesn’t require all those filters. You may be using a “Catch All” trigger to catch every input, and then trying to use filters to capture the phrases you want and show a certain result.

But a much easier approach is two have two flows - one with a “Catch All” that only deals with phrases the bot doesn’t understand, and says something like ‘Sorry, I didn’t understand that - here’s what I can do’ etc

Then you have one or more content flows that use a New Message trigger, and you use groups to organize similar phrases like “sick” and “ill” - you can then use a single filter in your content tasks that says something like “NewMessageTrigger.group = ‘sickeness’”

Please take a look at the first part of this article: Triggers which explains it. You can also check out our ‘Small Talk’ template for an example that shows how to use groups like this.

If you follow that pattern, you will usually need only one filter item per message.

Let us know if that makes sense and solves your problem.

Nathan

(Peter Wolter) #3

Hey. Big thanks for the fast answer. I’ve made two Flows but I dont want the second Flow (Catch all Flow) to start right from the beginning, only after the user gives an unknown input.How can I do that?
And how does Flow XO handle input with mulitple Keywords (Person writes: Sick and help in one textinput: Sick and help are keywords for different Text messages).

(Nathan Stults) #4

When the bot first starts it sends the message “start” - this is what the Catch All is triggering on. You can put a filter on your Catch All trigger that says “message” does not equal “start” and that should prevent it from kicking off immediately.

I don’t really understand your second question - if someones writes sick and help in one text input, but sick and help are actually two different paths, what would you want to happen? There isn’t a good way to handle that. What would you expect to happen in this case?

(Peter Wolter) #5

Sorry, i’ll try again. So I have a FAQ with different topics like “What to do when I’m sick” or “Where can i park my car”. It may be possible that a user has two questions and ask both in one message: “Hey bot I feel sick and where can I park?” In this message are two keywords for the bot “sick” and “park”.

I tried this example with my bot and it only triggers one Send Message Action (in this case the Where can i park Message). For my bot it would be perfect if he can react on messages with more than one keyword and then asks the person sth. like "Sorry, this is to much for me: Do you want information for “keyword 1” or "keyword 2 (or keyword x and so on). " I hope I could make my issue clearer and thanks again :slight_smile:

(Nathan Stults) #6

Hi Peter,

That is a pretty sophisticated requirement. There is nothing built into Flow XO that could help you there. I would normally recommend you to use our Dialogflow integration when you have advanced Natural Language Processing needs, but even that tool doesn’t have an out of the box solution for what you’re trying to do, unless you have already a prepared list of common pairs of questions. Even then it would probably take a lot of trial and error for the bot not to get confused. Your best bet may be to be very explicit with your users if you find them frequently doing this and say something like “Remember, I’m just a robot - please only ask one question at a time” in your introductory text.