このページではAmazonが提供する動画教材シリーズ「Alexa道場:シーズン5 SSML」で使用されたサンプルスキル「なぞなぞクイズ」のソースコードや関連リンクを公開しています。以下の動画教材と合わせてみていただくことで、SSMLを活用したスキルの作成方法を学ぶことができます。
Season 5 SSML のプレイリストへのリンク
「なぞなぞクイズ」スキルをすばやくビルドしてテストするには、以下の手順に従ってください。
Alexa-hostedスキルを使うと、開発者コンソールのみでスキルの編集からビルド、公開まで行うことができます。開発者コンソールには、スキルのバックエンドのプログラムコードを管理およびデプロイするためのコードエディターが含まれます。 Alexa-Hostedスキルが提供するサービスについての詳細はブラウザの新しいタブを開き、こちら のページを参照してください。
- Amazonの開発者ポータルを開き、画面右上のログインをクリックします。(開発者アカウントをお持ちでない場合は、ここで新規で登録する必要があります。開発者アカウントの登録は無料です。)
- ログインできたら、**Alexa**のリンクをクリックします。Alexaの開発者ポータルの画面が開きます。
- 画面上部のAlexa Skills Kit (ASK)をクリックし、プルダウンメニューから開発者コンソールをクリックします。
- Alexaの開発者コンソールが開いたら、画面右側のスキルの作成ボタンをクリックします。
- スキル名を入力します。ここでは「なぞなぞクイズ」と入力します。デフォルトの言語は**日本語(日本)**のままにします。
- スキルに追加するモデルの選択では、カスタム を選択します。スキルのバックエンドリソースをホスティングする方法を選択では、Alexa-Hosted(Node.js) を選択し、画面右上のスキルを作成 ボタンをクリックします。
- スキルに追加するテンプレートを選択ではHello Worldスキルを選択し、選択ボタンをクリックします。スキルのビルドが開始されます。完了までには1分ほどかかります。完了するとコンソールのビルドタブが開きます。
- 左側のナビゲーションパネルの呼び出し名をクリックし、スキルの呼び出し名を入力します。これはユーザーがあなたのスキルを起動させるときに言わなければならない名前になります(スキル名と同じでも異なっていても構いません)。ここでは「なぞなぞクイズ」と入力します。
- 次に、左側のナビゲーションパネルからJSONエディターを開きます。テキスト編集フィールドの既存のコードを全て削除し、対話モデルのコードに置き換え、モデルをビルドをクリックします。ビルドにはしばらく時間がかかります。
- ビルドが完了したら次の手順「スキルコードのデプロイ」に進みます。
- Alexa開発者コンソールを開き、ページ上部のコードエディタタブをクリックします。
- 左側のパネルにフォルダーとファイルが表示されます。index.js のコードを変更し、保存ボタンをクリックしてから、デプロイボタンをクリックします。 これにより、Alexa-Hostedサービスが自動的に管理する Lambda関数にコードがデプロイされます。
- スキルコードのデプロイが完了したらスキルは完成です。次の手順「スキルのテスト」に進みます。
- Alexa開発者コンソールのトップのナビゲーションメニューから[テスト]タブを選択して、Alexaシミュレーターを開きます。
- ブラウザが、パソコンのマイクへのアクセス許可を要求する場合があります。マイクの使用を推奨しますが必須ではありません。マイクを使用しない場合は、Alexaシミュレーターにユーザーの発話を音声で入力するかわりに、キーボードで手入力する必要があります。
- 初めてテストの画面を開くとき、[このスキルでは、テストは無効になっています。]というメッセージが表示されます。テストモードを有効にするには、ドロップダウンメニューをクリックし非公開 を 開発中 に変更します。すると、画面下部のAlexaシミュレーターの画面がアクティブになります。
- スキルの動作をテストするには、左側パネルの上部にあるテキストボックスを使用してユーザーの音声の入力をします。スキルを起動する際、ウェイクワードを含む必要はありません。
- パソコンのマイクを使用する場合は、マイクのアイコンをクリックしたままの状態で、マイクに向かって話しかけます。
- キーボードで入力する場合は、テキストボックスにユーザーの発話をタイプ入力します。
- 音声またはテキストで「なぞなぞクイズを開いて」と入力してみましょう。
スキルでmp3オーディオを再生する方法については、Alexa 道場 シーズン5 エピソード5で学習します。
- index.jsのコードは標準ではAlexaサウンドライブラリの音声を使うコードになっています。mp3のサンプルオーディオファイルを試したい場合は、あらかじめassetsフォルダにあるmp3ファイルをAlexa-Hostedが提供するS3のストレージにアップロードします。
- GitHubのassetsフォルダにある3つのmp3ファイルをローカルにダウンロードします。
- コードエディタの画面を開きます。
- 画面左下の「メディアストレージ:S3」をクリックします。
- ブラウザの別タブにAWS S3の画面が開きます。
- アップロードボタンをクリックし、先ほどダウンロードした3つのmp3ファイルをアップロードします。
- Alexa開発者コンソールのコードエディタの画面に戻ります。
- LaunchRequestHandler および AnswerInterntHandler のhande()メソッド内のサウンドライブラリを使う場合のコードをコメントアウトし、独自のMP3オーディオファイルを使う場合のコメント部を外し有効にします。
- コードを保存しデプロイし、スキルをテストします。mp3オーディオが再生することを確認してください。
-
音声合成マークアップ言語(SSML)のリファレンス - 音声合成マークアップ言語(SSML)を応答に使用することで、Alexaの音声を生成する方法を制御できます。
-
Alexa Skills Kitサウンドライブラリ - スキルで使用できる音響効果のセットが用意されています。
-
Speechconリファレンス(感嘆詞): 日本語 - Speechconsは、Alexaがより表情豊かに発話する特別な語句やフレーズです。
-
スキルにAmazon Pollyの音声を使用するためのユーザーエクスペリエンスガイドライン - ユーザーにとって使いやすいエクスペリエンスになるよう、このガイドラインに従ってください。
-
Alexa Skills Kit Node.js SDK - Alexa Skills Kit SDK for Node.js の公式ドキュメント
-
Alexa Skills Kit Documentation - Alexa Skills Kit の技術文書
-
Amazon 開発者フォーラム(日本語) - Alexaのスキル開発でわからないことがあればこちらに投稿し、Alexaコミュニティからのアドバイスをもらうことができます。
-
Alexa 開発者ポータル - Alexaに関する全ての情報にアクセスできるポータルサイト。