The Rise Of The Bots
@asyncjs - Alex Nicol @nicol_alexandre - #RiseOfTheBots
riseofthebots.webnicol.fr
Table of Contents
-
What is a bot?
-
Chatbots vs Mobile app
-
Hands on
Me
Alex Nicol - webnicol.fr - @nicol_alexandre
Developer @ EDF Energy R&D UK Centre
Web / Mobile / AR / Bots
What is a bot?
Bots are seen by some as "a sophisticated, artificial-intelligence-infused creation, capable of human interaction"
Wired UK.Chatbot: Automated agent/program that mimic human conversation, potentially using AI.
A bit of history
The first one: Eliza
Virtual assistants
Google Now / Google assistant
Siri
Alexa
Cortana
Natural Language Processing
"NLP is a way for computers to analyze, understand, and derive meaning from human language in a smart and useful way."
http://blog.algorithmia.com/introduction-natural-language-processing-nlp/
NLP/NLU Services
Rasa NLU
wit.ai
api.ai
Amazon Lex
...
Advantages
24/7 Availability
No queues
Asynchronous conversation
Excellent to do simple repetitive task
Minimalist UI
New communication channel
Chatbots vs Mobile app
Mobile app usage in 2016 (1/2)
https://www.comscore.com/Insights/Presentations-and-Whitepapers/2016/The-2016-US-Mobile-App-ReportMobile app usage in 2016 (2/2)
https://www.comscore.com/Insights/Presentations-and-Whitepapers/2016/The-2016-US-Mobile-App-ReportAnd, loads of messaging apps
Kik
Facebook Messenger
Google Allo
Telegram
Skype
Slack
(SMS)
The internet is always evolving
Browser + Website
Smartphone OS + Mobile app
Messaging platform + Chatbots
Conversational UI/UX
Facebook wants to be the new "OS"
In-app browsing
Instant article
Games
Texts and Calls in Messenger
Messenger Bots
Facebook Messenger Bot API
-
• Text
• Audio
• Image
• Video
• File
-
Templates:
• List
• Receipt
• Button
• Airline
-
Buttons:
• Url
• Call
• Buy
• Share
-
• Webview
• Instant article
• Log In/Out (OAuth2)
• Quick replies
• Menu
As a developer
No responsive design that need to match 947163 size of Android Screens
No Apple certificates/provisioning profile/ @£$*^%$£
Brand design guidelines, what?
NLP/NLU is really satisfying
UI != UX
HANDS ON!
Let's create a Weather Station Bot!
Requirements:
JavaScript / Node.js basic knowledge
A node.js server (or lambda)
A api.ai account
A facebook account
create a page
create an app
https://www.facebook.com/pages/create/https://developers.facebook.com
Link your facebook app to your server
Repeat bot
Link facebook and api.ai
Get data from the weather stations
Quick reply
Landing page
Get started
Menu
What about an Alexa skill?
https://developer.amazon.com/alexa-skills-kit
https://github.com/alexa/alexa-skills-kit-sdk-for-nodejs
Reminders
• Don't lie, let your users know they're talking to a bot • Handle errors, let your users know if it fails • If needed, handover the query • Create a character for your bot, but don't give them multiple personalities • Keep it simple • Listen to your users, and improve their experience • Not everything can be bot-ed • We're not good at doing repetitive tasks, we're good at experimenting, trying, failing, and that's how we learn