The Rise Of The Bots

@asyncjs - Alex Nicol @nicol_alexandre - #RiseOfTheBots
riseofthebots.webnicol.fr

Table of Contents


  1. What is a bot?

  2. Chatbots vs Mobile app

  3. 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

Bots are seen by some as "a sophisticated, artificial-intelligence-infused creation, capable of human interaction"

Wired UK.
bots

Chatbot: Automated agent/program that mimic human conversation, potentially using AI.

bots
bots

A bit of history

The first one: Eliza

bots

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

And, loads of messaging apps

Kik

WeChat

Facebook Messenger

Google Allo

Telegram

Skype

Slack

(SMS)

kikbots

The internet is always evolving

Browser + Website

Smartphone OS + Mobile app

Messaging platform + Chatbots

Conversational UI/UX

wired

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
https://developers.facebook.com/docs/messenger-platform

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!

wired

Requirements:

JavaScript / Node.js basic knowledge

A node.js server (or lambda)

A api.ai account

A facebook account

api.ai - Create your character:

Entities

Intents

Context

Domains (fulfillment)

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

And a lot more todo

Get the code and the Api.ai agent

github.com/alexandrenicol/WeatherStationBot

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

Thank you.