Chatbot interfaces

Post on 06-Jan-2017

1,770 views 0 download

transcript

Chatbot InterfacesPatrick CullenSenior Technical ArchitectWeb Engineering

What is a chatbot?

• Listens in chat room• Takes action• Returns results

Chatbot 101

Why use chatbots?

Development cost

command line chatbot website mobile app

Deploying updates

command line chatbot website mobile app

Push notifications

command line chatbot website mobile app

• Simple to develop• Asynchronous notifications• Integrates with team

Chatbot advantages

How do I build a chatbot?

• Define a grammar• Take action• Return results

Chatbot design

<Action> <Type> <Parameters>

deploy app rutabaga

show cluster alpine

Define a grammar

Hello World

me: deploy app rutabaga

>POST http://api/deploy?app=rutabaga

Take action

me: deploy app rutabaga

>POST http://api/deploy?app=rutabaga

bot: deploying app rutabaga

bot: app rutabaga is running

Return results

Advanced topics

• POST endpoint• Integrate non-chat system

Webhooks

• Shorter commands• Auto completion• POST to webhook

Slash commands

• Define security groups• Restrict commands• Tokens on webhooks

Security

Nile demo

Questions