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
Echo SpotとAPIでインタラクティブなカスタムスキル
Search
KIKUCHI Joe
September 14, 2018
Programming
0
570
Echo SpotとAPIでインタラクティブなカスタムスキル
API Meetup Tokyo #28で発表したスライドになります。
KIKUCHI Joe
September 14, 2018
Tweet
Share
More Decks by KIKUCHI Joe
See All by KIKUCHI Joe
re:Invent初参加者が体験したre:Invent2018
woowig
1
550
PayPal Tech Meetup #2 - ブロックチェーンで資産管理
woowig
0
3.5k
Other Decks in Programming
See All in Programming
CSC305 Lecture 06
javiergs
PRO
0
210
uniqueパッケージの内部実装を支えるweak pointerの話
magavel
0
970
Cursorハンズオン実践!
eltociear
2
910
技術的負債の正体を知って向き合う / Facing Technical Debt
irof
0
150
Pull-Requestの内容を1クリックで動作確認可能にするワークフロー
natmark
2
490
複雑化したリポジトリをなんとかした話 pipenvからuvによるモノレポ構成への移行
satoshi256kbyte
1
1k
2分台で1500examples完走!爆速CIを支える環境構築術 - Kaigi on Rails 2025
falcon8823
3
3.5k
あなたとKaigi on Rails / Kaigi on Rails + You
shimoju
0
120
クラシルを支える技術と組織
rakutek
0
200
XP, Testing and ninja testing ZOZ5
m_seki
3
600
アメ車でサンノゼを走ってきたよ!
s_shimotori
0
220
Railsだからできる 例外業務に禍根を残さない 設定設計パターン
ei_ei_eiichi
0
440
Featured
See All Featured
GitHub's CSS Performance
jonrohan
1032
470k
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
19
1.2k
Rails Girls Zürich Keynote
gr2m
95
14k
StorybookのUI Testing Handbookを読んだ
zakiyama
31
6.2k
Learning to Love Humans: Emotional Interface Design
aarron
274
41k
Docker and Python
trallard
46
3.6k
Art, The Web, and Tiny UX
lynnandtonic
303
21k
RailsConf 2023
tenderlove
30
1.2k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
PRO
189
55k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
33
2.5k
It's Worth the Effort
3n
187
28k
A better future with KSS
kneath
239
18k
Transcript
Echo Spot と API で インタラクティブな カスタムスキル API Meetup Tokyo
#28 (Sep 14, 2018) KIKUCHI Joe
自己紹介 名前:菊池条 勤め先:フォージビジョン株式会社 好きなAWS サービス:AWS Lambda, AWS X-Ray API Meetup
Tokyo #28 (2018/9/14) 2
会社紹介 http://forgevision.com/ API Meetup Tokyo #28 (2018/9/14) 3
Echo Spot 2018 年7 月26 日 日本でも出荷開始 「スタイリッシュでコンパクトなEcho Spot は、ス
マートスピーカーの機能にスクリーンが加わって さらに便利に」 - Amazon 製品紹介ページより 2.5 インチ タッチスクリーン API Meetup Tokyo #28 (2018/9/14) 4
インタラクティブな Alexa カスタムスキルを 作ってみた API Meetup Tokyo #28 (2018/9/14) 5
作ったスキル クイズを出題 クイズに関係した画像の表示 回答は音声か画面タッチで可能 ASK CLI とASK SDK for Node.js
を使って TypeScript で開発 API Meetup Tokyo #28 (2018/9/14) 6
使用したAPI クイズ研 API http://quizken.jp/api Google Custom Search JSON API https://developers.google.com/custom-
search/json-api/v1/overview API Meetup Tokyo #28 (2018/9/14) 7
画像表示 カスタムスキルの設定でDisplay インターフェース を有効にする レスポンスのdirectives にDisplay.RenderTemplate を 追加 テンプレートのbackgroundImage やimage
に画像の URL を指定 API Meetup Tokyo #28 (2018/9/14) 8
画像表示(コード例) const image = new ImageHelper() .withDescription(description) .addImageInstance(url) .getImage(); const
display: BodyTemplate3 = { image, textContent, title, type: 'BodyTemplate3', }; return handlerInput.responseBuilder .speak(speechText) .addRenderTemplateDirective(display) .getResponse(); API Meetup Tokyo #28 (2018/9/14) 9
タッチイベント テンプレートのタッチイベントを起こしたい箇所 のtoken を設定 テキスト中の特定の箇所にタッチイベントを入れ たい場合は<action token="token">Touch Me!</action> のようにマークアップする Display.ElementSelected
リクエストが発行されるの で、リクエストに含まれるtoken の値を見て適切に 処理する API Meetup Tokyo #28 (2018/9/14) 10
タッチイベント(コード例) const elementSelectedRequestHandler: RequestHandler = { canHandle(handlerInput: HandlerInput) { return
handlerInput.requestEnvelope.request.type === 'Display.ElementSelected'; }, handle(handlerInput: HandlerInput) { const { token } = handlerInput.requestEnvelope.request as ElementSelectedRequest; return doSomething(token); }, }; API Meetup Tokyo #28 (2018/9/14) 11
デモ API Meetup Tokyo #28 (2018/9/14) 12
作っているもの 会社の受付スキル 来客の要件を聞き、内容に応じた通知を行う A さんのお客様の場合はSlack でmention 、B さん のお客様の場合は電話、etc API
Meetup Tokyo #28 (2018/9/14) 13
会社の受付スキル(構成図) API Meetup Tokyo #28 (2018/9/14) 14
ForgeVision Engineer Blog https://techblog.forgevision.com/ API Meetup Tokyo #28 (2018/9/14) 15
ご清聴ありがとう ございました API Meetup Tokyo #28 (2018/9/14) 16