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
36
栗まんじゅう問題を体感するアプリを作って入門した ARKit + SceneKit
mojage
0
110
SKStoreReviewController
mojage
0
440
スマホアプリ開発で位置情報をシミュレーションする
mojage
0
290
Other Decks in Technology
See All in Technology
今この時代に技術とどう向き合うべきか
gree_tech
PRO
2
2.1k
RDS の負荷が高い場合に AWS で取りうる具体策 N 連発/a-series-of-specific-countermeasures-available-on-aws-when-rds-is-under-high-load
emiki
7
4.5k
個人でデジタル庁の デザインシステムをVue.jsで 作っている話
nishiharatsubasa
1
180
OSSで50の競合と戦うためにやったこと
yamadashy
3
920
AI時代、“平均値”ではいられない
uhyo
8
2k
「改善」ってこれでいいんだっけ?
ukigmo_hiro
0
400
Bill One 開発エンジニア 紹介資料
sansan33
PRO
4
14k
OpenTelemetry が拡げる Gemini CLI の可観測性
phaya72
2
1.7k
「魔法少女まどか☆マギカ Magia Exedra」のIPのキャラクターを描くための3Dルック開発
gree_tech
PRO
0
140
AWS UG Grantでグローバル20名に選出されてre:Inventに行く話と、マルチクラウドセキュリティの教科書を執筆した話 / The Story of Being Selected for the AWS UG Grant to Attending re:Invent, and Writing a Multi-Cloud Security Textbook
yuj1osm
1
120
生成AI時代のセキュアコーディングとDevSecOps
yuriemori
0
150
OAuthからOIDCへ ― 認可の仕組みが認証に拡張されるまで
yamatai1212
0
160
Featured
See All Featured
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
132
19k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
52
5.7k
YesSQL, Process and Tooling at Scale
rocio
173
15k
Mobile First: as difficult as doing things right
swwweet
225
10k
Bootstrapping a Software Product
garrettdimon
PRO
307
110k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
37
2.6k
The Straight Up "How To Draw Better" Workshop
denniskardys
238
140k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
127
54k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
16
1.7k
The Language of Interfaces
destraynor
162
25k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
12
1.2k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
253
22k
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スキル化
ご静聴ありがとうございました!