SlideShare a Scribd company logo
Building Conversational
Experiences with
Actions on Google
+GreenIdo
@greenido
Developer Advocate
June 2017
The Google Assistant — A conversation between you
and Google that helps you get things done in your
world.
Google Home/Mobile device — The surface to
interact with the Assistant.
Actions on Google — How developers can extend the
Assistant (via Assistant apps)
The next session about Android is “Building Data
Driven applications with Android” in room 404 on
Tuesday at 4. Would you like to hear more?
Sure! Here’s Google IO 17.
Ok Google, let’s talk to Google IO 17
Enter Earcon
Exit Earcon
Hi, I’m one of the Googlers running I/O this year! I can
help you explore topics or pick a session to attend.
What would you like to know?
When is the next Android talk?
Building conversational experiences with Actions on Google

Recommended for you

Hey hubballi! - Talk on "Actions on Google" #DevFestHubali
Hey hubballi! - Talk on "Actions on Google" #DevFestHubali Hey hubballi! - Talk on "Actions on Google" #DevFestHubali
Hey hubballi! - Talk on "Actions on Google" #DevFestHubali

This document discusses building actions for Google Assistant using Dialogflow and Firebase. It introduces Actions on Google and provides an overview of tools like Dialogflow for building intents and entities, Firebase Real-time Database for managing data, and Firebase Cloud Functions for hosting code. The document demonstrates different response types, discusses tips for making powerful actions, and provides resources for learning more about building actions.

devfestdevfest hubliactionsongoogle
Bringing Characters to Life for Immersive Storytelling - Dioselin Gonzalez
Bringing Characters to Life for Immersive Storytelling - Dioselin GonzalezBringing Characters to Life for Immersive Storytelling - Dioselin Gonzalez
Bringing Characters to Life for Immersive Storytelling - Dioselin Gonzalez

Bringing characters to life for immersive storytelling discusses techniques for animating virtual characters including behavior trees, finite state machines, and the Behavior Markup Language (BML). BML allows for synchronization of behaviors, animation, speech, and other signals. Behavior trees provide a way to organize complex character behaviors hierarchically and handle parallelism and priorities. The document references many tools and techniques for facial animation, speech recognition, and autonomous character systems that can be used to create believable immersive characters.

vrgame developmentanimation
Bringing characters to life for immersive storytelling
Bringing characters to life for immersive storytellingBringing characters to life for immersive storytelling
Bringing characters to life for immersive storytelling

March/2016 presentation on the work I did at PDI DreamWorks Animation. This talk is about sharing my experience and practical tips. The sections can be thought of small “primers” on principles of facial+speech recognition, behavior representation and AI architectures, communication protocols but only intro to set the stage. I provide links for you to learn deeply about these areas. NOTE links and info are from early 2016 and have not been updated.

storytellingfacial recognitionspeech recognition
How does it work?
Design Develop Discover
Assistant app
{ conversation
api request }
{ conversation
api response }
user input
app
response
Ok Google,
let’s talk to
Google IO 17
I want to know
about Machine
Learning
Sure, here’s
Google IO 17
Hi! Welcome
to Google IO!
The next ML
session is...
Speech to Text
NLP
Knowledge Graph
ML Ranking
User Profile
Handle
“action.intent.MAIN”
Speech to Text
Text to Speech
...
...
...
“
Intent Matching — Match and categorize user utterances to
an intent.
Entity Extraction — Identify key words and phrases spoken by
the user.
@

Recommended for you

POSI Overview
POSI OverviewPOSI Overview
POSI Overview

POSI is a group and software that helps people work together by identifying their goals, interests and abilities, and then aiding in finding ways to achieve goals.

posigoaltasks
Android Developer Days 2013 - MultiDevice Nightmare
Android Developer Days 2013 - MultiDevice NightmareAndroid Developer Days 2013 - MultiDevice Nightmare
Android Developer Days 2013 - MultiDevice Nightmare

Here you can gain advances knowledge on how to survive the Multi-Device Nightmare. It gives an introduction and samples of using different resource/ layout folders for filter specific configurations, referencing other resources and using layout aliases. This session aims at people with knowledge of coding for Android.

android software developmentxmlandroid
Building a Location-based platform with MongoDB from Zero.
Building a Location-based platform with MongoDB from Zero.Building a Location-based platform with MongoDB from Zero.
Building a Location-based platform with MongoDB from Zero.

Raviteja Dodda presented on building a location-based backend platform using MongoDB and MongoEngine. He discussed using MongoDB's geospatial indexing and query capabilities to build a check-in rewards app that allows users to check-in to places and earn rewards. He outlined the data models for places, users, check-ins and rewards, and provided examples of geospatial queries to find places and rewards near a given location. Raviteja concluded by encouraging attendees to build their own location-based applications using MongoDB's simple and powerful geospatial features.

Actions on Google API.AI
Intent - type of input Event
actions.intent.TEXT Intent (user utterance)
Action - app entry point Triggering Intent
N/A Action - fulfillment alias
Terminology
Ok Google,
let’s talk to
Google IO 17
I want to know
about Machine
Learning
Sure, here’s
Google IO 17
Hi! Welcome
to Google IO!
The next ML
session is...
Speech to Text
NLP
Knowledge Graph
ML Ranking
User Profile Convert
“action.intent.MAIN”
to WELCOME event
Speech to Text
Text to Speech
...
...
...
...
NLP:
Intent Matching
Entity Extraction
Building conversational experiences with Actions on Google
Intent
Triggered via a series of “user says” phrases or platform based events
Can collect entity values
Matched at every turn of conversation

Recommended for you

Android design patterns
Android design patternsAndroid design patterns
Android design patterns

This document discusses an upcoming hackathon and provides an agenda for a session on design patterns. The session will cover topics like code smells, different categories of design patterns (creational, structural, behavioral), and examples from Android like the Observer pattern implemented in ViewTreeObserver and builder patterns like AlertDialog.Builder and NotificationCompat.Builder. The goals are to learn about and inspire the use of design patterns to improve code readability, writability, and communication.

androidandroid academy tlv
Use Web Skills To Build Mobile Apps
Use Web Skills To Build Mobile AppsUse Web Skills To Build Mobile Apps
Use Web Skills To Build Mobile Apps

Slides from a talk I presented with coworker Matt Baxter, at the Big (D)esign Conference in Dallas, TX.

html5mobilejavascript
Groovy On Trading Desk (2010)
Groovy On Trading Desk (2010)Groovy On Trading Desk (2010)
Groovy On Trading Desk (2010)

Introductionary talk and tutorial on Groovy, discussion of its success and popularity, issues with the future of Java with examples

Follow-up Intents
Input and Output Contexts
You can require a context to be available before an Intent is enabled
Intent can set context to enable other Intents
Retain data across intents
Entities (slot-filling)
Values that we are trying to capture from the user phrases
Can specify a parameter name and a type of value
Values can be optional
Values can be a list of fixed values
System Entities
● Time
● Date
● Time Period
● Number
● Cardinal
● Ordinal
● Temperature
● Speed
● Volume
● Weight
● Age
● Currency
● Country
● Location
● Language
● Artist
● Music
● ….

Recommended for you

Google Assistant Overview
Google Assistant Overview  Google Assistant Overview
Google Assistant Overview

台灣人工智慧小聚 https://www.facebook.com/groups/datasci.dinner/ 台灣人工智慧小聚 - Taipei#20190823 https://aiacademy.neticrm.tw/civicrm/event/info?reset=1&id=71 【講者2:林建宏 Wolke Lin】 台灣 8 位 LAE (LINE API EXPERT)之一 、亞太 4 位 Assistant GDE(Google Developer Expert) 之一。專長軟體工程、系統開發、技術文件寫作、教育訓練,喜好研究程式語言、框架、社群,從中學習設計,目前以node.js 開發前後台及智能語音應用/聊天機器人為主。 【Google Assistant Overview】 本次講題將介紹 Google Assistant 目前的狀況、未來展望、及目前全球和台灣的相關應用。Google在2016年發布了Google Asisitant服務,至今有3年的時間,從一開始支援14國8種語言,到現在80國30種語言;從必須在雲端執行的100GB資料量,縮小到可放在手機執行的0.5GB資料量。從手機、電腦、Smart Home各種面向,Google Asisitant將怎麼影響我們未來的生活?身為一個開發者,又有哪些機會?讓我們一同來探討!

google
Interview with Developer Jose Luis Arenas regarding Google App Engine & Geosp...
Interview with Developer Jose Luis Arenas regarding Google App Engine & Geosp...Interview with Developer Jose Luis Arenas regarding Google App Engine & Geosp...
Interview with Developer Jose Luis Arenas regarding Google App Engine & Geosp...

Interview with Developer Jose Luis Arenas regarding Google App Engine & Geospatial Data search. Plus detail about opensource project on using Search API & Google Datastore with Geospatial Datas from UK Government.

google datastoregoogle app enginegeo
The Django Web Framework (EuroPython 2006)
The Django Web Framework (EuroPython 2006)The Django Web Framework (EuroPython 2006)
The Django Web Framework (EuroPython 2006)

The document summarizes the Django web framework. It describes key characteristics like clean URLs, loosely coupled components, and designer-friendly templates. It outlines components like URL dispatching, views, models, templates, forms, validation, administration, internationalization, and success stories. Django allows for really fast development, reuse of components, and less code through its architecture and features.

django
Developer Entities
Specify follow up questions if a user doesn’t specify certain values
Read out in random order to make it more natural
Prompts
Fulfillment
Building conversational experiences with Actions on Google

Recommended for you

Building Conversational Experiences for Google Assistant
Building Conversational Experiences for Google AssistantBuilding Conversational Experiences for Google Assistant
Building Conversational Experiences for Google Assistant

This document discusses building conversational experiences using the Google Assistant and Actions on Google. It covers topics like conversational design principles, building actions with templates and Dialogflow, reaching users through implicit and explicit invocation, account linking, smart home device integration, and sample actions. It also provides an introduction to a codelab for building a basic action and resources for documentation, support, and the Actions on Google community program.

#googleassistant #actionsongoogle #aogdevs
Web Development Study Jam #2 _ Basic JavaScript.pptx
Web Development Study Jam #2 _ Basic JavaScript.pptxWeb Development Study Jam #2 _ Basic JavaScript.pptx
Web Development Study Jam #2 _ Basic JavaScript.pptx

The document provides an introduction to JavaScript and instructions for using JavaScript in browsers and Node.js. It discusses JavaScript basics like variables, data types, objects, arrays, functions, and the Document Object Model. It also introduces more advanced topics like JSX and next steps to learn like modern JavaScript, Node.js, TypeScript, and frontend/backend frameworks. The document is intended to teach the fundamentals of JavaScript and suggest further learning paths.

Questioning the status quo
Questioning the status quoQuestioning the status quo
Questioning the status quo

A talk about the current state of java enterprise development, evaluation of the available alternatives to conventional enterprise solutions, tools and languages for the JVM, and possibly beyond. JUG-Roma meeting 16 Sept 2014

jug-romaobject-oriented programmingjava
Node.js Client library
https://github.com/actions-on-google/actions-on-google-nodejs
const App = require('actions-on-google').ApiAiApp;
exports.yourApp = (request, response) => {
const app = new App({request, response});
console.log('Request headers: ' + JSON.stringify(request.headers));
console.log('Request body: ' + JSON.stringify(request.body));
// Fulfill action business logic
function responseHandler (app) {
// Complete your fulfillment logic and send a response
app.ask('Hello, World!');
}
const actionMap = new Map();
actionMap.set('<API.AI_action_name>', responseHandler);
app.handleRequest(actionMap);
};
Facts about Google sample (context and deep links)
https://developers.google.com/actions/develop/apiai/tutorials/google-facts
Facts about Google sample (context and deep links)
https://developers.google.com/actions/develop/apiai/tutorials/google-facts
Facts about Google sample (context and deep links)
https://developers.google.com/actions/develop/apiai/tutorials/google-facts

Recommended for you

Python 101
Python 101Python 101
Python 101

This document provides an introduction to the Python programming language. It describes Python as a powerful and readable scripting language developed in the late 1980s. It is used widely in areas like web development, game development, and IT. The document explains Python's key features like readability, ease of use, cross-platform capabilities, and extensive standard library. It also provides examples of basic Python concepts like variables, data types, control flow, and functions.

python
Faster! Faster! Accelerate your business with blazing prototypes
Faster! Faster! Accelerate your business with blazing prototypesFaster! Faster! Accelerate your business with blazing prototypes
Faster! Faster! Accelerate your business with blazing prototypes

Bring your ideas to life! Convince your boss to that open source development is faster and cheaper than the "safe" COTS solution they probably hate anyway. Let's investigate ways to get real-life, functional prototypes up with blazing speed. We'll look at and compare tools for truly rapid development including Python, Django, Flask, PHP, Amazon EC2 and Heroku.

oscon oscon2012
How to get things done - Lessons from Yahoo, Google, Netflix and Meta
How to get things done - Lessons from Yahoo, Google, Netflix and Meta How to get things done - Lessons from Yahoo, Google, Netflix and Meta
How to get things done - Lessons from Yahoo, Google, Netflix and Meta

How can you make your software teams better? What are the values and processes that you wish to embrace? In these slides, we will share some stories from leading companies (e.g., Google, Meta, and Netflix), and we will see what is working for them.

googlefacebooknetflix
Facts about Google sample (context and deep links)
https://developers.google.com/actions/develop/apiai/tutorials/google-facts
if (app.hasSurfaceCapability(app.SurfaceCapabilities.SCREEN_OUTPUT)) {
app.ask(app.buildRichResponse()
.addSimpleResponse(`Here's a fact for you. ${fact} Which one ` +
`do you want to hear about next, Google's history or headquarters?`)
.addBasicCard(
app.buildBasicCard('Google is an amazing company.')
.setImage(GOOGLE_LOGO_SRC))
.addSuggestions(['History', 'Headquarters']));
} else {
app.ask(`Here's a fact for you. ${fact} Which one ` +
`do you want to hear about next, Google's history or headquarters?`);
}
Facts about Google Code Snippet
Designing for multiple surfaces
From ‘app’ to ‘experience’...
Create a persona.

Recommended for you

Crypto 101 and a bit more [Sep-2022]
Crypto 101 and a bit more [Sep-2022]Crypto 101 and a bit more [Sep-2022]
Crypto 101 and a bit more [Sep-2022]

What is a blockchain? Why is cryptocurrency the future? It's a deck I was preparing for a lighting talk at ESGgo. Since I got some excellent feedback on it - I decided to open-source it :) Hopefully, you will find it valuable.

cryptocurrencybitcoinblockchain
The Future of Continuous Software Updates Is Here
The Future of Continuous Software Updates Is HereThe Future of Continuous Software Updates Is Here
The Future of Continuous Software Updates Is Here

DevOps and “Liquid Software” release practices are rapidly becoming the standard. But, as software shapes digital transformation, DevOps teams are feeling challenged to manage their growing influence on corporations’ success or failure. In this talk, Ido Green looks into the growing pains that most enterprises (many of them JFrog customers) face when adopting and consolidating DevOps at scale, and how these challenges are being mitigated with end-to-end platform solutions. We’ll wrap up with some DevOps best practices - from the trenches - that will help you address emerging trends that your bosses’ bosses really care about.

software developmentdevopsdevsecops
Open Source & DevOps Market trends - Open Core Summit
Open Source & DevOps Market trends - Open Core SummitOpen Source & DevOps Market trends - Open Core Summit
Open Source & DevOps Market trends - Open Core Summit

This document discusses lessons learned from serving 5000 customers. It highlights that developers and maintainers directly provide support in open source communities, which helps users become contributors. It also outlines metrics for various open source programs run by JFrog, noting billions of downloads and petabytes of data transfer. The main concerns discussed are Kubernetes adoption, cloud native development, hybrid/multi-cloud environments, and security.

open sourcedevopssoftware developer
Preserve and reinforce your persona by
engaging the user as a separate entity
from the Google Assistant.
Own it.
Hey! This is ___
Welcome to ___
Ready to play ____
Hi! ___ here.
Hello. I’m ___
Greetings, human.
Welcome back to ___
Hey again. ___
Let’s play ___
Here’s your ___
Brought to you by ___
Hi there, ___
Let’s get started.
Ready for your ___
___, here to…
Live from ___
This is ___
What’s up, ___
and more...
<speak> 
<say-as interpret-as="characters">SSML</say-as>
<break time="3s"/>.
<audio src="https://example.com/file.mp3"></audio>
<say-as interpret-as="cardinal">10</say-as>.
<say-as interpret-as="ordinal">10</say-as>
<say-as interpret-as="characters">10</say-as>.
<sub alias="World Wide Web">WWW</sub>.
<p><s>This is one.</s><s>This is two.</s></p>
</speak> 
Reinforce it with SSML
Speech Synthesis Markup language
“S S M L”
[3 second pause]
[audio file plays]
“Ten”
“Tenth”
“One Oh”
World Wide Web
[two sentences]
function welcome (app) {
return isPreviousUser(app.getUser().userId).then((userHasVisited) => {
if (userHasVisited) {
app.ask(`Welcome to Number Genie!...`, NO_INPUT_PROMPTS);
} else {
app.ask(`Hey you're back...`, NO_INPUT_PROMPTS);
}
});
}
Reinforce it with persistence
https://developers.google.com/actions/assistant/best-practices
Design for multiple surfaces.

Recommended for you

DevOps as a competitive advantage
DevOps as a competitive advantageDevOps as a competitive advantage
DevOps as a competitive advantage

“If we have data, let’s look at data. If all we have are opinions, let’s go with mine.” This talk is going to be based on data and the real world. No theoretical stories just data and action items on how to make your company better/faster/more secure in shipping software.

software developerdevopssre
Data Driven DevOps & Technologies (swampUP 2019 keynote)
Data Driven DevOps & Technologies (swampUP 2019 keynote)Data Driven DevOps & Technologies (swampUP 2019 keynote)
Data Driven DevOps & Technologies (swampUP 2019 keynote)

The world (of DevOps) has many buzzwords that people like to use. Some are more relevant to the real world and some aren't. In this talk, we covered what is going on in the real world and what is just hype at the moment. You can read more: https://greenido.wordpress.com/2019/06/19/market-trends-talk-swampup-2019/

devopssoftware developerinformation security
VUI Design
VUI DesignVUI Design
VUI Design

We are all experts at human-to-human conversation. But conversing only seems easy because it’s familiar, you’ve been doing it since you were born. The key to building a good voice interface is to not fall into the trap of simply converting a GUI into a VUI. In these slides we will cover the best practices to design our Action on Google (and any other Voice UI).

google assistantvuigoogle home
Support different surface capabilities
https://developers.google.com/actions/assistant/surface-capabilities
AUDIO_OUTPUT SCREEN_OUTPUT
function simpleResponse (app) {
app.ask({
speech: 'Howdy! I can tell you fun facts about ' +
'almost any number, like 42. What do you have in mind?',
displayText: 'Howdy! I can tell you fun facts about ' +
'almost any number. What do you have in mind?'
});
}
Support speech and display text
https://developers.google.com/actions/assistant/responses
Chat text should be a subset of audio
function suggestionChips (app) {
app.ask(app.buildRichResponse()
.addSimpleResponse('Howdy! I can tell you fun facts ‘ +
‘about almost any number. What number do you have ‘ +
‘in mind?')
.addSuggestions(['0', '42', '100', 'Never mind'])
);
}
Guide the user (suggestion chips)
https://developers.google.com/actions/assistant/responses
Chip text should be under 25 characters
function basicCard (app) {
app.ask(app.buildRichResponse()
.addSimpleResponse('Math and prime numbers it is!')
.addBasicCard(
app.buildBasicCard(`42 is an even composite number. It ` +
`is composed of three distinct prime numbers multiplied together. It ` +
`has a total of eight divisors. 42 is an abundant number, because the ` +
`sum of its proper divisors 54 is greater than itself. To count from ` +
`1 to 42 would take you about twenty-one…`)
.setTitle('Math & prime numbers')
.addButton('Read more')
.setImage('https://example.google.com/42.png', 'Image alternate text')
)
);
}
Display basic cards
https://developers.google.com/actions/assistant/responses

Recommended for you

The Google Assistant - Macro View (October 2017)
The Google Assistant - Macro View (October 2017)The Google Assistant - Macro View (October 2017)
The Google Assistant - Macro View (October 2017)

The past few years, the buzz about conversational experiences and digital assistants has increased dramatically. According to a recently issued report by eMarketer, 87% of B2C marketers in the US believe that chatbots and digital assistants will play a significant role in marketing before 2021. In these slides we will cover the Google Assistant and learn why you wish to build an action for it.

google homebotsgoogle assistant
Startups Best Practices
Startups Best PracticesStartups Best Practices
Startups Best Practices

This document provides best practices for startups. It discusses the importance of having a great idea, building a product that users love through constant improvement and feedback, assembling a strong founding team, and relentless execution to gain momentum. Key aspects include focusing on a niche, gaining feedback, prioritizing product development over other activities, hiring experts when needed, setting big goals, and constantly shipping new features and versions. The overall message is on passion for the mission, building engagement through a top-quality product, and relentless effort to achieve growth.

Progressive Web Apps For Startups
Progressive Web Apps For StartupsProgressive Web Apps For Startups
Progressive Web Apps For Startups

What are the ways that startups can leverage the benefits that progressive web apps allow these days? In this talk, I covered some of the startups best practices and how entrepreneurs can take advantage from the capabilities that PWAs give them.

web developmentstartupentrepreneurship
Lists and carousels for selection
https://developers.google.com/actions/assistant/responses
Used for easy selection
<10 items
Used for comparison
<30 items
Know the
user
Google Home Mobile Device
NAME Registered device user’s full name Registered device user’s full name
DEVICE_COARSE_LOCATION Zip code and city N/A
DEVICE_PRECISE_LOCATION Coordinates and street address Coordinates
let permission = app.SupportedPermissions.DEVICE_COARSE_LOCATION;
app.askForPermission('To find bookstores near you', permission);
Q: "Recommend me a local bookstore"
A: "To find bookstores near you, I'll just need to get your zip code from Google. Is that okay?"
Ask for information
https://developers.google.com/actions/assistant/helpers#user_information
Link an account (OAuth2)
https://developers.google.com/actions/identity/
Seamless account linking with Google Sign-in

Recommended for you

Earn More Revenue With Firebase and AdMob
Earn More Revenue With Firebase and AdMobEarn More Revenue With Firebase and AdMob
Earn More Revenue With Firebase and AdMob

In these slides we will see how to take advantage of firebase and AdMob in order to increase your revenue stream. We will explore the major ways to monetize your apps with AdMob.

firebasemoneymobile application development
How To Grow Your User Base?
How To Grow Your User Base?How To Grow Your User Base?
How To Grow Your User Base?

In these slides we will see how to use Firebase Analytics in order to grow your user base. We will see how to effectively use insights from both paid and organic channels in order to create growth.

firebasegrowthmobile apps
Amp Overview #YGLF 2016
Amp Overview #YGLF 2016Amp Overview #YGLF 2016
Amp Overview #YGLF 2016

An overview of Accelerated Mobile Pages Project. See how you can leverage this important open source project today in production and improve your sites' performance and the happiness of your users.

mobile webweb developmentamp
Transact with the user
https://developers.google.com/actions/identity/
Build orders
Use Google provided payment
instrument
Use your payment processor
(Stripe, Braintree, Vantiv, more
coming)
Update order status
Building conversational experiences with Actions on Google
Reach users...
In Dialogue Discovery:
Explicit Triggering (of Actions)
Ok Google, ask Google I/O 17 about what was announced
Trigger Phrase App Name
Developer Specified
Action
Preposition
Action Phrase
Developer Specified
Partner Examples: Let’s speak to Domino’s
At Akinator
Ask Dr. Doggy if dogs can eat chocolate
Ok Google, let’s talk to Google I/O 17
Trigger Phrase App Name
Developer Specified

Recommended for you

AMP - Accelerated Mobile Pages
AMP - Accelerated Mobile PagesAMP - Accelerated Mobile Pages
AMP - Accelerated Mobile Pages

AMP is coming to improve the mobile web. Big time. There are many aspect to a great user experience on sites. In order to improve the speed of the media websites on mobile and the monetization, we needed few things: 1. Fast pages. Fast to load, fast to display, saving bandwidth when possible. 2. Easy for the developers and companies to create. Only based on known and widely used technologies. 3. Mobile Friendly: they should respect a standard and thanks to this standard, pages would be automatically optimized for mobile devices 4. Embrace the open web: non-proprietary technology, open source, available to anyone to use and improve. It should not only help for search engines, but for everyone. In these slides, we will cover AMP and what it can do for you.

ampweb developmentmobile
From AMP to PWA
From AMP to PWAFrom AMP to PWA
From AMP to PWA

Let's focus on the Mobile Web and talk about the keys to a building a great mobile experience. From AMP (=Accelerated Mobile Pages) as a starting point up to PWA (=Progressive Web Apps). I will cover the steps through some of the key features we see as core to the modern web experience. As a bonus, we will close with new APIs that expending the web even farther.

web developmentamppwa
Google Innovation 101
Google Innovation 101Google Innovation 101
Google Innovation 101

These are the slides from my talk today at Google IL Office. It covers: 1. Google’s past, present and a bit of the future. 2. Google’s 5 principles of innovation.

googlestartupinnovation
Hey Google, I want to play a game.Hey Google, tell me a joke.
In Dialogue Discovery:
Implicit Triggering
Hey Google, I want to work out. Hey Google, what’s the surf report
Discovery in the Google
Assistant Directory
Link to your
Assistant App
From anywhere
Share through social media.
Promote through your own site or apps.
Encourage press to drive traffic
to your Assistant app.
Where do I start?

Recommended for you

סטארטאפ - איך? כמה? ולמה
סטארטאפ - איך? כמה? ולמהסטארטאפ - איך? כמה? ולמה
סטארטאפ - איך? כמה? ולמה

מצגת בעברית שנועדה לכוון יזמים שרוצים להתחיל לבנות משהו מרעיון בלבד. נתמקד בשלב הרעיון, בניית המוצר, הצוות ומהם הדגשים שיכולים לעזור לנו.

startupsסטארטאפיזמות
איך להתחיל סטארטאפ 2016
איך להתחיל סטארטאפ 2016איך להתחיל סטארטאפ 2016
איך להתחיל סטארטאפ 2016

מצגת שמותאמת לילדים בכיתות א עד ד - נועדה ליום ההורה המעשיר בבני עטרות

startupstipshebrew
Building a Progressive Web App
Building a  Progressive Web AppBuilding a  Progressive Web App
Building a Progressive Web App

The document discusses building progressive web apps (PWAs). PWAs are web applications that are fast, reliable and engaging like native mobile apps. The key aspects of PWAs discussed are: 1) They use technologies like service workers, web app manifests and push notifications to provide app-like capabilities and improve user experience and engagement on the web. 2) An example of Flipkart, an Indian e-commerce site, is provided which saw 3x time spent and 40% returning visitors with their PWA implementation. 3) Core features discussed that make PWAs engaging include fast loading, adding to homescreen for app-like launching, handling flaky networks well, instant reloading and

web developmentmobile webprogressive web apps
Actions Console
console.actions.google.com
0. Put away the code
1. Draft a persona
2. Write some dialog
DIALOG + STRUCTURE
g.co/dev/ActionsDesign

Recommended for you

How to start? - The Execution
How to start? - The Execution How to start? - The Execution
How to start? - The Execution

This is the last part from four presentations I did to a course for young entrepreneurs. In last 3 lessons, I covered: the Idea, the Product and the Team. You can see all the slides on my project site: ido-green.appspot.com/startups.html

startupstipsentrepreneurship
一比一原版美国休斯敦大学毕业证(uh毕业证书)如何办理
一比一原版美国休斯敦大学毕业证(uh毕业证书)如何办理一比一原版美国休斯敦大学毕业证(uh毕业证书)如何办理
一比一原版美国休斯敦大学毕业证(uh毕业证书)如何办理

特殊工艺完全按照原版制作【微信:A575476】【美国休斯敦大学毕业证(uh毕业证书)成绩单offer】【微信:A575476】(留信学历认证永久存档查询)采用学校原版纸张(包括:隐形水印,阴影底纹,钢印LOGO烫金烫银,LOGO烫金烫银复合重叠,文字图案浮雕,激光镭射,紫外荧光,温感,复印防伪)行业标杆!精益求精,诚心合作,真诚制作!多年品质 ,按需精细制作,24小时接单,全套进口原装设备,十五年致力于帮助留学生解决难题,业务范围有加拿大、英国、澳洲、韩国、美国、新加坡,新西兰等学历材料,包您满意。 【业务选择办理准则】 一、工作未确定,回国需先给父母、亲戚朋友看下文凭的情况,办理一份就读学校的毕业证【微信:A575476】文凭即可 二、回国进私企、外企、自己做生意的情况,这些单位是不查询毕业证真伪的,而且国内没有渠道去查询国外文凭的真假,也不需要提供真实教育部认证。鉴于此,办理一份毕业证【微信:A575476】即可 三、进国企,银行,事业单位,考公务员等等,这些单位是必需要提供真实教育部认证的,办理教育部认证所需资料众多且烦琐,所有材料您都必须提供原件,我们凭借丰富的经验,快捷的绿色通道帮您快速整合材料,让您少走弯路。 留信网认证的作用: 1:该专业认证可证明留学生真实身份【微信:A575476】 2:同时对留学生所学专业登记给予评定 3:国家专业人才认证中心颁发入库证书 4:这个认证书并且可以归档倒地方 5:凡事获得留信网入网的信息将会逐步更新到个人身份内,将在公安局网内查询个人身份证信息后,同步读取人才网入库信息 6:个人职称评审加20分 7:个人信誉贷款加10分 8:在国家人才网主办的国家网络招聘大会中纳入资料,供国家高端企业选择人才 → 【关于价格问题(保证一手价格) 我们所定的价格是非常合理的,而且我们现在做得单子大多数都是代理和回头客户介绍的所以一般现在有新的单子 我给客户的都是第一手的代理价格,因为我想坦诚对待大家 不想跟大家在价格方面浪费时间 对于老客户或者被老客户介绍过来的朋友,我们都会适当给一些优惠。 选择实体注册公司办理,更放心,更安全!我们的承诺:可来公司面谈,可签订合同,会陪同客户一起到教育部认证窗口递交认证材料,客户在教育部官方认证查询网站查询到认证通过结果后付款,不成功不收费! 办理美国休斯敦大学毕业证(uh毕业证书)【微信:A575476】外观非常精致,由特殊纸质材料制成,上面印有校徽、校名、毕业生姓名、专业等信息。 办理美国休斯敦大学毕业证(uh毕业证书)【微信:A575476】格式相对统一,各专业都有相应的模板。通常包括以下部分: 校徽:象征着学校的荣誉和传承。 校名:学校英文全称 授予学位:本部分将注明获得的具体学位名称。 毕业生姓名:这是最重要的信息之一,标志着该证书是由特定人员获得的。 颁发日期:这是毕业正式生效的时间,也代表着毕业生学业的结束。 其他信息:根据不同的专业和学位,可能会有一些特定的信息或章节。 办理美国休斯敦大学毕业证(uh毕业证书)【微信:A575476】价值很高,需要妥善保管。一般来说,应放置在安全、干燥、防潮的地方,避免长时间暴露在阳光下。如需使用,最好使用复印件而不是原件,以免丢失。 综上所述,办理美国休斯敦大学毕业证(uh毕业证书)【微信:A575476 】是证明身份和学历的高价值文件。外观简单庄重,格式统一,包括重要的个人信息和发布日期。对持有人来说,妥善保管是非常重要的。

特拉利理工学院毕业证沃特福德理工学院毕业证邓莱里文艺理工学院毕业证
一比一原版(ucb毕业证书)英国伯明翰大学学院毕业证如何办理
一比一原版(ucb毕业证书)英国伯明翰大学学院毕业证如何办理一比一原版(ucb毕业证书)英国伯明翰大学学院毕业证如何办理
一比一原版(ucb毕业证书)英国伯明翰大学学院毕业证如何办理

特殊工艺完全按照原版制作【微信:A575476】【(ucb毕业证书)英国伯明翰大学学院毕业证成绩单offer】【微信:A575476】(留信学历认证永久存档查询)采用学校原版纸张(包括:隐形水印,阴影底纹,钢印LOGO烫金烫银,LOGO烫金烫银复合重叠,文字图案浮雕,激光镭射,紫外荧光,温感,复印防伪)行业标杆!精益求精,诚心合作,真诚制作!多年品质 ,按需精细制作,24小时接单,全套进口原装设备,十五年致力于帮助留学生解决难题,业务范围有加拿大、英国、澳洲、韩国、美国、新加坡,新西兰等学历材料,包您满意。 【业务选择办理准则】 一、工作未确定,回国需先给父母、亲戚朋友看下文凭的情况,办理一份就读学校的毕业证【微信:A575476】文凭即可 二、回国进私企、外企、自己做生意的情况,这些单位是不查询毕业证真伪的,而且国内没有渠道去查询国外文凭的真假,也不需要提供真实教育部认证。鉴于此,办理一份毕业证【微信:A575476】即可 三、进国企,银行,事业单位,考公务员等等,这些单位是必需要提供真实教育部认证的,办理教育部认证所需资料众多且烦琐,所有材料您都必须提供原件,我们凭借丰富的经验,快捷的绿色通道帮您快速整合材料,让您少走弯路。 留信网认证的作用: 1:该专业认证可证明留学生真实身份【微信:A575476】 2:同时对留学生所学专业登记给予评定 3:国家专业人才认证中心颁发入库证书 4:这个认证书并且可以归档倒地方 5:凡事获得留信网入网的信息将会逐步更新到个人身份内,将在公安局网内查询个人身份证信息后,同步读取人才网入库信息 6:个人职称评审加20分 7:个人信誉贷款加10分 8:在国家人才网主办的国家网络招聘大会中纳入资料,供国家高端企业选择人才 → 【关于价格问题(保证一手价格) 我们所定的价格是非常合理的,而且我们现在做得单子大多数都是代理和回头客户介绍的所以一般现在有新的单子 我给客户的都是第一手的代理价格,因为我想坦诚对待大家 不想跟大家在价格方面浪费时间 对于老客户或者被老客户介绍过来的朋友,我们都会适当给一些优惠。 选择实体注册公司办理,更放心,更安全!我们的承诺:可来公司面谈,可签订合同,会陪同客户一起到教育部认证窗口递交认证材料,客户在教育部官方认证查询网站查询到认证通过结果后付款,不成功不收费! 办理(ucb毕业证书)英国伯明翰大学学院毕业证【微信:A575476】外观非常精致,由特殊纸质材料制成,上面印有校徽、校名、毕业生姓名、专业等信息。 办理(ucb毕业证书)英国伯明翰大学学院毕业证微信:A575476】格式相对统一,各专业都有相应的模板。通常包括以下部分: 校徽:象征着学校的荣誉和传承。 校名:学校英文全称 授予学位:本部分将注明获得的具体学位名称。 毕业生姓名:这是最重要的信息之一,标志着该证书是由特定人员获得的。 颁发日期:这是毕业正式生效的时间,也代表着毕业生学业的结束。 其他信息:根据不同的专业和学位,可能会有一些特定的信息或章节。 办理(ucb毕业证书)英国伯明翰大学学院毕业证【微信:A575476】价值很高,需要妥善保管。一般来说,应放置在安全、干燥、防潮的地方,避免长时间暴露在阳光下。如需使用,最好使用复印件而不是原件,以免丢失。 综上所述,办理(ucb毕业证书)英国伯明翰大学学院毕业证【微信:A575476 】是证明身份和学历的高价值文件。外观简单庄重,格式统一,包括重要的个人信息和发布日期。对持有人来说,妥善保管是非常重要的。

韦恩州立大学毕业证明尼苏达州立大学毕业证圣约翰大学毕业证
developers.google.com/actions
Actions on Google Developer Community
https://g.co/actionsdev
Actions on Google Developers
https://developers.google.com/actions
Actions on Google Developer Challenge
https://g.co/actionschallenge
+GreenIdo
@greenido
Developer Advocate

More Related Content

Similar to Building conversational experiences with Actions on Google

Esplorando Google Assistant e Dialogflow
Esplorando Google Assistant e DialogflowEsplorando Google Assistant e Dialogflow
Esplorando Google Assistant e Dialogflow
Paolo Montrasio
 
Engage user with actions
Engage user with actionsEngage user with actions
Engage user with actions
Matteo Bonifazi
 
Construindo projetos para o Google Assistant - I/O 2019 Recap São Paulo
Construindo projetos para o Google Assistant - I/O 2019 Recap São PauloConstruindo projetos para o Google Assistant - I/O 2019 Recap São Paulo
Construindo projetos para o Google Assistant - I/O 2019 Recap São Paulo
Alvaro Viebrantz
 
Hey hubballi! - Talk on "Actions on Google" #DevFestHubali
Hey hubballi! - Talk on "Actions on Google" #DevFestHubali Hey hubballi! - Talk on "Actions on Google" #DevFestHubali
Hey hubballi! - Talk on "Actions on Google" #DevFestHubali
Smit Jethwa
 
Bringing Characters to Life for Immersive Storytelling - Dioselin Gonzalez
Bringing Characters to Life for Immersive Storytelling - Dioselin GonzalezBringing Characters to Life for Immersive Storytelling - Dioselin Gonzalez
Bringing Characters to Life for Immersive Storytelling - Dioselin Gonzalez
WithTheBest
 
Bringing characters to life for immersive storytelling
Bringing characters to life for immersive storytellingBringing characters to life for immersive storytelling
Bringing characters to life for immersive storytelling
Dioselin Gonzalez
 
POSI Overview
POSI OverviewPOSI Overview
POSI Overview
aindilis
 
Android Developer Days 2013 - MultiDevice Nightmare
Android Developer Days 2013 - MultiDevice NightmareAndroid Developer Days 2013 - MultiDevice Nightmare
Android Developer Days 2013 - MultiDevice Nightmare
Hasan Hosgel
 
Building a Location-based platform with MongoDB from Zero.
Building a Location-based platform with MongoDB from Zero.Building a Location-based platform with MongoDB from Zero.
Building a Location-based platform with MongoDB from Zero.
Ravi Teja
 
Android design patterns
Android design patternsAndroid design patterns
Android design patterns
Vitali Pekelis
 
Use Web Skills To Build Mobile Apps
Use Web Skills To Build Mobile AppsUse Web Skills To Build Mobile Apps
Use Web Skills To Build Mobile Apps
Nathan Smith
 
Groovy On Trading Desk (2010)
Groovy On Trading Desk (2010)Groovy On Trading Desk (2010)
Groovy On Trading Desk (2010)
Jonathan Felch
 
Google Assistant Overview
Google Assistant Overview  Google Assistant Overview
Google Assistant Overview
AI.academy
 
Interview with Developer Jose Luis Arenas regarding Google App Engine & Geosp...
Interview with Developer Jose Luis Arenas regarding Google App Engine & Geosp...Interview with Developer Jose Luis Arenas regarding Google App Engine & Geosp...
Interview with Developer Jose Luis Arenas regarding Google App Engine & Geosp...
Rif Kiamil
 
The Django Web Framework (EuroPython 2006)
The Django Web Framework (EuroPython 2006)The Django Web Framework (EuroPython 2006)
The Django Web Framework (EuroPython 2006)
Simon Willison
 
Building Conversational Experiences for Google Assistant
Building Conversational Experiences for Google AssistantBuilding Conversational Experiences for Google Assistant
Building Conversational Experiences for Google Assistant
Nader Khaled
 
Web Development Study Jam #2 _ Basic JavaScript.pptx
Web Development Study Jam #2 _ Basic JavaScript.pptxWeb Development Study Jam #2 _ Basic JavaScript.pptx
Web Development Study Jam #2 _ Basic JavaScript.pptx
SekarMaduKusumawarda1
 
Questioning the status quo
Questioning the status quoQuestioning the status quo
Questioning the status quo
Ivano Pagano
 
Python 101
Python 101Python 101
Faster! Faster! Accelerate your business with blazing prototypes
Faster! Faster! Accelerate your business with blazing prototypesFaster! Faster! Accelerate your business with blazing prototypes
Faster! Faster! Accelerate your business with blazing prototypes
OSCON Byrum
 

Similar to Building conversational experiences with Actions on Google (20)

Esplorando Google Assistant e Dialogflow
Esplorando Google Assistant e DialogflowEsplorando Google Assistant e Dialogflow
Esplorando Google Assistant e Dialogflow
 
Engage user with actions
Engage user with actionsEngage user with actions
Engage user with actions
 
Construindo projetos para o Google Assistant - I/O 2019 Recap São Paulo
Construindo projetos para o Google Assistant - I/O 2019 Recap São PauloConstruindo projetos para o Google Assistant - I/O 2019 Recap São Paulo
Construindo projetos para o Google Assistant - I/O 2019 Recap São Paulo
 
Hey hubballi! - Talk on "Actions on Google" #DevFestHubali
Hey hubballi! - Talk on "Actions on Google" #DevFestHubali Hey hubballi! - Talk on "Actions on Google" #DevFestHubali
Hey hubballi! - Talk on "Actions on Google" #DevFestHubali
 
Bringing Characters to Life for Immersive Storytelling - Dioselin Gonzalez
Bringing Characters to Life for Immersive Storytelling - Dioselin GonzalezBringing Characters to Life for Immersive Storytelling - Dioselin Gonzalez
Bringing Characters to Life for Immersive Storytelling - Dioselin Gonzalez
 
Bringing characters to life for immersive storytelling
Bringing characters to life for immersive storytellingBringing characters to life for immersive storytelling
Bringing characters to life for immersive storytelling
 
POSI Overview
POSI OverviewPOSI Overview
POSI Overview
 
Android Developer Days 2013 - MultiDevice Nightmare
Android Developer Days 2013 - MultiDevice NightmareAndroid Developer Days 2013 - MultiDevice Nightmare
Android Developer Days 2013 - MultiDevice Nightmare
 
Building a Location-based platform with MongoDB from Zero.
Building a Location-based platform with MongoDB from Zero.Building a Location-based platform with MongoDB from Zero.
Building a Location-based platform with MongoDB from Zero.
 
Android design patterns
Android design patternsAndroid design patterns
Android design patterns
 
Use Web Skills To Build Mobile Apps
Use Web Skills To Build Mobile AppsUse Web Skills To Build Mobile Apps
Use Web Skills To Build Mobile Apps
 
Groovy On Trading Desk (2010)
Groovy On Trading Desk (2010)Groovy On Trading Desk (2010)
Groovy On Trading Desk (2010)
 
Google Assistant Overview
Google Assistant Overview  Google Assistant Overview
Google Assistant Overview
 
Interview with Developer Jose Luis Arenas regarding Google App Engine & Geosp...
Interview with Developer Jose Luis Arenas regarding Google App Engine & Geosp...Interview with Developer Jose Luis Arenas regarding Google App Engine & Geosp...
Interview with Developer Jose Luis Arenas regarding Google App Engine & Geosp...
 
The Django Web Framework (EuroPython 2006)
The Django Web Framework (EuroPython 2006)The Django Web Framework (EuroPython 2006)
The Django Web Framework (EuroPython 2006)
 
Building Conversational Experiences for Google Assistant
Building Conversational Experiences for Google AssistantBuilding Conversational Experiences for Google Assistant
Building Conversational Experiences for Google Assistant
 
Web Development Study Jam #2 _ Basic JavaScript.pptx
Web Development Study Jam #2 _ Basic JavaScript.pptxWeb Development Study Jam #2 _ Basic JavaScript.pptx
Web Development Study Jam #2 _ Basic JavaScript.pptx
 
Questioning the status quo
Questioning the status quoQuestioning the status quo
Questioning the status quo
 
Python 101
Python 101Python 101
Python 101
 
Faster! Faster! Accelerate your business with blazing prototypes
Faster! Faster! Accelerate your business with blazing prototypesFaster! Faster! Accelerate your business with blazing prototypes
Faster! Faster! Accelerate your business with blazing prototypes
 

More from Ido Green

How to get things done - Lessons from Yahoo, Google, Netflix and Meta
How to get things done - Lessons from Yahoo, Google, Netflix and Meta How to get things done - Lessons from Yahoo, Google, Netflix and Meta
How to get things done - Lessons from Yahoo, Google, Netflix and Meta
Ido Green
 
Crypto 101 and a bit more [Sep-2022]
Crypto 101 and a bit more [Sep-2022]Crypto 101 and a bit more [Sep-2022]
Crypto 101 and a bit more [Sep-2022]
Ido Green
 
The Future of Continuous Software Updates Is Here
The Future of Continuous Software Updates Is HereThe Future of Continuous Software Updates Is Here
The Future of Continuous Software Updates Is Here
Ido Green
 
Open Source & DevOps Market trends - Open Core Summit
Open Source & DevOps Market trends - Open Core SummitOpen Source & DevOps Market trends - Open Core Summit
Open Source & DevOps Market trends - Open Core Summit
Ido Green
 
DevOps as a competitive advantage
DevOps as a competitive advantageDevOps as a competitive advantage
DevOps as a competitive advantage
Ido Green
 
Data Driven DevOps & Technologies (swampUP 2019 keynote)
Data Driven DevOps & Technologies (swampUP 2019 keynote)Data Driven DevOps & Technologies (swampUP 2019 keynote)
Data Driven DevOps & Technologies (swampUP 2019 keynote)
Ido Green
 
VUI Design
VUI DesignVUI Design
VUI Design
Ido Green
 
The Google Assistant - Macro View (October 2017)
The Google Assistant - Macro View (October 2017)The Google Assistant - Macro View (October 2017)
The Google Assistant - Macro View (October 2017)
Ido Green
 
Startups Best Practices
Startups Best PracticesStartups Best Practices
Startups Best Practices
Ido Green
 
Progressive Web Apps For Startups
Progressive Web Apps For StartupsProgressive Web Apps For Startups
Progressive Web Apps For Startups
Ido Green
 
Earn More Revenue With Firebase and AdMob
Earn More Revenue With Firebase and AdMobEarn More Revenue With Firebase and AdMob
Earn More Revenue With Firebase and AdMob
Ido Green
 
How To Grow Your User Base?
How To Grow Your User Base?How To Grow Your User Base?
How To Grow Your User Base?
Ido Green
 
Amp Overview #YGLF 2016
Amp Overview #YGLF 2016Amp Overview #YGLF 2016
Amp Overview #YGLF 2016
Ido Green
 
AMP - Accelerated Mobile Pages
AMP - Accelerated Mobile PagesAMP - Accelerated Mobile Pages
AMP - Accelerated Mobile Pages
Ido Green
 
From AMP to PWA
From AMP to PWAFrom AMP to PWA
From AMP to PWA
Ido Green
 
Google Innovation 101
Google Innovation 101Google Innovation 101
Google Innovation 101
Ido Green
 
סטארטאפ - איך? כמה? ולמה
סטארטאפ - איך? כמה? ולמהסטארטאפ - איך? כמה? ולמה
סטארטאפ - איך? כמה? ולמה
Ido Green
 
איך להתחיל סטארטאפ 2016
איך להתחיל סטארטאפ 2016איך להתחיל סטארטאפ 2016
איך להתחיל סטארטאפ 2016
Ido Green
 
Building a Progressive Web App
Building a  Progressive Web AppBuilding a  Progressive Web App
Building a Progressive Web App
Ido Green
 
How to start? - The Execution
How to start? - The Execution How to start? - The Execution
How to start? - The Execution
Ido Green
 

More from Ido Green (20)

How to get things done - Lessons from Yahoo, Google, Netflix and Meta
How to get things done - Lessons from Yahoo, Google, Netflix and Meta How to get things done - Lessons from Yahoo, Google, Netflix and Meta
How to get things done - Lessons from Yahoo, Google, Netflix and Meta
 
Crypto 101 and a bit more [Sep-2022]
Crypto 101 and a bit more [Sep-2022]Crypto 101 and a bit more [Sep-2022]
Crypto 101 and a bit more [Sep-2022]
 
The Future of Continuous Software Updates Is Here
The Future of Continuous Software Updates Is HereThe Future of Continuous Software Updates Is Here
The Future of Continuous Software Updates Is Here
 
Open Source & DevOps Market trends - Open Core Summit
Open Source & DevOps Market trends - Open Core SummitOpen Source & DevOps Market trends - Open Core Summit
Open Source & DevOps Market trends - Open Core Summit
 
DevOps as a competitive advantage
DevOps as a competitive advantageDevOps as a competitive advantage
DevOps as a competitive advantage
 
Data Driven DevOps & Technologies (swampUP 2019 keynote)
Data Driven DevOps & Technologies (swampUP 2019 keynote)Data Driven DevOps & Technologies (swampUP 2019 keynote)
Data Driven DevOps & Technologies (swampUP 2019 keynote)
 
VUI Design
VUI DesignVUI Design
VUI Design
 
The Google Assistant - Macro View (October 2017)
The Google Assistant - Macro View (October 2017)The Google Assistant - Macro View (October 2017)
The Google Assistant - Macro View (October 2017)
 
Startups Best Practices
Startups Best PracticesStartups Best Practices
Startups Best Practices
 
Progressive Web Apps For Startups
Progressive Web Apps For StartupsProgressive Web Apps For Startups
Progressive Web Apps For Startups
 
Earn More Revenue With Firebase and AdMob
Earn More Revenue With Firebase and AdMobEarn More Revenue With Firebase and AdMob
Earn More Revenue With Firebase and AdMob
 
How To Grow Your User Base?
How To Grow Your User Base?How To Grow Your User Base?
How To Grow Your User Base?
 
Amp Overview #YGLF 2016
Amp Overview #YGLF 2016Amp Overview #YGLF 2016
Amp Overview #YGLF 2016
 
AMP - Accelerated Mobile Pages
AMP - Accelerated Mobile PagesAMP - Accelerated Mobile Pages
AMP - Accelerated Mobile Pages
 
From AMP to PWA
From AMP to PWAFrom AMP to PWA
From AMP to PWA
 
Google Innovation 101
Google Innovation 101Google Innovation 101
Google Innovation 101
 
סטארטאפ - איך? כמה? ולמה
סטארטאפ - איך? כמה? ולמהסטארטאפ - איך? כמה? ולמה
סטארטאפ - איך? כמה? ולמה
 
איך להתחיל סטארטאפ 2016
איך להתחיל סטארטאפ 2016איך להתחיל סטארטאפ 2016
איך להתחיל סטארטאפ 2016
 
Building a Progressive Web App
Building a  Progressive Web AppBuilding a  Progressive Web App
Building a Progressive Web App
 
How to start? - The Execution
How to start? - The Execution How to start? - The Execution
How to start? - The Execution
 

Recently uploaded

一比一原版美国休斯敦大学毕业证(uh毕业证书)如何办理
一比一原版美国休斯敦大学毕业证(uh毕业证书)如何办理一比一原版美国休斯敦大学毕业证(uh毕业证书)如何办理
一比一原版美国休斯敦大学毕业证(uh毕业证书)如何办理
taqyea
 
一比一原版(ucb毕业证书)英国伯明翰大学学院毕业证如何办理
一比一原版(ucb毕业证书)英国伯明翰大学学院毕业证如何办理一比一原版(ucb毕业证书)英国伯明翰大学学院毕业证如何办理
一比一原版(ucb毕业证书)英国伯明翰大学学院毕业证如何办理
taqyea
 
Corporate Minimal Newspaper Headline Style Newsletter.pptx
Corporate Minimal Newspaper Headline Style Newsletter.pptxCorporate Minimal Newspaper Headline Style Newsletter.pptx
Corporate Minimal Newspaper Headline Style Newsletter.pptx
byubyu7
 
一比一原版(hull毕业证书)英国赫尔大学毕业证如何办理
一比一原版(hull毕业证书)英国赫尔大学毕业证如何办理一比一原版(hull毕业证书)英国赫尔大学毕业证如何办理
一比一原版(hull毕业证书)英国赫尔大学毕业证如何办理
taqyea
 
Future Trends What's Next for UI UX Design on Websites
Future Trends What's Next for UI UX Design on WebsitesFuture Trends What's Next for UI UX Design on Websites
Future Trends What's Next for UI UX Design on Websites
Serva AppLabs
 
一比一原版(lu毕业证书)英国拉夫堡大学毕业证如何办理
一比一原版(lu毕业证书)英国拉夫堡大学毕业证如何办理一比一原版(lu毕业证书)英国拉夫堡大学毕业证如何办理
一比一原版(lu毕业证书)英国拉夫堡大学毕业证如何办理
taqyea
 
一比一原版(bu毕业证书)英国伯恩茅斯大学毕业证如何办理
一比一原版(bu毕业证书)英国伯恩茅斯大学毕业证如何办理一比一原版(bu毕业证书)英国伯恩茅斯大学毕业证如何办理
一比一原版(bu毕业证书)英国伯恩茅斯大学毕业证如何办理
taqyea
 
一比一原版(aber毕业证)亚伯大学毕业证如何办理
一比一原版(aber毕业证)亚伯大学毕业证如何办理一比一原版(aber毕业证)亚伯大学毕业证如何办理
一比一原版(aber毕业证)亚伯大学毕业证如何办理
taqyea
 
Cyber Security Course & Guide. X.GI. pdf
Cyber Security Course & Guide. X.GI. pdfCyber Security Course & Guide. X.GI. pdf
Cyber Security Course & Guide. X.GI. pdf
RohitRoshanBengROHIT
 
202254.com全网最高清影视香蕉影视,热门电影推荐,热门电视剧在线观看,免费电影,电影在线,在线观看。球华人在线電視劇,免费点播,免费提供最新高清的...
202254.com全网最高清影视香蕉影视,热门电影推荐,热门电视剧在线观看,免费电影,电影在线,在线观看。球华人在线電視劇,免费点播,免费提供最新高清的...202254.com全网最高清影视香蕉影视,热门电影推荐,热门电视剧在线观看,免费电影,电影在线,在线观看。球华人在线電視劇,免费点播,免费提供最新高清的...
202254.com全网最高清影视香蕉影视,热门电影推荐,热门电视剧在线观看,免费电影,电影在线,在线观看。球华人在线電視劇,免费点播,免费提供最新高清的...
ffg01100
 
一比一原版(brunel毕业证书)英国布鲁内尔大学毕业证如何办理
一比一原版(brunel毕业证书)英国布鲁内尔大学毕业证如何办理一比一原版(brunel毕业证书)英国布鲁内尔大学毕业证如何办理
一比一原版(brunel毕业证书)英国布鲁内尔大学毕业证如何办理
taqyea
 
一比一原版(uom毕业证)曼彻斯特大学毕业证如何办理
一比一原版(uom毕业证)曼彻斯特大学毕业证如何办理一比一原版(uom毕业证)曼彻斯特大学毕业证如何办理
一比一原版(uom毕业证)曼彻斯特大学毕业证如何办理
taqyea
 
一比一原版(heriotwatt毕业证书)英国赫瑞瓦特大学毕业证如何办理
一比一原版(heriotwatt毕业证书)英国赫瑞瓦特大学毕业证如何办理一比一原版(heriotwatt毕业证书)英国赫瑞瓦特大学毕业证如何办理
一比一原版(heriotwatt毕业证书)英国赫瑞瓦特大学毕业证如何办理
taqyea
 
Bai-Tập-Tiếng-Anh-On-Tập-He lớp 1- lớp 5 hot nhất
Bai-Tập-Tiếng-Anh-On-Tập-He lớp 1- lớp 5  hot nhấtBai-Tập-Tiếng-Anh-On-Tập-He lớp 1- lớp 5  hot nhất
Bai-Tập-Tiếng-Anh-On-Tập-He lớp 1- lớp 5 hot nhất
Thiên Đường Tình Yêu
 
一比一原版(city毕业证书)英国剑桥大学毕业证如何办理
一比一原版(city毕业证书)英国剑桥大学毕业证如何办理一比一原版(city毕业证书)英国剑桥大学毕业证如何办理
一比一原版(city毕业证书)英国剑桥大学毕业证如何办理
taqyea
 
一比一原版澳洲巴拉特大学毕业证(utas毕业证书)如何办理
一比一原版澳洲巴拉特大学毕业证(utas毕业证书)如何办理一比一原版澳洲巴拉特大学毕业证(utas毕业证书)如何办理
一比一原版澳洲巴拉特大学毕业证(utas毕业证书)如何办理
taqyea
 
一比一原版(london毕业证书)英国伦敦大学毕业证如何办理
一比一原版(london毕业证书)英国伦敦大学毕业证如何办理一比一原版(london毕业证书)英国伦敦大学毕业证如何办理
一比一原版(london毕业证书)英国伦敦大学毕业证如何办理
taqyea
 
一比一原版(mqu毕业证)麦考瑞大学毕业证如何办理
一比一原版(mqu毕业证)麦考瑞大学毕业证如何办理一比一原版(mqu毕业证)麦考瑞大学毕业证如何办理
一比一原版(mqu毕业证)麦考瑞大学毕业证如何办理
taqyea
 
一比一原版(greenwich毕业证书)英国格林威治大学毕业证如何办理
一比一原版(greenwich毕业证书)英国格林威治大学毕业证如何办理一比一原版(greenwich毕业证书)英国格林威治大学毕业证如何办理
一比一原版(greenwich毕业证书)英国格林威治大学毕业证如何办理
taqyea
 
Common Challenges in UI UX Design and How Services Can Help.pdf
Common Challenges in UI UX Design and How Services Can Help.pdfCommon Challenges in UI UX Design and How Services Can Help.pdf
Common Challenges in UI UX Design and How Services Can Help.pdf
Serva AppLabs
 

Recently uploaded (20)

一比一原版美国休斯敦大学毕业证(uh毕业证书)如何办理
一比一原版美国休斯敦大学毕业证(uh毕业证书)如何办理一比一原版美国休斯敦大学毕业证(uh毕业证书)如何办理
一比一原版美国休斯敦大学毕业证(uh毕业证书)如何办理
 
一比一原版(ucb毕业证书)英国伯明翰大学学院毕业证如何办理
一比一原版(ucb毕业证书)英国伯明翰大学学院毕业证如何办理一比一原版(ucb毕业证书)英国伯明翰大学学院毕业证如何办理
一比一原版(ucb毕业证书)英国伯明翰大学学院毕业证如何办理
 
Corporate Minimal Newspaper Headline Style Newsletter.pptx
Corporate Minimal Newspaper Headline Style Newsletter.pptxCorporate Minimal Newspaper Headline Style Newsletter.pptx
Corporate Minimal Newspaper Headline Style Newsletter.pptx
 
一比一原版(hull毕业证书)英国赫尔大学毕业证如何办理
一比一原版(hull毕业证书)英国赫尔大学毕业证如何办理一比一原版(hull毕业证书)英国赫尔大学毕业证如何办理
一比一原版(hull毕业证书)英国赫尔大学毕业证如何办理
 
Future Trends What's Next for UI UX Design on Websites
Future Trends What's Next for UI UX Design on WebsitesFuture Trends What's Next for UI UX Design on Websites
Future Trends What's Next for UI UX Design on Websites
 
一比一原版(lu毕业证书)英国拉夫堡大学毕业证如何办理
一比一原版(lu毕业证书)英国拉夫堡大学毕业证如何办理一比一原版(lu毕业证书)英国拉夫堡大学毕业证如何办理
一比一原版(lu毕业证书)英国拉夫堡大学毕业证如何办理
 
一比一原版(bu毕业证书)英国伯恩茅斯大学毕业证如何办理
一比一原版(bu毕业证书)英国伯恩茅斯大学毕业证如何办理一比一原版(bu毕业证书)英国伯恩茅斯大学毕业证如何办理
一比一原版(bu毕业证书)英国伯恩茅斯大学毕业证如何办理
 
一比一原版(aber毕业证)亚伯大学毕业证如何办理
一比一原版(aber毕业证)亚伯大学毕业证如何办理一比一原版(aber毕业证)亚伯大学毕业证如何办理
一比一原版(aber毕业证)亚伯大学毕业证如何办理
 
Cyber Security Course & Guide. X.GI. pdf
Cyber Security Course & Guide. X.GI. pdfCyber Security Course & Guide. X.GI. pdf
Cyber Security Course & Guide. X.GI. pdf
 
202254.com全网最高清影视香蕉影视,热门电影推荐,热门电视剧在线观看,免费电影,电影在线,在线观看。球华人在线電視劇,免费点播,免费提供最新高清的...
202254.com全网最高清影视香蕉影视,热门电影推荐,热门电视剧在线观看,免费电影,电影在线,在线观看。球华人在线電視劇,免费点播,免费提供最新高清的...202254.com全网最高清影视香蕉影视,热门电影推荐,热门电视剧在线观看,免费电影,电影在线,在线观看。球华人在线電視劇,免费点播,免费提供最新高清的...
202254.com全网最高清影视香蕉影视,热门电影推荐,热门电视剧在线观看,免费电影,电影在线,在线观看。球华人在线電視劇,免费点播,免费提供最新高清的...
 
一比一原版(brunel毕业证书)英国布鲁内尔大学毕业证如何办理
一比一原版(brunel毕业证书)英国布鲁内尔大学毕业证如何办理一比一原版(brunel毕业证书)英国布鲁内尔大学毕业证如何办理
一比一原版(brunel毕业证书)英国布鲁内尔大学毕业证如何办理
 
一比一原版(uom毕业证)曼彻斯特大学毕业证如何办理
一比一原版(uom毕业证)曼彻斯特大学毕业证如何办理一比一原版(uom毕业证)曼彻斯特大学毕业证如何办理
一比一原版(uom毕业证)曼彻斯特大学毕业证如何办理
 
一比一原版(heriotwatt毕业证书)英国赫瑞瓦特大学毕业证如何办理
一比一原版(heriotwatt毕业证书)英国赫瑞瓦特大学毕业证如何办理一比一原版(heriotwatt毕业证书)英国赫瑞瓦特大学毕业证如何办理
一比一原版(heriotwatt毕业证书)英国赫瑞瓦特大学毕业证如何办理
 
Bai-Tập-Tiếng-Anh-On-Tập-He lớp 1- lớp 5 hot nhất
Bai-Tập-Tiếng-Anh-On-Tập-He lớp 1- lớp 5  hot nhấtBai-Tập-Tiếng-Anh-On-Tập-He lớp 1- lớp 5  hot nhất
Bai-Tập-Tiếng-Anh-On-Tập-He lớp 1- lớp 5 hot nhất
 
一比一原版(city毕业证书)英国剑桥大学毕业证如何办理
一比一原版(city毕业证书)英国剑桥大学毕业证如何办理一比一原版(city毕业证书)英国剑桥大学毕业证如何办理
一比一原版(city毕业证书)英国剑桥大学毕业证如何办理
 
一比一原版澳洲巴拉特大学毕业证(utas毕业证书)如何办理
一比一原版澳洲巴拉特大学毕业证(utas毕业证书)如何办理一比一原版澳洲巴拉特大学毕业证(utas毕业证书)如何办理
一比一原版澳洲巴拉特大学毕业证(utas毕业证书)如何办理
 
一比一原版(london毕业证书)英国伦敦大学毕业证如何办理
一比一原版(london毕业证书)英国伦敦大学毕业证如何办理一比一原版(london毕业证书)英国伦敦大学毕业证如何办理
一比一原版(london毕业证书)英国伦敦大学毕业证如何办理
 
一比一原版(mqu毕业证)麦考瑞大学毕业证如何办理
一比一原版(mqu毕业证)麦考瑞大学毕业证如何办理一比一原版(mqu毕业证)麦考瑞大学毕业证如何办理
一比一原版(mqu毕业证)麦考瑞大学毕业证如何办理
 
一比一原版(greenwich毕业证书)英国格林威治大学毕业证如何办理
一比一原版(greenwich毕业证书)英国格林威治大学毕业证如何办理一比一原版(greenwich毕业证书)英国格林威治大学毕业证如何办理
一比一原版(greenwich毕业证书)英国格林威治大学毕业证如何办理
 
Common Challenges in UI UX Design and How Services Can Help.pdf
Common Challenges in UI UX Design and How Services Can Help.pdfCommon Challenges in UI UX Design and How Services Can Help.pdf
Common Challenges in UI UX Design and How Services Can Help.pdf
 

Building conversational experiences with Actions on Google

  • 1. Building Conversational Experiences with Actions on Google +GreenIdo @greenido Developer Advocate June 2017
  • 2. The Google Assistant — A conversation between you and Google that helps you get things done in your world. Google Home/Mobile device — The surface to interact with the Assistant. Actions on Google — How developers can extend the Assistant (via Assistant apps)
  • 3. The next session about Android is “Building Data Driven applications with Android” in room 404 on Tuesday at 4. Would you like to hear more? Sure! Here’s Google IO 17. Ok Google, let’s talk to Google IO 17 Enter Earcon Exit Earcon Hi, I’m one of the Googlers running I/O this year! I can help you explore topics or pick a session to attend. What would you like to know? When is the next Android talk?
  • 5. How does it work? Design Develop Discover
  • 6. Assistant app { conversation api request } { conversation api response } user input app response
  • 7. Ok Google, let’s talk to Google IO 17 I want to know about Machine Learning Sure, here’s Google IO 17 Hi! Welcome to Google IO! The next ML session is... Speech to Text NLP Knowledge Graph ML Ranking User Profile Handle “action.intent.MAIN” Speech to Text Text to Speech ... ... ...
  • 8. “ Intent Matching — Match and categorize user utterances to an intent. Entity Extraction — Identify key words and phrases spoken by the user. @
  • 9. Actions on Google API.AI Intent - type of input Event actions.intent.TEXT Intent (user utterance) Action - app entry point Triggering Intent N/A Action - fulfillment alias Terminology
  • 10. Ok Google, let’s talk to Google IO 17 I want to know about Machine Learning Sure, here’s Google IO 17 Hi! Welcome to Google IO! The next ML session is... Speech to Text NLP Knowledge Graph ML Ranking User Profile Convert “action.intent.MAIN” to WELCOME event Speech to Text Text to Speech ... ... ... ... NLP: Intent Matching Entity Extraction
  • 12. Intent Triggered via a series of “user says” phrases or platform based events Can collect entity values Matched at every turn of conversation
  • 14. Input and Output Contexts You can require a context to be available before an Intent is enabled Intent can set context to enable other Intents Retain data across intents
  • 15. Entities (slot-filling) Values that we are trying to capture from the user phrases Can specify a parameter name and a type of value Values can be optional Values can be a list of fixed values
  • 16. System Entities ● Time ● Date ● Time Period ● Number ● Cardinal ● Ordinal ● Temperature ● Speed ● Volume ● Weight ● Age ● Currency ● Country ● Location ● Language ● Artist ● Music ● ….
  • 18. Specify follow up questions if a user doesn’t specify certain values Read out in random order to make it more natural Prompts
  • 21. Node.js Client library https://github.com/actions-on-google/actions-on-google-nodejs const App = require('actions-on-google').ApiAiApp; exports.yourApp = (request, response) => { const app = new App({request, response}); console.log('Request headers: ' + JSON.stringify(request.headers)); console.log('Request body: ' + JSON.stringify(request.body)); // Fulfill action business logic function responseHandler (app) { // Complete your fulfillment logic and send a response app.ask('Hello, World!'); } const actionMap = new Map(); actionMap.set('<API.AI_action_name>', responseHandler); app.handleRequest(actionMap); };
  • 22. Facts about Google sample (context and deep links) https://developers.google.com/actions/develop/apiai/tutorials/google-facts
  • 23. Facts about Google sample (context and deep links) https://developers.google.com/actions/develop/apiai/tutorials/google-facts
  • 24. Facts about Google sample (context and deep links) https://developers.google.com/actions/develop/apiai/tutorials/google-facts
  • 25. Facts about Google sample (context and deep links) https://developers.google.com/actions/develop/apiai/tutorials/google-facts
  • 26. if (app.hasSurfaceCapability(app.SurfaceCapabilities.SCREEN_OUTPUT)) { app.ask(app.buildRichResponse() .addSimpleResponse(`Here's a fact for you. ${fact} Which one ` + `do you want to hear about next, Google's history or headquarters?`) .addBasicCard( app.buildBasicCard('Google is an amazing company.') .setImage(GOOGLE_LOGO_SRC)) .addSuggestions(['History', 'Headquarters'])); } else { app.ask(`Here's a fact for you. ${fact} Which one ` + `do you want to hear about next, Google's history or headquarters?`); } Facts about Google Code Snippet Designing for multiple surfaces
  • 27. From ‘app’ to ‘experience’...
  • 29. Preserve and reinforce your persona by engaging the user as a separate entity from the Google Assistant. Own it. Hey! This is ___ Welcome to ___ Ready to play ____ Hi! ___ here. Hello. I’m ___ Greetings, human. Welcome back to ___ Hey again. ___ Let’s play ___ Here’s your ___ Brought to you by ___ Hi there, ___ Let’s get started. Ready for your ___ ___, here to… Live from ___ This is ___ What’s up, ___ and more...
  • 30. <speak> <!-- Must be at the start of the string --> <say-as interpret-as="characters">SSML</say-as> <break time="3s"/>. <audio src="https://example.com/file.mp3"></audio> <say-as interpret-as="cardinal">10</say-as>. <say-as interpret-as="ordinal">10</say-as> <say-as interpret-as="characters">10</say-as>. <sub alias="World Wide Web">WWW</sub>. <p><s>This is one.</s><s>This is two.</s></p> </speak> <!-- Must be at the end of the string --> Reinforce it with SSML Speech Synthesis Markup language “S S M L” [3 second pause] [audio file plays] “Ten” “Tenth” “One Oh” World Wide Web [two sentences]
  • 31. function welcome (app) { return isPreviousUser(app.getUser().userId).then((userHasVisited) => { if (userHasVisited) { app.ask(`Welcome to Number Genie!...`, NO_INPUT_PROMPTS); } else { app.ask(`Hey you're back...`, NO_INPUT_PROMPTS); } }); } Reinforce it with persistence https://developers.google.com/actions/assistant/best-practices
  • 32. Design for multiple surfaces.
  • 33. Support different surface capabilities https://developers.google.com/actions/assistant/surface-capabilities AUDIO_OUTPUT SCREEN_OUTPUT
  • 34. function simpleResponse (app) { app.ask({ speech: 'Howdy! I can tell you fun facts about ' + 'almost any number, like 42. What do you have in mind?', displayText: 'Howdy! I can tell you fun facts about ' + 'almost any number. What do you have in mind?' }); } Support speech and display text https://developers.google.com/actions/assistant/responses Chat text should be a subset of audio
  • 35. function suggestionChips (app) { app.ask(app.buildRichResponse() .addSimpleResponse('Howdy! I can tell you fun facts ‘ + ‘about almost any number. What number do you have ‘ + ‘in mind?') .addSuggestions(['0', '42', '100', 'Never mind']) ); } Guide the user (suggestion chips) https://developers.google.com/actions/assistant/responses Chip text should be under 25 characters
  • 36. function basicCard (app) { app.ask(app.buildRichResponse() .addSimpleResponse('Math and prime numbers it is!') .addBasicCard( app.buildBasicCard(`42 is an even composite number. It ` + `is composed of three distinct prime numbers multiplied together. It ` + `has a total of eight divisors. 42 is an abundant number, because the ` + `sum of its proper divisors 54 is greater than itself. To count from ` + `1 to 42 would take you about twenty-one…`) .setTitle('Math & prime numbers') .addButton('Read more') .setImage('https://example.google.com/42.png', 'Image alternate text') ) ); } Display basic cards https://developers.google.com/actions/assistant/responses
  • 37. Lists and carousels for selection https://developers.google.com/actions/assistant/responses Used for easy selection <10 items Used for comparison <30 items
  • 39. Google Home Mobile Device NAME Registered device user’s full name Registered device user’s full name DEVICE_COARSE_LOCATION Zip code and city N/A DEVICE_PRECISE_LOCATION Coordinates and street address Coordinates let permission = app.SupportedPermissions.DEVICE_COARSE_LOCATION; app.askForPermission('To find bookstores near you', permission); Q: "Recommend me a local bookstore" A: "To find bookstores near you, I'll just need to get your zip code from Google. Is that okay?" Ask for information https://developers.google.com/actions/assistant/helpers#user_information
  • 40. Link an account (OAuth2) https://developers.google.com/actions/identity/ Seamless account linking with Google Sign-in
  • 41. Transact with the user https://developers.google.com/actions/identity/ Build orders Use Google provided payment instrument Use your payment processor (Stripe, Braintree, Vantiv, more coming) Update order status
  • 44. In Dialogue Discovery: Explicit Triggering (of Actions) Ok Google, ask Google I/O 17 about what was announced Trigger Phrase App Name Developer Specified Action Preposition Action Phrase Developer Specified Partner Examples: Let’s speak to Domino’s At Akinator Ask Dr. Doggy if dogs can eat chocolate Ok Google, let’s talk to Google I/O 17 Trigger Phrase App Name Developer Specified
  • 45. Hey Google, I want to play a game.Hey Google, tell me a joke. In Dialogue Discovery: Implicit Triggering Hey Google, I want to work out. Hey Google, what’s the surf report
  • 46. Discovery in the Google Assistant Directory
  • 47. Link to your Assistant App From anywhere Share through social media. Promote through your own site or apps. Encourage press to drive traffic to your Assistant app.
  • 48. Where do I start?
  • 50. 0. Put away the code 1. Draft a persona 2. Write some dialog
  • 54. Actions on Google Developer Community https://g.co/actionsdev Actions on Google Developers https://developers.google.com/actions Actions on Google Developer Challenge https://g.co/actionschallenge +GreenIdo @greenido Developer Advocate