Limitations to Chatbot Functionality: Facebook Messenger’s Chatbot API

January 19, 2018
Hot topics 🔥
Tech Insights
Dmitry Ermakov
Limitations to Chatbot Functionality: Facebook Messenger’s Chatbot API

Recently WeAreBrain built a Facebook Messenger chatbot for one of our clients, Bloom Avenue, an e-commerce startup that specialises in organic beauty products. One of Bloom Avenue’s stand out USPs is their free skin assessment which is available on their site. During the 2nd half of 2017, we began work on Olivia, Bloom Avenue’s on virtual beauty assistant, a Facebook Messenger bot tasked with carrying out the same skin assessment that’s available on the Bloom website. The objective of the assessment was to assist users that chose to participate with relevant product recommendations for their skin type. As we were also able to link these recommendations directly to the Bloom Avenue store, customers could begin the purchase process directly from Facebook Messenger. Very handy and convenient.

We ran the assessment as a survey and we structured our questions in two distinct ways. The first was a standard multiple-choice option where we provided the user with two to three options as pictured below.

The second question/answer format was where we provided the user with a list of options and they needed to type in an answer from our list. The user needed to type their corresponding response in exactly the same way that we had provided the answer, for Olivia to respond accurately and for them to progress to the next part of the survey.

Not ideal!

Why? Well even with the clearest instruction there is always room for error. Perception and understanding by their very nature are subjective, so it’s entirely plausible that a user may not recognise any of the descriptions as skin issues they have, they may use different terminology or even more concerning they had more than one issue they were trying to combat.

In this question/answer format, you’re only able to supply one option. When you input more than one of the responses supplied, the bot will only recognise the first answer and not apply the second to the set of information it was storing. These responses ultimately would provide the information that allowed the system to make the product recommendation at the end. This is both a missed sales opportunity and creates a scenario where a user may feel frustrated because the issue they feel is most problematic is not addressed.

If this format had so much room for error you may ask why we didn’t just use the multiple choice option throughout and the answer, quite simply, is that functionally you’re just not able to ask a multiple question with more than three answer options. This limitation was problematic for our skin assessment because, to make accurate recommendations certain answer options need to be grouped together and often we would have more than three of these options to choose from. So to mitigate error we have included prompts to guide a user to answer correctly but we’d prefer something a little more seamless.

As we continue to search for ways around this and are hoping for changes in Messenger Bot’s functionality, I found myself becoming curious around what other limitations you might come across when building a Facebook Messenger bot so I did a little digging. As it turns out there are a few more things that Messenger bots just simply can’t or won’t do.

In an article written by Thomas Wiradikusuma, he details two more interesting limitations of Facebook Messenger Chatbots.

Get them the first time, or not at all

With ‘Standard Messaging’, the default mode for all Messenger bots, you’re only able to send a message that is not a reply to a users comment — put more simply a push notification, within 24 hours of the user’s last message. For example with Olivia, you wouldn’t be able to send a follow-up message with another product recommendation or special to the user after they had concluded the assessment unless it was done within 24 hours of the initial conversation. Practically this negates the opportunity for ‘retargeting’ a customer later on down the line when you do have a sale or specials. Technically you are able to send one more message post that period but there are certain complexities around that you should make yourself aware of when deciding whether a Messenger bot is the bot for you. You can also apply for Subscription Messaging — another type of messaging option, but as Thomas explains its a manual application process and is only available for limited cases.

Subscribe to news but no sales here

Having said that, should you use Subscription Messaging it seems you are not able to “Promote your own products to your own customers at all times” — unless you pay for it. Let’s consider the scenario I mentioned above. Bloom Avenue has a sale or a special product offering, we’re aware that a specific customer has dry skin and said the product would be great for them. With subscription messaging (and this is where it gets a little confusing) you’re not able to send a message telling them about the sale because the rules for this type of messaging is that it is not allowed to contain promotional content. As you can see by the criteria below this type of messaging is quite restricted and of course, you need to make an application to use it in the first place.

  • Subscription Content may be sent outside of the 24-hour messaging window that applies to standard messaging
  • The recipient must opt-in to subscription messaging
  • There is limited functionality as compared to standard messages
  • Subscription messages cannot contain promotional content
  • Subscription messaging is only intended for specific use cases

(excerpt from developers guide for Facebook Messenger)

As I intimated above, you are able to send promotional content if you really want to (and let’s face it — we all really want to) but it is a paid-for ‘service’ and it’s called ‘Sponsored Messaging’. As described in the guide, sponsored messaging is similar to other Facebook Page advertising models. Your paid-for sponsored message is sent via the Facebook Marketing API, ‘which allows you to re-engage people who have previously started conversations with you on Messenger’ — provided they have not blocked your bot.

Messenger has created this handy comparison table to help you decide which option suits your needs the best but I guess we’re all still sitting here asking why can’t we just have all the functionality all at once? But I suppose, while it is frustrating, Facebook makes the rules and we do have to play by them.

So having said that I expect 2018 to be an interesting year for everything bot related and I’m curious to see how other consumer-driven platforms will deviate from the Messenger platforms set-up.

Dmitry Ermakov

Dmitry is our our Head of Engineering. He's been with WeAreBrain since the inception of the company, bringing solid experience in software development as well as project management.

Working Machines

An executive’s guide to AI and Intelligent Automation. Working Machines takes a look at how the renewed vigour for the development of Artificial Intelligence and Intelligent Automation technology has begun to change how businesses operate.