Lock in $30 Savings on PRO—Offer Ends Soon! ⏳
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
450
スマホアプリ開発で位置情報をシミュレーションする
mojage
0
290
Other Decks in Technology
See All in Technology
【開発を止めるな】機能追加と並行して進めるアーキテクチャ改善/Keep Shipping: Architecture Improvements Without Pausing Dev
bitkey
PRO
1
110
AWS運用を効率化する!AWS Organizationsを軸にした一元管理の実践/nikkei-tech-talk-202512
nikkei_engineer_recruiting
0
160
Amazon Quick Suite で始める手軽な AI エージェント
shimy
1
1.6k
Snowflake だけで実現する “自立的データ品質管理” ~Data Quality Monitoring 解説 ~@ BUILD Meetup: TOKYO 2025
ryo_suzuki
0
120
さくらのクラウド開発ふりかえり2025
kazeburo
2
340
20251218_AIを活用した開発生産性向上の全社的な取り組みの進め方について / How to proceed with company-wide initiatives to improve development productivity using AI
yayoi_dd
0
620
ペアーズにおけるAIエージェント 基盤とText to SQLツールの紹介
hisamouna
2
1.4k
なぜ あなたはそんなに re:Invent に行くのか?
miu_crescent
PRO
0
130
2025年 開発生産「可能」性向上報告 サイロ解消からチームが能動性を獲得するまで/ 20251216 Naoki Takahashi
shift_evolve
PRO
2
220
【U/Day Tokyo 2025】Cygames流 最新スマートフォンゲームの技術設計 〜『Shadowverse: Worlds Beyond』におけるアーキテクチャ再設計の挑戦~
cygames
PRO
2
1.3k
子育てで想像してなかった「見えないダメージ」 / Unforeseen "hidden burdens" of raising children.
pauli
2
320
意外と知らない状態遷移テストの世界
nihonbuson
PRO
1
200
Featured
See All Featured
BBQ
matthewcrist
89
9.9k
Beyond borders and beyond the search box: How to win the global "messy middle" with AI-driven SEO
davidcarrasco
0
22
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
31
3k
Visualization
eitanlees
150
16k
The Illustrated Guide to Node.js - THAT Conference 2024
reverentgeek
0
210
Noah Learner - AI + Me: how we built a GSC Bulk Export data pipeline
techseoconnect
PRO
0
72
Gemini Prompt Engineering: Practical Techniques for Tangible AI Outcomes
mfonobong
2
230
Everyday Curiosity
cassininazir
0
110
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
333
22k
YesSQL, Process and Tooling at Scale
rocio
174
15k
The untapped power of vector embeddings
frankvandijk
1
1.5k
Organizational Design Perspectives: An Ontology of Organizational Design Elements
kimpetersen
PRO
0
42
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スキル化
ご静聴ありがとうございました!