SlideShare a Scribd company logo
1 of 62
Download to read offline
Building Conversational Experiences
for Google Assistant ‘18
Abdelrahman Omran | Rinvex | @Omranic | me@omranic.com
Be excellent to each other.
Treat everyone with respect. Participate while
acknowledging that everyone deserves to be here — and
each of us has the right to enjoy our experience without fear
of harassment, discrimination, or condescension, whether
blatant or via micro-aggressions. Jokes shouldn’t demean
others. Consider what you are saying and how it would feel
if it were said to or about you.
Practice saying "Yes and" to each other.
It’s a theatre improv technique to build on each other’s
ideas. We all benefit when we create together.
Speak up if you see or hear something.
Harassment is not tolerated, and you are empowered
to politely engage when you or others are
disrespected. The person making you feel
uncomfortable may not be aware of what they are
doing, and politely bringing their behavior to their
attention is encouraged.
In case you see or hear something or feel
uncomfortable, reach out to dev-mena@google.com
Code of Conduct
Ready to
help across
500M+ devices
A growing audience:
devices
JapaneseGerman
FR French
CA French
KoreanUK English
AU English
CA English
US English
Italian
Spanish BR Portuguese
LATAM Spanish
Hindi & IN English
A growing audience:
languages
Swedish
Danish
Norwegian Indonesian
Russian
Thai
Dutch
Google Home/Mobile device — The surface to interact with
the Assistant.
The Google Assistant — A conversation between you and
Google that helps you get things done in your world.
Actions on Google — How developers can extend the
assistant (via Assistant apps)
The Mobile Voice Study
55% of teens and 41% of adults
Use voice search more than once a day
http://googleblog.blogspot.com/2014/10/omg-mobile-voice-survey-reveals-teens.html
Teens
Adults
http://googleblog.blogspot.com/2014/10/omg-mobile-voice-survey-reveals-teens.html
Actions On Google
Direct and Conversation Actions
Turn on the living room lights
Sure thing
Play my dinner party playlist on Spotify
Ok, here you go.
Hi, how can I help?
I need an Uber
Sure! I’ll connect you to Uber
Hi Scott, where are you headed?
I’m going to the Ferry Building
Ok, would you like an UberX again?
No, we’ll need an UberXL this time
Ok, Ahmed will arrive in 3 minutes
in a black Toyota Sequoia
Hi, how can I help?
How does it work?
The life cycle of voice action
Assistant app
{ conversation
api request }
{ conversation
api response }
user input
app
response
How to get started?
1. Design 2. Develop 3. Discover
01 Create Persona
02 Think out of Actions
03 Context
04 Speech Errors
05 Think BigDesign
01 Create a Dialogflow agent
02 Create intents & entities
03 Define User says phrases
04 Define Actions & Responses
05 Test it!Develop
01 Create a new cloud project
02 Register your Conversation Action
03 Deploy your actions
04 Confirm your deployment
05 Interact with your Conversation ActionDeploy
Conversational Design Intro
Top 3 Design Tips
[1] Create a Persona
A Persona is conveyed through:
• Tone
• Word and phrase choices
• Functional design
• Style
• Technique
• Voice
And it is based on:
• Your user population
• Their needs
• The imagery &
qualities associated
with your brand
Cowabunga, dude!
What flavors do you crave?
The bus is approaching your stop now.
Your trip will take 45 minutes.
Buy a pizza
Getting there soon
Purchase a ticket
Arriving soon
Look at your order Review your schedule
[2] Think outside the box.
Literally!
code code code code code
code code code code
code code “ dialog string” code
code code code
code code code code code
code “dialog string” code code
code code code code code code code
code code code
code code
code
code code
code
code
code code code
code “dialog string” code code code
code code
code code code
code code code code code code code code
code code code code code code code code
code
STRUCTURE CODE
code code code code code
code code code code
code code “ dialog string” code
code code code
code code code code code
code “dialog string” code code
code code code code code code code
code code code
code code
code
code code
code
code
code code code
code “dialog string” code code code
code code
code code code
code code code code code code code code
code code code code code code code code
code
STRUCTURE CODE
DIALOG STRUCTURE
[3] In a conversation,
there are no “errors”
real life
user
conditions {
VUI Tips & Tricks
for better voice user experience
GUI : VUI
What’s the difference?
“I don’t understand you.”
When a so-called “error” occurs
in a conversation, it should be treated
simply as a new turn in the dialog,
only with different conditions.
Users have intent
Conversation repair for timeouts
USER Ok Google, let me talk to Number Genie.
GOOGLE ASSISTANT Sure, Here's Number Genie.
NUMBER GENIE Welcome to Number Genie! I'm thinking of a number from 0
to 100. What's your first guess?
USER (says nothing)
NUMBER GENIE I didn't hear a number.
USER (silent or muffled)
NUMBER GENIE If you're still there, what's your guess?
Sample Dialogs
What to include:
1. Canonical “Happy path”
2. First time experience
3. Tapered experience
(Return user)
4. Repair
Quit game. User gives up and ends the game
USER Hey Google, let me talk to Number Genie.
GOOGLE ASSISTANT Sure, Here's Number Genie.
NUMBER GENIE Welcome to Number Genie! I'm thinking of a number from 0
to 100. What's your first guess?
USER 21-
NUMBER GENIE It’s higher than 21. What’s your next guess?
USER I give up. [LOGIC: catch ending intent]
NUMBER GENIE Sure, I’ll tell you the number anyway. It was 90.
What to include:
1. Canonical “Happy path”
2. First time experience
3. Tapered experience
(Return user)
4. Repair
Sample Dialogs
Give users credit
They know how to talk
Avoid force feeding commands.
(such as “to reply to a message,
say ‘reply’” or “to hear that
again, say ‘repeat’”.)
People hardly ever say
nonsense. They just weren’t
parsed correctly. There was a
misalignment in meaning.
They know what they want
There’s no such thing as a query with
no intent. The user wanted to do
something, even if they didn’t say so.
They want to help
Don’t create dead ends when
something doesn’t work.
If you ask for them to say
something again, they will, but
rarely exactly the same way.
Honor that they’re invested in
outcome of a repair attempt.
Use the context
Environmental
Where is the user?
What are they doing?
What type of device
are they using?
Situational
What’s their intent?
Where is the user’s
frame of mind?
Temporal
What happened right before?
What’s happening next?
How is the experience
influenced over time?
Behavioral
What do users know
going in?
What data can you use to
enrich the experience
predictively or to cut out
unnecessary steps?
Rapid reprompt “What was that?”
“Say that again?”
Reframe the question “What time is this for?” → “Sorry, what time?”
“For when?” → “What time would you like to book this for?”
Ask another way “If it helps, we can do this one piece a time.”
Be ready for questions
about the question
“I have your name and email from your account, so now all I need is
your phone number.”
“You can give me the day, the time, or both.”
Be proactive “I could put you down for 6 for now, does that work?”
“Do you want to finish this later?”
Example strategies to have ready
Implementation Details
Let’s get technical, and do a quick demo
Well, it’s kind of cold outside, so I'd like
something to warm me up, like a hot
soup, and I want it fast.
I have some chicken, and also canned
tomatoes.
Ok Google,
talk to
Personal Chef
Well, it’s kind of
cold outside, so
I’d like...
Sure, here’s
Personal Chef
What are you
in the mood
for?
What protein
would you like
to use?
Speech to Text
NLP
Knowledge Graph
ML Ranking
User Profile
Text to Speech
Speech to Text
Text to Speech
...
Invoke Personal
Chef action
Parse query and
generate
response
What about smart displays
Can we get the same amazing experience of Google Assistant on smart displays?!
Create and publish your app
Get started by building actions for your app
Use existing templates
goo.gl/ggpCr1 goo.gl/h1jaaSgoo.gl/5rVBTH
Build a custom app
goo.gl/bhToDa goo.gl/TZsupvgoo.gl/C4AXBr
What’s next?
To the infinity and beyond™
g.co/dev/ActionsDesign
developers.google.com/actions
codelabs.developers.google.com
goo.gl/PMdr7N
Additional Resources
Community Program: developers.google.com/actions
G+ Developer community: g.co/actionsdev
Videos: bit.ly/aog-tips
Dialogflow: dialogflow.com/google-assistant
Twitter: actionsongoogle@
Our mailing list: assistant.google.com/developer
Thank you!
Abdelrahman Omran | @Omranic | me@omranic.com

More Related Content

What's hot

Random Play - Agile Midwest 2017
Random Play - Agile Midwest 2017Random Play - Agile Midwest 2017
Random Play - Agile Midwest 2017Emerson Taymor
 
Indie Games - From Prototype to Polish, Tips & Tricks making your own indie g...
Indie Games - From Prototype to Polish, Tips & Tricks making your own indie g...Indie Games - From Prototype to Polish, Tips & Tricks making your own indie g...
Indie Games - From Prototype to Polish, Tips & Tricks making your own indie g...Anna Grueter
 
Social Media Best Practices (101)
Social Media Best Practices (101)Social Media Best Practices (101)
Social Media Best Practices (101)Kelly Deen
 
Hour of Code 2015 - Elementary School
Hour of Code 2015 - Elementary SchoolHour of Code 2015 - Elementary School
Hour of Code 2015 - Elementary SchoolFrances Coronel
 
Geting goosebumps with recruitment marketing- "Google Dave" Hazlehurst
Geting goosebumps with recruitment marketing- "Google Dave" HazlehurstGeting goosebumps with recruitment marketing- "Google Dave" Hazlehurst
Geting goosebumps with recruitment marketing- "Google Dave" HazlehurstSerocor
 
Public speaking 2019 _ tien's.
Public speaking 2019 _ tien's.Public speaking 2019 _ tien's.
Public speaking 2019 _ tien's.TienYulianti2
 
Blogging for Business 101
Blogging for Business 101Blogging for Business 101
Blogging for Business 101Jon DiPietro
 

What's hot (7)

Random Play - Agile Midwest 2017
Random Play - Agile Midwest 2017Random Play - Agile Midwest 2017
Random Play - Agile Midwest 2017
 
Indie Games - From Prototype to Polish, Tips & Tricks making your own indie g...
Indie Games - From Prototype to Polish, Tips & Tricks making your own indie g...Indie Games - From Prototype to Polish, Tips & Tricks making your own indie g...
Indie Games - From Prototype to Polish, Tips & Tricks making your own indie g...
 
Social Media Best Practices (101)
Social Media Best Practices (101)Social Media Best Practices (101)
Social Media Best Practices (101)
 
Hour of Code 2015 - Elementary School
Hour of Code 2015 - Elementary SchoolHour of Code 2015 - Elementary School
Hour of Code 2015 - Elementary School
 
Geting goosebumps with recruitment marketing- "Google Dave" Hazlehurst
Geting goosebumps with recruitment marketing- "Google Dave" HazlehurstGeting goosebumps with recruitment marketing- "Google Dave" Hazlehurst
Geting goosebumps with recruitment marketing- "Google Dave" Hazlehurst
 
Public speaking 2019 _ tien's.
Public speaking 2019 _ tien's.Public speaking 2019 _ tien's.
Public speaking 2019 _ tien's.
 
Blogging for Business 101
Blogging for Business 101Blogging for Business 101
Blogging for Business 101
 

Similar to Building Conversational Experiences for Google Assistant '18

Design Principal for Action on Google
Design Principal for Action on GoogleDesign Principal for Action on Google
Design Principal for Action on GoogleHoney Sharma
 
Chatbot and AI Design Principles
Chatbot and AI Design PrinciplesChatbot and AI Design Principles
Chatbot and AI Design PrinciplesMauricio Perez
 
Building your actions for Google Assistant
Building your actions for Google AssistantBuilding your actions for Google Assistant
Building your actions for Google AssistantAhmed Abu Eldahab
 
Building for google assistant
Building for google assistantBuilding for google assistant
Building for google assistantAbdelrahman Omran
 
Focus fast bigd15_roger_belveal_2015-09-19
Focus fast bigd15_roger_belveal_2015-09-19Focus fast bigd15_roger_belveal_2015-09-19
Focus fast bigd15_roger_belveal_2015-09-19Roger Belveal
 
Ux scot voice usability testing with woz - ar and sf - june 2019
Ux scot   voice usability testing with woz - ar and sf  - june 2019Ux scot   voice usability testing with woz - ar and sf  - june 2019
Ux scot voice usability testing with woz - ar and sf - june 2019User Vision
 
Voice usability testing with WOZ methodology - UX SCOT 2019
Voice usability testing with WOZ methodology - UX SCOT 2019Voice usability testing with WOZ methodology - UX SCOT 2019
Voice usability testing with WOZ methodology - UX SCOT 2019Abi Reynolds
 
UX STRAT Europe 2017: Gregory Ek: “Experience Strategy for Digital Conversati...
UX STRAT Europe 2017: Gregory Ek: “Experience Strategy for Digital Conversati...UX STRAT Europe 2017: Gregory Ek: “Experience Strategy for Digital Conversati...
UX STRAT Europe 2017: Gregory Ek: “Experience Strategy for Digital Conversati...UX STRAT
 
M3 changing the odds
M3 changing the oddsM3 changing the odds
M3 changing the oddsAndrew Heaton
 
Product voice - when a product speaks, what voice do you hear?
Product voice - when a product speaks, what voice do you hear?Product voice - when a product speaks, what voice do you hear?
Product voice - when a product speaks, what voice do you hear?Gordon Plant
 
The story of a UI trainer
The story of a UI trainerThe story of a UI trainer
The story of a UI trainerHarshal Patil
 
SXSW - Diving Deep: Best Practices For Interviewing Users
SXSW - Diving Deep: Best Practices For Interviewing UsersSXSW - Diving Deep: Best Practices For Interviewing Users
SXSW - Diving Deep: Best Practices For Interviewing UsersSteve Portigal
 
Start with the problem, not with the solution!
Start with the problem, not with the solution!Start with the problem, not with the solution!
Start with the problem, not with the solution!Annamaria Boheim
 
UI/UX Case Study | Wicked Problem | Personal digital assistant
UI/UX Case Study | Wicked Problem | Personal digital assistantUI/UX Case Study | Wicked Problem | Personal digital assistant
UI/UX Case Study | Wicked Problem | Personal digital assistantlinkfuerlink
 
Content Design for the Conversational UI - STC Summit 2018
Content Design for the Conversational UI - STC Summit 2018Content Design for the Conversational UI - STC Summit 2018
Content Design for the Conversational UI - STC Summit 2018Melanie Seibert
 

Similar to Building Conversational Experiences for Google Assistant '18 (20)

Design Principal for Action on Google
Design Principal for Action on GoogleDesign Principal for Action on Google
Design Principal for Action on Google
 
VUI Design
VUI DesignVUI Design
VUI Design
 
Chatbot and AI Design Principles
Chatbot and AI Design PrinciplesChatbot and AI Design Principles
Chatbot and AI Design Principles
 
Building your actions for Google Assistant
Building your actions for Google AssistantBuilding your actions for Google Assistant
Building your actions for Google Assistant
 
Building for google assistant
Building for google assistantBuilding for google assistant
Building for google assistant
 
BDD
BDDBDD
BDD
 
Focus fast bigd15_roger_belveal_2015-09-19
Focus fast bigd15_roger_belveal_2015-09-19Focus fast bigd15_roger_belveal_2015-09-19
Focus fast bigd15_roger_belveal_2015-09-19
 
Ux scot voice usability testing with woz - ar and sf - june 2019
Ux scot   voice usability testing with woz - ar and sf  - june 2019Ux scot   voice usability testing with woz - ar and sf  - june 2019
Ux scot voice usability testing with woz - ar and sf - june 2019
 
Voice usability testing with WOZ methodology - UX SCOT 2019
Voice usability testing with WOZ methodology - UX SCOT 2019Voice usability testing with WOZ methodology - UX SCOT 2019
Voice usability testing with WOZ methodology - UX SCOT 2019
 
UX STRAT Europe 2017: Gregory Ek: “Experience Strategy for Digital Conversati...
UX STRAT Europe 2017: Gregory Ek: “Experience Strategy for Digital Conversati...UX STRAT Europe 2017: Gregory Ek: “Experience Strategy for Digital Conversati...
UX STRAT Europe 2017: Gregory Ek: “Experience Strategy for Digital Conversati...
 
E3 U4 S2(4).pdf.pdf
E3 U4 S2(4).pdf.pdfE3 U4 S2(4).pdf.pdf
E3 U4 S2(4).pdf.pdf
 
M3 changing the odds
M3 changing the oddsM3 changing the odds
M3 changing the odds
 
Getting it Built
Getting it BuiltGetting it Built
Getting it Built
 
Product voice - when a product speaks, what voice do you hear?
Product voice - when a product speaks, what voice do you hear?Product voice - when a product speaks, what voice do you hear?
Product voice - when a product speaks, what voice do you hear?
 
The story of a UI trainer
The story of a UI trainerThe story of a UI trainer
The story of a UI trainer
 
SXSW - Diving Deep: Best Practices For Interviewing Users
SXSW - Diving Deep: Best Practices For Interviewing UsersSXSW - Diving Deep: Best Practices For Interviewing Users
SXSW - Diving Deep: Best Practices For Interviewing Users
 
Start with the problem, not with the solution!
Start with the problem, not with the solution!Start with the problem, not with the solution!
Start with the problem, not with the solution!
 
UI/UX Case Study | Wicked Problem | Personal digital assistant
UI/UX Case Study | Wicked Problem | Personal digital assistantUI/UX Case Study | Wicked Problem | Personal digital assistant
UI/UX Case Study | Wicked Problem | Personal digital assistant
 
Cat scratch
Cat scratchCat scratch
Cat scratch
 
Content Design for the Conversational UI - STC Summit 2018
Content Design for the Conversational UI - STC Summit 2018Content Design for the Conversational UI - STC Summit 2018
Content Design for the Conversational UI - STC Summit 2018
 

More from Abdelrahman Omran

Using Dialogflow to build actions for Google Assistant ‘18
Using Dialogflow to build actions for Google Assistant ‘18Using Dialogflow to build actions for Google Assistant ‘18
Using Dialogflow to build actions for Google Assistant ‘18Abdelrahman Omran
 
Make the most out of a conference - MENAIO Summit '18
Make the most out of a conference - MENAIO Summit '18Make the most out of a conference - MENAIO Summit '18
Make the most out of a conference - MENAIO Summit '18Abdelrahman Omran
 
All for one & one for all - MENAIO Summit '18
All for one & one for all - MENAIO Summit '18All for one & one for all - MENAIO Summit '18
All for one & one for all - MENAIO Summit '18Abdelrahman Omran
 
The Web Platform - State of the Union '17
The Web Platform - State of the Union '17The Web Platform - State of the Union '17
The Web Platform - State of the Union '17Abdelrahman Omran
 
Progressive Web Apps 1. keynote
Progressive Web Apps 1. keynoteProgressive Web Apps 1. keynote
Progressive Web Apps 1. keynoteAbdelrahman Omran
 
How can you get started with machine learning?
How can you get started with machine learning?How can you get started with machine learning?
How can you get started with machine learning?Abdelrahman Omran
 
Progressive Web Apps / GDG DevFest - Season 2016
Progressive Web Apps / GDG DevFest - Season 2016Progressive Web Apps / GDG DevFest - Season 2016
Progressive Web Apps / GDG DevFest - Season 2016Abdelrahman Omran
 
Laravel & google cloud platform do mix​!
Laravel & google cloud platform do mix​!Laravel & google cloud platform do mix​!
Laravel & google cloud platform do mix​!Abdelrahman Omran
 

More from Abdelrahman Omran (10)

State of the WEB ‘18
State of the WEB ‘18State of the WEB ‘18
State of the WEB ‘18
 
Using Dialogflow to build actions for Google Assistant ‘18
Using Dialogflow to build actions for Google Assistant ‘18Using Dialogflow to build actions for Google Assistant ‘18
Using Dialogflow to build actions for Google Assistant ‘18
 
Make the most out of a conference - MENAIO Summit '18
Make the most out of a conference - MENAIO Summit '18Make the most out of a conference - MENAIO Summit '18
Make the most out of a conference - MENAIO Summit '18
 
All for one & one for all - MENAIO Summit '18
All for one & one for all - MENAIO Summit '18All for one & one for all - MENAIO Summit '18
All for one & one for all - MENAIO Summit '18
 
The Web Platform - State of the Union '17
The Web Platform - State of the Union '17The Web Platform - State of the Union '17
The Web Platform - State of the Union '17
 
Progressive Web Apps 1. keynote
Progressive Web Apps 1. keynoteProgressive Web Apps 1. keynote
Progressive Web Apps 1. keynote
 
How can you get started with machine learning?
How can you get started with machine learning?How can you get started with machine learning?
How can you get started with machine learning?
 
Progressive Web Apps / GDG DevFest - Season 2016
Progressive Web Apps / GDG DevFest - Season 2016Progressive Web Apps / GDG DevFest - Season 2016
Progressive Web Apps / GDG DevFest - Season 2016
 
Laravel & google cloud platform do mix​!
Laravel & google cloud platform do mix​!Laravel & google cloud platform do mix​!
Laravel & google cloud platform do mix​!
 
Google Green
Google GreenGoogle Green
Google Green
 

Recently uploaded

Artificial intelligence in the post-deep learning era
Artificial intelligence in the post-deep learning eraArtificial intelligence in the post-deep learning era
Artificial intelligence in the post-deep learning eraDeakin University
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure servicePooja Nehwal
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Scott Keck-Warren
 
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptxMaking_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptxnull - The Open Security Community
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Patryk Bandurski
 
How to Remove Document Management Hurdles with X-Docs?
How to Remove Document Management Hurdles with X-Docs?How to Remove Document Management Hurdles with X-Docs?
How to Remove Document Management Hurdles with X-Docs?XfilesPro
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking MenDelhi Call girls
 
Pigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slidespraypatel2
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):comworks
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsMark Billinghurst
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machinePadma Pradeep
 
SIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge GraphSIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge GraphNeo4j
 
Maximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxMaximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxOnBoard
 
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...HostedbyConfluent
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationRidwan Fadjar
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountPuma Security, LLC
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking MenDelhi Call girls
 

Recently uploaded (20)

Artificial intelligence in the post-deep learning era
Artificial intelligence in the post-deep learning eraArtificial intelligence in the post-deep learning era
Artificial intelligence in the post-deep learning era
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024
 
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptxMaking_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
 
How to Remove Document Management Hurdles with X-Docs?
How to Remove Document Management Hurdles with X-Docs?How to Remove Document Management Hurdles with X-Docs?
How to Remove Document Management Hurdles with X-Docs?
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
Pigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping Elbows
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slides
 
The transition to renewables in India.pdf
The transition to renewables in India.pdfThe transition to renewables in India.pdf
The transition to renewables in India.pdf
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR Systems
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machine
 
SIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge GraphSIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge Graph
 
Maximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxMaximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptx
 
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 Presentation
 
Vulnerability_Management_GRC_by Sohang Sengupta.pptx
Vulnerability_Management_GRC_by Sohang Sengupta.pptxVulnerability_Management_GRC_by Sohang Sengupta.pptx
Vulnerability_Management_GRC_by Sohang Sengupta.pptx
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path Mount
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 

Building Conversational Experiences for Google Assistant '18

  • 1. Building Conversational Experiences for Google Assistant ‘18 Abdelrahman Omran | Rinvex | @Omranic | me@omranic.com
  • 2. Be excellent to each other. Treat everyone with respect. Participate while acknowledging that everyone deserves to be here — and each of us has the right to enjoy our experience without fear of harassment, discrimination, or condescension, whether blatant or via micro-aggressions. Jokes shouldn’t demean others. Consider what you are saying and how it would feel if it were said to or about you. Practice saying "Yes and" to each other. It’s a theatre improv technique to build on each other’s ideas. We all benefit when we create together. Speak up if you see or hear something. Harassment is not tolerated, and you are empowered to politely engage when you or others are disrespected. The person making you feel uncomfortable may not be aware of what they are doing, and politely bringing their behavior to their attention is encouraged. In case you see or hear something or feel uncomfortable, reach out to dev-mena@google.com Code of Conduct
  • 3.
  • 6. JapaneseGerman FR French CA French KoreanUK English AU English CA English US English Italian Spanish BR Portuguese LATAM Spanish Hindi & IN English A growing audience: languages Swedish Danish Norwegian Indonesian Russian Thai Dutch
  • 7. Google Home/Mobile device — The surface to interact with the Assistant. The Google Assistant — A conversation between you and Google that helps you get things done in your world. Actions on Google — How developers can extend the assistant (via Assistant apps)
  • 8.
  • 9. The Mobile Voice Study 55% of teens and 41% of adults Use voice search more than once a day http://googleblog.blogspot.com/2014/10/omg-mobile-voice-survey-reveals-teens.html
  • 11. Actions On Google Direct and Conversation Actions
  • 12. Turn on the living room lights Sure thing Play my dinner party playlist on Spotify Ok, here you go. Hi, how can I help?
  • 13. I need an Uber Sure! I’ll connect you to Uber Hi Scott, where are you headed? I’m going to the Ferry Building Ok, would you like an UberX again? No, we’ll need an UberXL this time Ok, Ahmed will arrive in 3 minutes in a black Toyota Sequoia Hi, how can I help?
  • 14.
  • 15.
  • 16. How does it work? The life cycle of voice action
  • 17.
  • 18. Assistant app { conversation api request } { conversation api response } user input app response
  • 19. How to get started? 1. Design 2. Develop 3. Discover
  • 20. 01 Create Persona 02 Think out of Actions 03 Context 04 Speech Errors 05 Think BigDesign
  • 21. 01 Create a Dialogflow agent 02 Create intents & entities 03 Define User says phrases 04 Define Actions & Responses 05 Test it!Develop
  • 22. 01 Create a new cloud project 02 Register your Conversation Action 03 Deploy your actions 04 Confirm your deployment 05 Interact with your Conversation ActionDeploy
  • 24. [1] Create a Persona
  • 25. A Persona is conveyed through: • Tone • Word and phrase choices • Functional design • Style • Technique • Voice And it is based on: • Your user population • Their needs • The imagery & qualities associated with your brand
  • 26.
  • 27. Cowabunga, dude! What flavors do you crave? The bus is approaching your stop now. Your trip will take 45 minutes.
  • 28. Buy a pizza Getting there soon Purchase a ticket Arriving soon Look at your order Review your schedule
  • 29. [2] Think outside the box. Literally!
  • 30. code code code code code code code code code code code “ dialog string” code code code code code code code code code code “dialog string” code code code code code code code code code code code code code code code code code code code code code code code “dialog string” code code code code code code code code code code code code code code code code code code code code code code code code code STRUCTURE CODE
  • 31. code code code code code code code code code code code “ dialog string” code code code code code code code code code code “dialog string” code code code code code code code code code code code code code code code code code code code code code code code “dialog string” code code code code code code code code code code code code code code code code code code code code code code code code code STRUCTURE CODE
  • 33. [3] In a conversation, there are no “errors”
  • 35. VUI Tips & Tricks for better voice user experience
  • 36. GUI : VUI What’s the difference?
  • 38. When a so-called “error” occurs in a conversation, it should be treated simply as a new turn in the dialog, only with different conditions.
  • 40. Conversation repair for timeouts USER Ok Google, let me talk to Number Genie. GOOGLE ASSISTANT Sure, Here's Number Genie. NUMBER GENIE Welcome to Number Genie! I'm thinking of a number from 0 to 100. What's your first guess? USER (says nothing) NUMBER GENIE I didn't hear a number. USER (silent or muffled) NUMBER GENIE If you're still there, what's your guess? Sample Dialogs What to include: 1. Canonical “Happy path” 2. First time experience 3. Tapered experience (Return user) 4. Repair
  • 41. Quit game. User gives up and ends the game USER Hey Google, let me talk to Number Genie. GOOGLE ASSISTANT Sure, Here's Number Genie. NUMBER GENIE Welcome to Number Genie! I'm thinking of a number from 0 to 100. What's your first guess? USER 21- NUMBER GENIE It’s higher than 21. What’s your next guess? USER I give up. [LOGIC: catch ending intent] NUMBER GENIE Sure, I’ll tell you the number anyway. It was 90. What to include: 1. Canonical “Happy path” 2. First time experience 3. Tapered experience (Return user) 4. Repair Sample Dialogs
  • 42. Give users credit They know how to talk Avoid force feeding commands. (such as “to reply to a message, say ‘reply’” or “to hear that again, say ‘repeat’”.) People hardly ever say nonsense. They just weren’t parsed correctly. There was a misalignment in meaning. They know what they want There’s no such thing as a query with no intent. The user wanted to do something, even if they didn’t say so. They want to help Don’t create dead ends when something doesn’t work. If you ask for them to say something again, they will, but rarely exactly the same way. Honor that they’re invested in outcome of a repair attempt.
  • 43. Use the context Environmental Where is the user? What are they doing? What type of device are they using? Situational What’s their intent? Where is the user’s frame of mind? Temporal What happened right before? What’s happening next? How is the experience influenced over time? Behavioral What do users know going in? What data can you use to enrich the experience predictively or to cut out unnecessary steps?
  • 44. Rapid reprompt “What was that?” “Say that again?” Reframe the question “What time is this for?” → “Sorry, what time?” “For when?” → “What time would you like to book this for?” Ask another way “If it helps, we can do this one piece a time.” Be ready for questions about the question “I have your name and email from your account, so now all I need is your phone number.” “You can give me the day, the time, or both.” Be proactive “I could put you down for 6 for now, does that work?” “Do you want to finish this later?” Example strategies to have ready
  • 45. Implementation Details Let’s get technical, and do a quick demo
  • 46.
  • 47. Well, it’s kind of cold outside, so I'd like something to warm me up, like a hot soup, and I want it fast. I have some chicken, and also canned tomatoes.
  • 48. Ok Google, talk to Personal Chef Well, it’s kind of cold outside, so I’d like... Sure, here’s Personal Chef What are you in the mood for? What protein would you like to use? Speech to Text NLP Knowledge Graph ML Ranking User Profile Text to Speech Speech to Text Text to Speech ... Invoke Personal Chef action Parse query and generate response
  • 49. What about smart displays Can we get the same amazing experience of Google Assistant on smart displays?!
  • 50.
  • 51. Create and publish your app Get started by building actions for your app
  • 52. Use existing templates goo.gl/ggpCr1 goo.gl/h1jaaSgoo.gl/5rVBTH
  • 53. Build a custom app goo.gl/bhToDa goo.gl/TZsupvgoo.gl/C4AXBr
  • 54. What’s next? To the infinity and beyond™
  • 55.
  • 60. Additional Resources Community Program: developers.google.com/actions G+ Developer community: g.co/actionsdev Videos: bit.ly/aog-tips Dialogflow: dialogflow.com/google-assistant Twitter: actionsongoogle@ Our mailing list: assistant.google.com/developer
  • 61.
  • 62. Thank you! Abdelrahman Omran | @Omranic | me@omranic.com