Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Actions on Googleのアプリを作ってみた
Search
Sosuke Okubo
February 22, 2018
Technology
0
110
Actions on Googleのアプリを作ってみた
社内勉強会用のActions on Google入門な内容の発表資料です。
Sosuke Okubo
February 22, 2018
Tweet
Share
More Decks by Sosuke Okubo
See All by Sosuke Okubo
“Build trust through better privacy”を見たメモ
mojage
0
100
IPによる地域制限の浅い話
mojage
0
20
Android Robo Test
mojage
0
59
Kotlin Multiplatform
mojage
0
35
栗まんじゅう問題を体感するアプリを作って入門した ARKit + SceneKit
mojage
0
110
SKStoreReviewController
mojage
0
440
スマホアプリ開発で位置情報をシミュレーションする
mojage
0
290
Other Decks in Technology
See All in Technology
エンジニアが主導できる組織づくり ー 製品と事業を進化させる体制へのシフト
ueokande
1
100
エンジニアリングマネージャーの成長の道筋とキャリア / Developers Summit 2025 KANSAI
daiksy
3
830
普通のチームがスクラムを会得するたった一つの冴えたやり方 / the best way to scrum
okamototakuyasr2
0
110
バイブスに「型」を!Kent Beckに学ぶ、AI時代のテスト駆動開発
amixedcolor
2
580
Oracle Base Database Service 技術詳細
oracle4engineer
PRO
10
75k
新アイテムをどう使っていくか?みんなであーだこーだ言ってみよう / 20250911-rpi-jam-tokyo
akkiesoft
0
330
Platform開発が先行する Platform Engineeringの違和感
kintotechdev
4
580
今日から始めるAWSセキュリティ対策 3ステップでわかる実践ガイド
yoshidatakeshi1994
0
110
JTCにおける内製×スクラム開発への挑戦〜内製化率95%達成の舞台裏/JTC's challenge of in-house development with Scrum
aeonpeople
0
250
COVESA VSSによる車両データモデルの標準化とAWS IoT FleetWiseの活用
osawa
1
380
未経験者・初心者に贈る!40分でわかるAndroidアプリ開発の今と大事なポイント
operando
5
750
データ分析エージェント Socrates の育て方
na0
6
1.9k
Featured
See All Featured
Faster Mobile Websites
deanohume
309
31k
Git: the NoSQL Database
bkeepers
PRO
431
66k
Measuring & Analyzing Core Web Vitals
bluesmoon
9
580
The Power of CSS Pseudo Elements
geoffreycrofte
77
6k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
285
14k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
44
2.5k
Testing 201, or: Great Expectations
jmmastey
45
7.7k
[RailsConf 2023] Rails as a piece of cake
palkan
57
5.8k
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
18
1.1k
The Straight Up "How To Draw Better" Workshop
denniskardys
236
140k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
358
30k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
35
3.1k
Transcript
Actions on Googleのアプリを 作ってみた 2018/02/23 Sosuke Okubo
起
Google Home mini 年末の投げ売りの時に購入してはみた ものの、エンジニアらしいことができて いないので、とりあえずなんか作ろうと 思った。 という話。
承
調査1:Google Homeで独自の何かをさせる方 法 • Actions on Google ◦ 会話を介してやりとりができる •
IFTTT ◦ 任意の言葉にIFTTTに連携できる(トリガーのみ) • google-home-notifer ◦ 任意の言葉をGoogle Homeに喋らせることができる(アクションのみ)
調査2:Actions on Googleアプリを作る方法 • テンプレート ◦ トリビア、クイズなどいくつかテンプレートが用意されている • Dialogflow ◦
DIalogflow(旧API.ai)というチャットボット作成環境を使う ◦ NLU(自然言語理解)エンジンが用意されているので、一番難しいであろうユーザーの発話から アクションに割り振るところをサポートしてくれる • Actions SDK ◦ 短い会話で行う単純なアクションを行う場合や、自前の NLUを使うぜ!という硬派な人向け
というわけで、今回は、 Actions on Google + Dialogflow
作るもの 川崎市のゴミ分別を手伝ってくれるアプリ
なぜならそこにデータがあったから
転
全体図 3. ゴミの分別情 報を検索 4. 見つかったゴミ分別方法の情報を 返却 2. 文法を理解してユーザーが知りた いゴミの種類をFunctionsに渡す
5. 返答を組み立てて返す 6. ユーザーに回 答を返す 1. ユーザーとの会話 からゴミ分別アプリを 起動
Actions on Google 1. プロジェクトを作成 2. Dialogflowを使うことを選択
Dialogflow 1. Intentsを設定 2. Entitiesを設定 3. FulfillmentにCloud Functionsを 指定
Intents 1つの目的(アクション)を持った会話の まとまり 適用する文法を定義し、Entityを抽出し たり、Fulfillmentを呼び出すなどの応 答を設定することができる 今回はゴミの種類を抽出し、Fulfilment としてCloud Functionsを呼び出すよう に設定
Entities アプリの中で利用するキーワードの設定 色や数字などのよく利用されるものにつ いては最初から定義されている JSONやCSVで入力可能 今回は、ゴミの名前を定義
Fulfillment 所謂ビジネスロジック Webhookで外部サービスに解析した会 話の内容を渡して処理をしてもらう 今回はCloud Functionsで該当のゴミの 情報を検索し返答する処理を作成
Firebase 1. Firestoreにゴミの分別方法DBを 構築 2. 上記を検索するFunctions追加
結
デモ
今後やりたいこと • クオリティの向上 ◦ ()問題 ◦ 会話のデザインの見直し • アプリリリース •
Alexaスキル化
ご静聴ありがとうございました!