Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Plugging in your Bot - An extensible bot framework for Drupal 8
Search
Rafael Silva
April 25, 2017
Programming
1
400
Plugging in your Bot - An extensible bot framework for Drupal 8
Presentation at DrupalCon 2017 Baltimore
Rafael Silva
April 25, 2017
Tweet
Share
More Decks by Rafael Silva
See All by Rafael Silva
Drupal 8 on your Apple TV
rfsbsb
0
86
Drupal - um poderoso CMS em PHP
rfsbsb
1
51
CSS 3: A Web com mais estilo
rfsbsb
0
120
Palestra sobre Drupal
rfsbsb
1
55
Drupal para Freelancers
rfsbsb
1
50
Other Decks in Programming
See All in Programming
PostmanでAPIの動作確認が楽になった話
h455h1
0
180
Netty Chicago Java User Group 2024-04-17
sullis
0
200
Domain-Driven Transformation
hschwentner
2
1.5k
Site Reliability Engineering for GMO
pyama86
8
1.1k
Let's learn code review
riofujimon
2
570
Apache Hive 4 on Treasure Data
ryukobayashi
1
410
if constexpr文はテンプレート世界のラムダ式である
faithandbrave
3
670
初心者のためのRubyKaigi入門/RubyKaigi Introduction
a_matsuda
8
1.4k
GraphQLサーバの構成要素を整理する #ハッカー鮨 #tsukijigraphql / graphql server technology selection
izumin5210
4
900
SIMD Parallel Programming with the Vector API
josepaumard
0
220
Implementing Design Systems in Swift
seyfoyun
1
440
Fast JSX: Don't clone props object #28768
yossydev
1
160
Featured
See All Featured
Building Applications with DynamoDB
mza
88
5.6k
Product Roadmaps are Hard
iamctodd
45
9.7k
Why Our Code Smells
bkeepers
PRO
331
56k
Put a Button on it: Removing Barriers to Going Fast.
kastner
58
3.1k
4 Signs Your Business is Dying
shpigford
176
21k
YesSQL, Process and Tooling at Scale
rocio
165
13k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
358
22k
Fashionably flexible responsive web design (full day workshop)
malarkey
398
65k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
126
32k
The Brand Is Dead. Long Live the Brand.
mthomps
49
29k
Principles of Awesome APIs and How to Build Them.
keavy
121
16k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
41
4.4k
Transcript
Plugging in your Bot An extensible bot framework for Drupal
8
Who we are & @rfsbsb @ezufelt
We build the right thing, fast. @myplanetHQ
PREMISES • This talk is not about AI • This
talk is about chatbots, Drupal and the end user • This talk is also about extending Drupal with plugins
WHAT ARE WE GOING TO COVER? • Chatbot overview •
Common use cases for chatbots • Current state of chatbots and Drupal • Our implementation • Demos • Future for chatbots and Drupal
What are chatbots?
A chatbot is a service, powered by rules and sometimes
artificial intelligence, that you interact with via a chat interface. “ Chatbot Magazine
Common use cases
EXAMPLES OF CHATBOTS • Weather/forecast (HiPoncho Facebook bot) • Survey
(Surveybot) • Todo list (Todobot) • News (CNN Facebook bot) • Catalog/buying options (Nordstrom bot) • Just chat (Xiaoice)
Chatbots and Drupal
CHATBOTS AND DRUPAL • Bot • AIML Parser • Facebook
Messenger Bot
Enter the Chatbot module
THE CHATBOT MODULE • Drupal 8 • Forked from Whitehouse’s
Facebook Messenger Bot module • It’s extensible through the Plugin API • Comes with 2 plugins: Facebook and Slack
COMPONENTS OF A CHATBOT • Message Type • Messages •
Steps • Workflows
Message Types Buttons Text Image Decision Video
Step
Workflow
DEMO
EXTENDING THE CHATBOT MODULE • You will implement a plugin
using Plugin API • Your message types • The service (i.e how to talk to your chat provider) • The workflow
A CHATBOT PLUGIN EXAMPLE /** * Facebook Chatbot implementation. *
* @ChatbotPlugin( * id = "chatbot_facebook", * title = @Translation("Facebook Chatbot") * ) */ class ChatbotFacebook extends ChatbotPluginBase implements ChatbotPluginInterface { … public function challenge() { return $this->service->challenge(); } public function parsePostData(Request $request) { return $request->getContent(); } }
DEMO II
FUTURE IMPROVEMENTS • There’s room for code refactoring • Add
new message types • Integration to AI services (Amazon Lex / IBM Watson / Microsoft Luis / wit.ai / api.ai)
#drupalsprints Friday, April 28, 2017 Mentored Core Sprint 9:00am-12:00pm Room:301-303
General Sprints 9:00am-6:00pm Room:309-310
THANK YOU! WHAT DID YOU THINK? Locate this session at
the DrupalCon Baltimore website: http://baltimore2017.drupal.org/schedule Take the survey https://www.surveymonkey.com/r/ drupalconbaltimore https://goo.gl/9s1OiM