Alexaのフラッシュブリーフィングスキルをいうものをご存知でしょうか?
「アレクサ、最新のニュースを教えて?」というと答えてくれるアレです。今回は、MISOを例にAlexaフラッシュブリーフィングスキルを作成してみます。
フラッシュブリーフィングスキルとは
Amazon公式サイトには以下と説明されています。
フラッシュブリーフィングスキルを作成して、Alexaユーザーにニュースヘッドラインや短いコンテンツを提供することができます。通常、ユーザーはフラッシュニュースを習慣的に使用します。
フラッシュニュースは、ニュースや、コメディー、インタビューなどその他のコンテンツ、リストのサマリーです。フラッシュブリーフィングスキルは、ユーザーのフラッシュニュースにコンテンツを提供します。開発者は、コンテンツの形式を定義するフラッシュブリーフィングスキルAPIを使ってフラッシュブリーフィングスキルを作成します。
ユーザーは、Alexaアプリの設定の中にあるフラッシュニュースセクションを探すか、アプリのスキルセクションで「フラッシュニュース」を検索して、フラッシュブリーフィングスキルを見つけて有効にできます。ユーザーは、初めてフラッシュニュースを聞く際に、音声でお気に入りのプロバイダーを有効にすることもできます。
フラッシュブリーフィングスキルを作成すると、オリジナルコンテンツを毎日ユーザーに届けられるようになります。少なくとも1日1回はコンテンツを更新し、15分ごとに変更できます。Alexaは、ユーザーに最適なパフォーマンスを提供し、待ち時間を最小限にできるよう、コンテンツをキャッシュします
引用:Amazon公式サイト(フラッシュブリーフィングスキルAPIについて)
デフォルトではNHKニュースと天気予報が有効になっていますが、これらも自分でカスタムスキルを追加・変更することが可能です。
フラッシュブリーフィングスキルを作成
今回は作成例として、このブログ(tdi MISO)のAlexaフラッシュブリーフィングスキルを作成してみます。
Alexaのフラッシュブリーフィングスキルの作成に必要なもの
以下の2つが必要です。
- Amazonアカウント
- Amazonアカウントの開発者登録
作り方
1.スキルの作成
Alexa Developer Console にログインし、「スキルの作成」をクリック
2.スキル種類の指定
スキル作成画面にて以下の情報を入力します。
スキル名⇒「tdi MISO」
デフォルトの言語⇒「日本語」
スキルに追加するモデルを選択⇒「フラッシュブリーフィング」
スキルのバックエンドリソースをホスティングする方法を選択⇒「ユーザー定義のプロビジョニング」(これのみ選択可)
入力後、「スキルの作成」をクリックします。
3.フラッシュブリーフィング情報の指定
ビルドタブにて必要な情報を入力します。
- カスタムエラーメッセージ(必須)⇒「T.D.I. MISOは現在使用できません」
スキル実行時にエラーが発生した場合にユーザーに通知する内容を指定します。(スキル名は現在使用できませんなど) (最大 100 文字)
tdiと入力すると「ティディー」と発音してしまうため、ここでは「T.D.I.」としています。
「+新しいフィードを追加」からフィード情報を追加し、各項目に以下の情報を入力します。
- プリアンブル⇒「T.D.I. MISOよりお伝えします」
フィードのコンテンツの前にAlexaが読み上げる短い紹介文です。「から, からお伝えします, よりお伝えします, が提供しています または がお送りします」で終わる必要があります。(最大35文字)
- フィード名⇒「tdi MISO」
このフィードの名前です。例: 開発者向けニュース
- コンテンツの更新頻度⇒「毎週」
1時間ごと、毎日、毎週から選択できます。
- コンテンツタイプ⇒「テキスト」
フィードコンテンツの形式です。
- コンテンツジャンル⇒「テクノロジー」
コンテンツの内容に最も近いジャンルを選択します。(ヘッドラインニュース、ビジネス、政治、エンターテイメントなど)
- フィード⇒「https://www.tdi.co.jp/miso/feed」※見られない方はフィード画面を参照ください
フィードのURLを指定します。
- フィードアイコン⇒「画像を指定」
このフィードを表す512×512ピクセルのPNG (透明可)またはJPGファイルを設定します。
↓フィード画面
入力したら、右下の「追加」をクリック。
動かしてみましょう
Alexa developer console上での操作
テストタブのテスト設定を「非公開」⇒「開発中」に変更します。
Alexaアプリでの設定
自身のアカウントでログインしたスマホアプリ側から設定を変更します。
「Alexaアプリ」⇒「設定」⇒「ALEXAの環境設定」⇒「フラッシュニュース」
「tdi MISO」が追加されているので右側のバーで有効化します。
これだけでスキルの設定は終わりです。
あとは動かすだけです。
MISO記事の内容を返してくれるようになりました!
(参考)フィードを自前で用意する
RSS配信を使うと非常に簡単にスキルが作成できますが、そのまま提供されているものを使った場合、音声を前提として考えられていないため、テキスト音声読み上げがおかしかったり、途中で切れてしまったりすることがあります。
今回で言うと、tdi MISOのRSSでは表示を前提として設計されているため、特定の文字数までしか配信していません。表示だけでは問題ないのですが、Alexaにしゃべらせることを考えると、途中で終わるのは不自然です。
そういった場合などは自分で用意した方が良いでしょう。
例えば今回では以下のような構成になります。サイトの更新情報をAWS Lambda経由でAmazon S3に連携し、S3の静的サイトホスティングによりスキル側に情報を提供します。RSSだけではなくjson形式も対応しています。
※json形式の例
1 2 3 4 5 6 7 |
{ "uid": "MISO_7526", "updateDate": "2019-11-18T00:00:00.0Z", "titleText": "AutoMLのNanonetsを使って物体検出をやってみた", "mainText": "AIや機械学習ブームの中、最近巷でAutoML(Automated Machine Learning)というワードをよく目にするようになりました。", "redirectionUrl": "https://www.tdi.co.jp/miso/?p=7526" } |
まとめ
非常に簡単に作成できることがお分かりいただけたかと思います。
スキルを公開することで自分のブログの更新通知などもAlexaで簡単に出来るかもしれません。
フラッシュブリーフィングスキルを作成してみた感想とポイントをまとめます。参考になれば幸いです。
- 簡単に作れるし、公開もできる。
- RSSはそのまま使えない場合もあるので注意、テストは欠かさずに。
- 今回は弊社のブログのRSS配信をそのまま利用したが、自分でJSONやRSSを用意した方が確実。
tdiのソリューションサービスはコチラ
執筆者プロフィール
- 入社以来、開発部門にて業務システム開発に従事。現在はAWS技術支援を担当。興味分野はAWS/GCP/Alexa/MachineLearning
この執筆者の最新記事
- Pick UP!2023.12.28コンソール操作からコードを生成する「AWS Console-to-Code」
- AWS・クラウド2020.01.16Alexaフラッシュブリーフィングスキルの作り方
- AWS・クラウド2019.03.18Alexa+Amazon Connectで電話をかける