I am attempting to create a bot that both makes product recommendations, but also addresses customer support issues by creating Salesforce Cases. I’ve leveraged the Knowledge Source feature to provide all of the recommendation data, and it’s working incredibly well - it’s even fun to use!
I’m struggling on the support side though - I’m not sure if it’s because I am learning about effectively writing directives as I go.
This data collection (to me) is effectively the same as collecting a lead. For this reason, I am currently leveraging the Collect Leads action, and I’ve added the fields I want to collect (same as the default with the addition of a Description field). Frankly, it works pretty well - it collects all of the information, and I have a Zap triggering off the Collected Data, doing some light data transformations and sending to Salesforce.
It’s just not very intuitive from the user’s perspective and I’m struggling to fix it (if it can be fixed) using the Directive.
- If this is even possible, how do I instruct the bot to ask 1 question for one piece of data? Currently it will say something like “provide your name, email, phone, company etc” all in one question. I really want it to ask 4 separate questions, repeating questions if it can’t automatically parse the user input correctly.
- If this is even possible, how can I instruct the bot to not re-ask for specific information? For example, if the chat contains two user reported “order problems” I’d prefer to not ask the same user twice for their name, email, phone and company - but rather just their new problem statement.
- Is there a better way to solve this than using the “Lead Collection” action?
- Lastly - I am leveraging querystring parameters to pass in certain data. For example, Name and Email is available via {{params.name}} and {{params.email}} respectively. Is there a proper way to inform the chatbot to use these parameters for the lead collection, and only ask if they aren’t provided?