Alexa虎の巻(2)Alexa-hostedスキルでHello World

記事タイトルとURLをコピーする

https://cdn-ak.f.st-hatena.com/images/fotolife/s/serverworks/20200712/20200712033235.png  こんにちは、サーバーワークスのこけしの人、坂本(@t_sakam)です。

 さて、前回の「Alexa虎の巻」の第1回目は「Amazon開発者アカウントを作成する」をお届けしました。前回はアカウント作成のみでしたので、物足りなかったかもしれません。

 今回からは「Alexa-hostedスキル」というものを利用してAlexaスキルを作りたいと思います。ですが、おそらく第2回目の今回も「これでもうスキルが動いてしまうの?」と思われるくらい簡単な手順となっています。今回はひとまず「Alexa-hostedスキル」の手軽さを感じていただきたいので「Hello World」とAlexaがいってくれるだけのスキルをサクッと作ってみます。びっくりするくらい簡単なので、ぜひ続きを読んで試してみてください!

1. Alexa-hostedスキルとは

 Alexaのスキル作成は、Amazon開発者アカウントのみでなく、AWSのアカウントも取得し、Lambda等のAWSのサービスを利用してスキルを作っていくのが一般的な方法です。ですが「Alexa-hostedスキル」を使うとAWSのアカウントを持っていなくてもAlexaの開発者コンソールのみで、ちょっとしたスキルの作成ができてしまいます。

 「Alexa-hostedスキル」は、いわば「Alexaの開発者コンソールにS3やLambdaなど、Alexaのスキル作成に必要な最低限のAWSリソースがセットでくっついている便利なもの」というイメージです。リソースは利用できる量に制限があるので、場合によってははAWSで作り直すことも必要になってくるかもしれませんが、ちょっとしたスキルであれば「Alexa-hostedスキル」で充分かと思います。ちなみに「Alexa-hostedスキル」はバージニアリージョン(us-east-1)で動いているそうです。

Alexa-hostedスキルとは、スキルのバックエンドサービスにAWSクラウドリソースを自動的にプロビジョニングして管理する、新しい機能です。 Alexa-hostedスキルでは、スキルの作成、編集、公開がすべてAlexa開発者コンソールで完結します。

 まずは、Alexaに「Hello World」と言ってもらうところからスタートです。

2. Alexaの開発者コンソール

 まずは、前回の続きの「Alexaの開発者コンソールの」画面を開きます。画面左中央にある「スキルを作成」ボタンを押します。 https://cdn-ak.f.st-hatena.com/images/fotolife/s/serverworks/20200712/20200712033239.png

3. 新しいスキルを作成

 「新しいスキルを作成」という画面が表示されるので「スキル名」の項目に「ハローワールド」と入力します。デフォルトの言語は「日本語(日本)」にします。

 次に「1. スキルに追加するモデルを選択」では「カスタム」を選択します。「2. スキルのバックエンドリソースをホスティングする方法を選択」では「Alexa-Hosted(Node.js)」を選択します。 https://cdn-ak.f.st-hatena.com/images/fotolife/s/serverworks/20200712/20200712033243.png

4. スキルに追加するテンプレートを選択

 ここで「Hello World」スキルを選択し、画面右上の「テンプレートで続ける」ボタンを押します。 https://cdn-ak.f.st-hatena.com/images/fotolife/s/serverworks/20200712/20200712033248.png

5. Alexa-hostedスキルの構築スタート

 「Alexa-hostedスキルを作成しています。これには約1分かかります。」という文言が表示され、スキルの構築がスタートします。 https://cdn-ak.f.st-hatena.com/images/fotolife/s/serverworks/20200712/20200712033253.png 音声モデルを作成しています… https://cdn-ak.f.st-hatena.com/images/fotolife/s/serverworks/20200712/20200712033256.png AWSリソースをプロビジョニングしています… https://cdn-ak.f.st-hatena.com/images/fotolife/s/serverworks/20200712/20200712033301.png コードエディターの準備をしています…

6. スキル作成完了

 スキル作成が完了しました。なんと、これだけで「Hello Worldスキル」完成です。 https://cdn-ak.f.st-hatena.com/images/fotolife/s/serverworks/20200712/20200712033305.png

7. 呼び出し名

 動作確認テストをする前に画面左メニューの「呼び出し名」を選択します。画面中央の「スキルの呼び出し名」が「ハローワールド」になっていることを確認します。

 画面上メニューの「テスト」をクリックします。  https://cdn-ak.f.st-hatena.com/images/fotolife/s/serverworks/20200712/20200712033309.png

8. テスト画面

 テスト画面が表示されました。 https://cdn-ak.f.st-hatena.com/images/fotolife/s/serverworks/20200712/20200712033313.png

9. スキルのステータスを変更

 画面左上に「非公開」となっている箇所があるので、こちらを「開発中」に変更します。こちらで開発中にしておくと、Echoで動作確認をしたいときにAlexaアプリで有効化せずとも、自動的にに有効化され、すぐにEchoで確認することができます。 https://cdn-ak.f.st-hatena.com/images/fotolife/s/serverworks/20200712/20200712033318.png

10. テスト

 画面左上の入力欄に「ハローワールドを実行して」と入力し、自分のマシンの「Enter」ボタンを押します。 https://cdn-ak.f.st-hatena.com/images/fotolife/s/serverworks/20200712/20200712033322.png

11. Alexaからの回答

「Welcome, you can say Hello or Help. Which would you like to try?」とAlexaが返してきました。 https://cdn-ak.f.st-hatena.com/images/fotolife/s/serverworks/20200712/20200712033325.png

12. コードエディタ

 英語なのは、このスキルのテンプレートが英語だからです。画面上メニューで「コードエディタ」をクリックすると、コードが表示され、文言が英語になっているのが確認できます。つまり、この文言を日本語にすれば、日本語にすることもできますが、ひとまず今回は「Alexa-hostedスキル」の手軽さを感じていただくのが目的なので、このまま進めます。 https://cdn-ak.f.st-hatena.com/images/fotolife/s/serverworks/20200712/20200712033345.png

13. helloといってみる

 Alexaが「HelloかHelpといってみて」と言っているので、入力欄に「hello」と入れて「Enter」ボタンを押します。 https://cdn-ak.f.st-hatena.com/images/fotolife/s/serverworks/20200712/20200712033329.png

14. Hello World

 Alexaが「Hello World」と返してくれました。 https://cdn-ak.f.st-hatena.com/images/fotolife/s/serverworks/20200712/20200712033333.png

15. Echoで確認する場合1

 すでに今回のアカウントと紐付けたEchoを使っている方はすぐにEchoでも確認できますので、ぜひEchoでも試してみてください。

 Alexaアプリを開いて、スキルが自動的に有効化されていることも確認しておきます。

 スマホやタブレットの「Alexaアプリ」を開きます。画面左上の「三」マークをクリックし、表示されたメニューから「スキル・ゲーム」を選択します。 https://cdn-ak.f.st-hatena.com/images/fotolife/s/serverworks/20200712/20200712033337.png

16. Echoで確認する場合2

 画面上メニューの「有効なスキル」を選択します。次の画面で「開発」を選択すると「ハローワールド」スキルが表示されます。「ハローワールド」をクリックすると、すでにスキルが有効化されていることを確認できます。

 先程のテストの工程で「非公開」のまま「開発中」に変更していない場合は、この画面でスキルの有効化をおこなう必要があります。 https://cdn-ak.f.st-hatena.com/images/fotolife/s/serverworks/20200712/20200712033341.png

まとめ

 今回は「Alexa-hostedスキルでHello World」をお届けしました。問題なくAlexaが「Hello World」といってくれたでしょうか?

 今回も手順にしたがってポチポチしただけでスキルが動くようになってしまったので、少し物足りなかったでしょうか? ただひとまず「Alexa-hostedスキル」の手軽さはご理解いただけたのではないでしょうか? 次回も「Alexa-hostedスキル」を使っていきたいと思います。お楽しみに!

 いや〜、「Alexa」って本当にいいものですね!