Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Google Assistant workshop

Google Assistant workshop

Setting up a user-journey with Google Assistant and the conversational platform DigitalCX

Maarten Dings

March 28, 2019
Tweet

Other Decks in Business

Transcript

  1. CX Agenda Introduction Let’s introduce ourselves About Google Assistant Some

    background information Architecture & Setup Everything we need to get started Adding extra intents To get the most out of Google Assistant Google Assistant Workshop Creating deeplinks To get the most out of Google Assistant Overview of DigitalCX Getting to know our Conversational Platform Building & testing our user journey Let’s get cracking with our conversation What’s next? Getting ready to deploy Drinks! Do we need to say more!?
  2. Before we start, let’s introduce ourselves! Tell us your name

    and the company you work for. Bonus: tell us something non-work related that keeps you busy Introduction
  3. But if we take a peak at what we can

    expect, then it’s quite exhilarating.. Voice future?
  4. Google Speech The technology which makes it possible to have

    fully automated conversations. Through Google Speech best-practices like Natural Language Understanding, deep- and machine learning and speech-to-text come together.
  5. Google Assistant The assistant that runs on Google Speech, on

    a variety of devices. The Google Assistant can run for example on a website, a mobile application or hardware.
  6. Google Home, Mini or Hub The hardware devices from Google

    running the Google Assistant, like the one (mini) we currently have in the room.
  7. Google Duplex A highly intelligent, next-gen version of Google Speech,

    with enhanced Artificial Intelligence, improved natural voices and better natural language understanding.
  8. CX Our setup step-by-step: Google Developer account ✔ Any regular

    @gmail-address will do. DigitalCX project ✔ To retrieve the content from Create the Google Assistant project To be able to configure settings, update versions and measure analytics Setup the fulfillment server (or proxy) To process the requests from and to the Assistant. This will run on the Actions SDK provided
 by Google to get started. Later we will also add the DigitalCX connector. Build the actions-manifest To define our invocations and tell Google how to route them Google Assistant Workshop
  9. Choose an invocation → Tipsy Tomato → Slice Of Heaven

    → Twisted Toppings → Luigi’s Pizza → Pizza Paradise → The Funky Anchovy → The Round Triangle → Pizza Peddler → Tower Of Pizza → Slice Of Italy → The Daily Dough → Mama Mia’s Or get creative..
  10. CX Three basic trigger phrases Ask “Ask Tipsy Tomato” Speak

    “Let me speak to Tipsy Tomato”
 “Speak to Tipsy Tomato”
 “Can I speak to Tipsy Tomato” Talk “Let me talk to Tipsy Tomato”
 “I want to speak to Tipsy Tomato”
 “Talk to Tipsy Tomato” Google Assistant Workshop
  11. Sidebar: Invocations & naming policies Google is quite picky when

    it comes to invocations and policies apply. 
 For example, you’re probably unable to select a brandname without going through a brand verification process. Go ahead and try to use Domino’s as invocation. You’ll probably receive an error-message upon saving.
  12. CX Fulfillment server specs Written in Node.js With Express framework

    as server. We also use the body-parser dependency, so everything is properly encoded in JSON by default “Keep-alive” with Nodemon while developing So we don’t have to manually restart the server every time we make changes to the code Serveo service as localhost tunnel To be able to access our localhost environment from the outside. So Google Assistant can reach it as well. This allows us to quickly test our interactions without having to continuously deploy our code to a server Google Assistant Workshop
  13. Sidebar: Serveo There are multiple tools to be able to

    expose localhost to the outside world. One of the best-known is probably grok. We are using serveo since we don’t need to signup or download anything. We will probably only get a warning about an insecure connection. This is because localhost doesn’t have a certificate. Nothing to worry about though.
  14. CX 3 most important intents actions.intent.MAIN The so-called onLoad intent

    actions.intent.TEXT The follow-up intents actions.intent.CANCEL The fallback intent for when the user stops interacting with the Google Assistant Google Assistant Workshop
  15. Sidebar: data-contracts Communication between the Assistant and our fulfillment server

    basically happens by interchanging a data file. This is essentially just a JSON-file with an agreed-upon structure in terms for keys and values. 
 You can see the data being sent and received inside the actions console interface. The package is therefore nothing more than a helper to make sure we adhere to the contract.
  16. Sidebar: the Conversation exits These Conversation Exits are called In-dialog

    intents and are defined slightly different from other intents. They are also limited to simple responses with a max of 60 characters.
  17. CX Introduction to voices & SSML Nextgen voices Google is

    releasing it’s next generation voices, based on wavenet technology, allowing the interaction to sound even more like a real human! Listen to some examples. Speech Synthesis Markup Language Allows the voice to sound more life-like by adding intonation, speed, pitch etc. Even sound effects are supported!
 
 https://developers.google.com/actions/reference/ssml? _ga=2.121910796.683378724.1553509042-19710129.1552383 378 Google Assistant Workshop SIDEBAR
  18. CX Rest of the agenda Google Assistant Workshop Creating deeplinks

    To get the most out of Google Assistant Overview of DigitalCX Getting to know our Conversational Platform Building & testing our user journey Let’s get cracking with our conversation What’s next? Getting ready to deploy Drinks! Do we need to say more!?
  19. There is no NLU in the intent mapping. You have

    to be quite specific. Intent mapping
  20. Google uses the query patterns to rank and discover your

    actions in the directory. Intent mapping
  21. Let’s repeat this: Google uses the query patterns to rank

    and discover your actions in the directory.. Intent mapping
  22. We could call this a kind of “SEO for Google

    Assistant” Google Assistant SEO
  23. CX Invocation vs. deep-linking Explicit invocation % “Hey Google, talk

    to Tipsy Tomato" Deep linking Extension on the explicit invocation where the user already has an intent
 % “Hey Google, ask Tipsy Tomato about their opening hours”
 % “Hey Google, ask Tipsy Tomato about their opening hours this friday” Implicit invocation Google uses the actions dictionary to lookup which actions can fulfill this intent
 % “Hey Google, order a pizza” Google Assistant Workshop SIDEBAR
  24. CX Best-practices and naming policies apply! ✔ https://developers.google.com/actions/ discovery/checklist ✔

    https://developers.google.com/actions/ policies/general-policies#name_requirements Google Assistant Workshop Make sure to check them before publishing your action.
  25. Sidebar: Invocations & naming policies Too generic names are not

    allowed, for example: “My Travel Agent”, “My Insurance Company”. However: exceptions to naming policies are considered on a case- by-case basis by requesting an Action Name Whitelist..
  26. Use the hardware capabilities of the device you are publishing

    for to guide the conversation For example on-screen carousels with images, quick replies and suggestion chips
  27. Let’s add a picture of the opening hours, so the

    user can easily read back on what we said
  28. You can request the capabilities of the user’s hardware by

    accessing the following parameter: conv.surface.capabilities.has(capability) conv.surface.capabilities.has(‘actions.capability. SCREEN_OUTPUT’)
  29. There are more Responses: → Simple Response → Basic Card

    → Browsing Carousel → Suggestion Chips → Media Object → List → Carousel Pick the right one depending on the type and mout of information you want to provide.
  30. Research shows that people respond to technology as they would

    to another human, so the coöperative principle applies.
  31. This principle can be understood in terms of four rules:

    Maxim of Quality, Maxim of Quantity, Maxim of Relevance and Maxim of Manner.
  32. % “Hey Google, is Reno in Mexico?” “Sure, and Philadelphia

    is in Florida” vs. % “Hey Google, is Reno in Mexico?” “No, Reno is in Nevada in The United States of America” SIDEBAR
  33. % “Hey Google, do you know time?” “Of course I

    do” vs. % “Hey Google, do you know the time?” “In your times it’s currently twenty past three” SIDEBAR
  34. % “Hey Google, switch on the kitchen lights” “The temperature

    in the living room is 20 degrees” vs. % “Hey Google, switch on the kitchen lights” “Alright. Done.” SIDEBAR
  35. Maxim of Manner Share information as briefly and orderly as

    possible, trying to avoid obscurity and ambiguity
  36. “Done dealing with your transaction” vs. “Ok, I ordered your

    Beyoncé tickets. You can find them in your email” SIDEBAR
  37. Your Persona should: Have personality traits like friendly, helpful, witty,

    charming etc. Build on a synthesized or recorded voice design Follow a style guide (if existent) Be considered as a real employee of your customer service center
  38. “Next, you need to provide a username. Please provide a

    valid email-address” vs. “Do you want to create an account? It usually takes only one minute”
  39. “We’re at question 3 of 10” vs. “Thanks for your

    patience. I only need 3 more answers and then we’re done”
  40. Sometimes users might want to move the dialog forward by

    saying something unanticipated. Make sure you’ve got that covered in your recognition as well.
  41. “Alright I found two accommodations in Nice, France. One is

    a hotel the other a camping. Which one would you like?” vs. % “The first one” % “The last one” % “Neither, I want an AirB&B” % “Definitely the hotel!”
  42. “Alright I found two accommodations in Nice, France. One is

    a hotel the other a camping. Which one would you like?” vs. % “The first one” % “The last one” % “Neither, I want an AirB&B” % “Definitely the hotel!”
  43. ⚠ Shameless self-promo ⚠ Next week, online magazine Frankwatching (±400.000

    unique visitors/ month) will publish our article on successfully creating a use-case for voice- activated devices. We also provide in-company workshops for crafting user journeys and Persona’s.
  44. Want to know more about working with content in DigitalCX?

    We have an excellent portal (access through a DigitalCX account) with written articles and videos. You can also book a training with one of our experts through your Client Success Manager
  45. The connector has two flavors Plug-and-play Simple functionality out-of-the box

    to support main-, text- and cancel-intent Advanced When deep integrations and customizations are needed. For example with CRM-systems like Salesforce or Hubspot
  46. DigitalCX environments CMS environment Make changes and test immediately
 https://dev.digitalcx.com/cxcompany/projects/googleassistant

    Staging environment Requires an overnight or scheduled publish
 https://cxcompany-googleassistant-stag.digitalcx.com
 Production environment Requires an overnight or scheduled publish
 https://cxcompany-googleassistant.digitalcx.com
  47. The connector has two flavors Plug-and-play Simple functionality out-of-the box

    to support main-, text- and cancel-intent Advanced When deep integrations and customizations are needed. For example with CRM-systems like Salesforce or Hubspot
  48. now

  49. Don’t forget to put all your sensitive credentials inside an

    environment variable. Our apiKey might for example be stored privately if we have an internal knowledge base.
  50. Getting ready to deploy If we release to alpha channel

    first, we don’t need to go through Google’s review process
  51. Do you want to host this workshop at any time

    or place? Just let me know! In-company workshop
  52. One more thing.. Start Doing What did you miss in

    or expect from the workshop? Stop Doing What wasn’t valuable in your opinion? Or what would you rather skip?
 Keep Doing What did you really like or enjoy?