If your chatbot target is to create potential leads or groups of people interested in one or more products you are well aware of how lost conversations represent a good percentage of your contacts.
A lost conversation is basically when a user drops out of your flow before signing up for your service or completing the list of questions you’ve prepared.
How can we get back to the user sometimes later to try to reconnect? Let’s read on and learn how you can easily do it with Xenioo.
Hello? Is There Anybody Out There?
Let’s consider a very simple chat flow like this one:
This flow, on Whatsapp (as an example) lead to a conversation like this:
After this, our user leaves the conversation. Since we want to detect these cases, the first thing we need is a way to check if the user has passed our question. We are using a tag action for this and changing the flow as follows:
Basically what we are doing is set a WAITING_ANSWER tag before the question and remove it right after. This way we know that if a conversation has a WAITING_ANSWER tag then the user is waiting at the input, otherwise the flow has completed and we’ve our email.
Setting Up Your First Broadcast
What we need to do now is create a broadcast that now and then checks for all users that still have the WAITING_ANSWER tag and contacts them to check back. Using broadcasts you are basically creating a “Scheduled Task” that your chatbot can execute every specific interval.
Since we don’t want to check back to all users every hour we make sure to create and select a specific user that can be quickly generated using the Broadcast Audience Creator. The resulting filters will look similar to this:
Once the basics are down we can move to the Design section of the broadcast, where we can lay down the part of the flow that handles the reconnection. The broadcast design is identical to the general chatbot design and in fact, you can do here everything you can do in your normal chatbot.
After saving (and enabling!) the broadcast we can go ahead and test our reconnection with our previous conversation. When the time you’ve chosen for your broadcast is triggered, Xenioo will automatically send your message to the user.
At this point our user is back in the game and its again up to us to re-engage the conversation so that it is lead to our desired conclusion.
Wait! We Can Do Better!
While our previous example is simple and effective, it has a couple of flaws that will become very clear as more users are reached and more time is spent online by our chatbot.
- The broadcast is executed at a specific time, regardless of when the user abandoned the conversation. A user that left the conversation 5 minutes ago would be contacted together with someone who left it an hour ago. It would be better to have a relative time for every single user so that the chatbot gets back after a given amount of time
- After the broadcast, there’s no way for the user to go back to the flow that was executing. Even if we get back to the user we’re not moving back to the question that is important for us.
On Trigger broadcasts are one-to-one user broadcasts that are triggered by a specific user action. While audience rule are still applied to this broadcasts only one user will be receiving it based on its conversation triggers.
So, for example, for our bot, we can select a trigger that starts 20 minutes after Last Interaction: this configuration means that after 20 minutes from the last time a user wrote something the trigger will start. This is just perfect for us because it’s exactly what we need: if our user goes idling for more than 20 minutes we go and try reviving the conversation.
“On Trigger” broadcasts are always targeting a single user in a single conversation but you can still use audiences to filter for a very specific user variable or tag so that even if the broadcast is triggered it is not sent.
What Was The Question Again?
Our second bullet point is little trickier but still very doable.
What we need to do first is split our flow into two parts like below:
We have basically moved all but one action to another interaction and linked them with a Go To Action. All of this can be done very quickly by simply dragging and dropping the desired contents and has only one purpose: to have a single, repeatable interaction to be invoked later by our broadcast and we will see very soon why.
In our broadcast, we are changing the flow so that the user can be asked if there’s still a chance to complete our flow and if the answer is yes we can now redirect to the Ask Email interaction.
The user will see again the question (which is fine as we’re giving some context to the request) and will be back from where the conversation was left.
This is how our final conversation may look like:
A much better result. The user is reconnected with a brief interaction and the chatbot is capable of reconnecting back to where the user left. A good user experience overall and a good way of pushing to all your idling contacts.
If you look at the conversation it now becomes clear why we did the initial split into two interactions: we can now redirect the user to the initial step of the question, repeating the brief explanation text that gives context to the question.
I Wish I Had Just One Question Like You!
Yes, of course! Chatbots are rarely a matter of just one question and if you have more than two, or three? Or twenty? Having so many questions may make building this kind of approach really difficult.
But once again, we have a neat solution.
For any case when you need to redirect to a dynamic point in the conversation that you really don’t know beforehand you can use a bookmark action.
A bookmark action will basically put a bookmark (how unexpected! ;)) on the current interaction. After the bookmark action is executed you can use any Go To Action to redirect there in any part of the flow.
Lets expand our initial example to a more complex one. With multiple questions, we could design our chatbot to be something like this:
As you can see, the flow isn’t actually much more complex. It is just a bunch of questions one after another but we have now added a Bookmark action on top of each interaction. Now we know exactly where the user is stuck.
The change in our broadcast design is even easier.
All we need to change is the tiny Go To option from “Absolute” to “Bookmark”. What will happen is that Xenioo will automatically redirect the user to the last dynamic bookmark position.
And that’s it! We have now our full reconnection flow with personalized followup and dynamic question redirection.
Time Is Of The Essence
Privacy settings and platform-specific limitations may be stopping your reconnection plans. Reconnecting with users after a long while may catch them by surprise in an unpleasant way.
While some platforms like Telegram or WhatsApp will not stop you from doing so, some others, like Facebook may try to ban your page for attempting mass contact outside of Message Delivery time windows.
We just did a deep dive into some of the most interesting features of Xenioo.
In this post, we’ve been highlighting both its power and flexibility. You should now have the basics for adapting your chatbot flow and create an even better chat experience.
If you are not sure about the best way to check back to your users or how to create a chatbot like this or even how to comply with different platform’s rules, feel free to contact our team at firstname.lastname@example.org or leave a message on our Facebook Group.