After introducing Telegram chatbot creation less than a month ago, here at Xenioo we really felt that one more chat platform was missing: WhatsApp (seriously, how many of you are continuously asked about Whatsapp bot?).
WhatsApp is among the most common mobile and desktop chat applications. Boasting millions of active users it can easily be one of the best platforms for customers relations and marketing communication.
Today we will see how you can create and deploy a complete WhatsApp bot using Xenioo.
Creating your chatbot
The Xenioo approach to chatbot creation can be defined as “design first”. You never select what is your target platform until you publish: this means that you can create your chatbot once and simultaneously deploy on multiple platforms.
At the same time, it also means that you can create conditional branches and dynamic contents based on Xenioo variables that can tell you where the chat is running.
There’s no limit to the number of cases you can build.
You can go from a standard plain chatbot that doesn’t really need any variable up to complex, looping and even recursive designs.
It’s awesome! You can design your chatbot with the business model in mind and later adapt it to the specific channel like it would be for the Whatsapp bot.
What and what not
Different channels support different contents in different ways.
WhatsApp can do a lot of things, but not everything: buttons, carousels or lists, for example, are not supported. These contents will still be displayed if your chatbot runs, for example, under Telegram but will remain invisible in a WhatsApp conversation.
To avoid using unsupported content, make sure to check the relevant platform icon you can see on every action: just hover the mouse to access a detailed description of the expected behavior.
You’ll quickly notice that some icons are red while others are orange. A red icon marks an unsupported action while an orange icon marks an action that may not exactly behave as expected or that may miss some functionalities.
Keep in mind that you can use all the power of Xenioo and its “backend” actions to boost your Whatsapp bot with a built-in NLP engine and Integrations.
Publishing the chatbot to WhatsApp
Once you’re happy with your chatbot, you can proceed to activate the WhatsApp channel.
As you can see below, the configuration is quite simple.
1) Service Provider
Xenioo supports WhatsApp through external service providers that you can freely choose. We will update this list from time to time as new and better providers appear or, as soon as WhatsApp API become available to offer our self as providers.
The connection between Xenioo and the provider is fully transparent to you and you’re free to move from one to another keeping the very same chatbot functionalities.
Different providers offer different advantages at different costs. The table below is a brief recap of the currently offered provider’s capabilities:
|APIWHA||User supplied. Attached to user mobile number.||Through WhatsApp Desktop. Integrates with standard QR scan from a mobile phone.||Medium/Low|
|Waboxapp||User supplied. Attached to user mobile number.||Through WhatsApp Desktop. Requires Chrome Plugin.||Medium/Low|
|MessengerPeople||Dynamic. No user phone required. Can scale to multiple numbers.||None required. No mobile phone required.||Medium/High|
|Twilio||Dynamic, on demand. User can pick phone number country. Can scale indefinitely.||None required. No mobile phone required.||Medium/Very High|
You should evaluate carefully the right provider for your use case, balancing what they offer in terms of features and costs.
2) Sender Phone Number
This is the phone number associated with your chatbot. Not every provider needs that so write it here only if it is specified on the provider panel.
Xenioo will filter every incoming message that is not directed to the number specified here so make sure that this is the number that the provider is displaying as integrated/connected.
Remember to write here the number exactly as specified on your provider panel. Be sure to have both this number and your provider number to match perfectly (don’t use + or / to split the numbers if your provider isn’t using them) as a wrong number here may lead to lost messages or conversations.
3) API Key
This is the provider API key you can copy and paste from the provider API panel. It will create the join between Xenioo and the provider you choose. Be sure to copy the full value from your provider panel here.
4) Hook Url
This value will be already filled for you and, as needed by the provider you choose, used to configure the integration settings.
This URL will create a bridge between your selected provider and Xenioo, sending real-time updates for every message sent through WhatsApp. Copy this value inside your selected provider panel as requested.
Filtering Numbers and Taking Over Conversation
Some providers are fully capable of integrating directly with your own phone number. This is very handy as you do not need to have a brand new number but instead, you can attach to the one you already have (maybe a support/customers phone) but it may be a problem if you do not want Xenioo to take control of each and every conversation.
To help you manage these situations, we’ve added a handy filtering feature that you can configure to include or exclude specific phone numbers in full or using partial wildcards (e.g. 0389* for all numbers starting with 0389).
As with all Xenioo channels, also every WhatsApp conversation will be available under the conversation tab and will be fully controllable by you. At any point, you will be able to take over the conversation and chat directly with your user from the Xenioo interface!
Ready to build your first chatbot for WhatsApp? You can signup right now for free!