Robin Jewsbury
Aug 6, 2016 · 4 min read

How to Create Bots and Skills for Facebook Messenger, Amazon Echo and Google Assistant (updated Jan 2018)

Image for post
Image for post

First of all, let’s explain what Bots and Skills/Actions are. A bot is a server application that can answer questions as though they are a real human — bots use chat messages to work and with Facebook this uses Facebook Messenger. A skill/action (skill for Amazon and action for Google) is similar but uses the human voice to communicate. The best example of the latter is Skills for the Amazon Echo. This Amazon Echo device is launched in the US, Canada, India, UK and Germany/Austria (soon to be released in Australia/New Zealand. Google Assistant is available in US, Canada, UK, France and Germany/Austria.

Our goal has been to create a server app that works equally well as a bot and a skill/action. To some extent this is quite difficult, because the two systems work in different ways. When programming skills, you pre-define a set of things called Sample Utterances, Intents and List of possible data (Slots/Entities (Slots is the Amazon name and Entities the Google name)), which can act as variable parameters within Sample Utterances. You then respond on the server to intents, and complete further processing to ensure that you are interpreting the correct words. Bots don’t have these concepts, but we still use them in our server code. Both types need to process the data received.

For example, we can have a Sample Utterance like this:

My home station is {station}

where {station} is a slot defining an array of all possible London underground stations. Even though the echo or assistant checks the station name against possible slots/entities, it will still pass on an unrecognised station name so that the server checks the name again. Additionally, we also perform a sounds-like check to get a number of possible stations. If the name is not recognised it will say this, but will suggest a number of possibilities. On the messenger version, we additionally accept the first 3 characters of the station name, and create a list of possible stations as buttons that you can press in the user interface. The only other complication involves the Skills you need to keep the conversation going. Amazon do not like you keeping the conversation open unless its clear that you are asking the user a question — you have to get the wording right and acceptable to them. (I think this paragraph needs to be clearer)

This is an exciting area because it opens up a totally new type of user interface for users and businesses. If the programmer gets it right, this User Interface can be far more effective, and easier to use, than desktop or Phone UI. In some circumstances, using voice is better. Take for example a stressful share dealing desk, where the pressure and time intensity is such that typing or using a mouse on a computer is too slow — the user can say, “Ask Footsie what are today’s highest risers”, and then “buy 100 grand of Tesco”. You could potentially also set up voice defined alerts and “Ask Footise to alert me when any FTSE100 shares increases by one percent in a 10 minute period”. In this case, the input is via echo but the alert uses Facebook messenger. Notifications will be made available directly to Amazon Echo but this functionality is currently restricted to certain developers only.

There are a million possibilities for using this new paradigm for businesses. Business examples include stock control in warehouses and sales reporting when on the road. For every example where companies have started to use mobile phone apps, you’re likely to find a case where using a bot and/or skill will bring an improved user interface.

We’re working on solutions using Facebook Messenger, Google Assistant and Amazon Echo or Alexa Voice service — these are free, and actually work much better than the systems that companies buy. The cost savings and increased usability of such a solution is massive.

Google have a tool called This can be used to develop the solution for Google Assistant and other bots including Facebook and with reduced functionality Amazon Echo. However for the Facebook and Amazon Echo it is superficial and would not recommend using it- it is better to use each company’s tools directly.

At, we’re working on some of the examples listed above for businesses. We are unable to provide additional details of this, as they are commercially-sensitive — this technology can leap frog competitors systems. However, the London Underground Train times for Facebook Messenger and Amazon Echo are available and are totally free to show potential customers what is possible. The bot/skill is called “Whens My Train” on Facebook, which you can initialise by following this url: On Echo, you go to the skills list at (NB you need to have a US username on Amazon for this but anyone can get one) and search for “When is my train”.

Anyone interested in such a service for their business please contact us at

ShareShare How to Create Bots and Skills for Facebook Messenger and Amazon Echo.

Welcome to a place where words matter. On Medium, smart voices and original ideas take center stage - with no ads in sight. Watch
Follow all the topics you care about, and we’ll deliver the best stories for you to your homepage and inbox. Explore
Get unlimited access to the best stories on Medium — and support writers while you’re at it. Just $5/month. Upgrade

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store