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

Build your: "Hey Google, what is the next ..."

Build your: "Hey Google, what is the next ..."

Sta iniziando l'era degli assistenti vocali!

Ormai sono presenti nei nostri smartphone, negli smartspeaker da casa e in sempre più dispositivi. Al momento ci aiutano nei piccoli task di tutti i giorni: "svegliami tra 15 minuti", "metti un timer di 6 minuti per la pasta", "metti un po' di musica rilassante", ...

In questo workshop vedremo come creare una nuova funzionalità partendo da zero! Ad esempio potremo creare "Hey Google, ...": "qual è la prossima lezione?", "che vestito mi consigli oggi?", "tra quanto arriva il prossimo treno?", "quando sarà la prossima DevFest Levante?", ...

Il workshop può essere affrontato a 2 livelli:
- Principiante: Non è richiesto saper programmare
- Intermedio: Useremo Kotlin su Google App Engine

Programma: [Principiante / Intermedio]
- Cos'è una Action on Google
- Conversation Design
- Come usare Dialogflow
- Provare il progetto con Google Assistant [Intermedio]
- Dialogflow Fulfillment
- Kotlin + Actions on Google SDK
- Deploy on Google App Engine

DevFest Levante
30 agosto 2019, 15:00 - 18:00
Content level: Intermediate
Supporto durante la prova: Italiano / English

Avatar for Omar Miatello

Omar Miatello

August 30, 2019
Tweet

More Decks by Omar Miatello

Other Decks in Programming

Transcript

  1. 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
  2. Cowabunga, dude! What flavors do you crave? The bus is

    approaching your stop now. Your trip will take 45 minutes.
  3. 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
  4. 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
  5. 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.
  6. 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
  7. Give users credit They know how to talk They know

    what they want They want to help
  8. Give users credit They know how to talk They know

    what they want They want to help Use the context Environmental Situational Temporal Behavioral
  9. VUI Best Practices How to recover a conversation? Step 1

    Error cannot be eliminated Step 2 Use broader explanation when re-prompting Step 3 Don’t blame the user Step 4 Don’t repeat prompts in error cases
  10. Dialogflow Console dialogflow.com -> Go to console Template: Fulfilment for

    Dialogflow in Kotlin github.com/omarmiatello/dialogflow-appengine-kotlin Ready for this workshop!