カスタムスキルのサンプルコードの使用
Alexa Skills Kitには、Alexa Skills Kit SDKで記述されたカスタムスキルのサンプルがいくつか用意されています。これらのサンプルは、AWS Lambda(アマゾンウェブサービスが提供するサービスの1つ)上のAWS Lambda関数として、デプロイおよびテストできます。
サンプルでは、Alexaスキルのデザインと実装に役立つ概念がいくつか示されています。たとえば、データベースやその他のAWSサービスに接続したり、サービス呼び出しの間で情報を格納したりする方法などです。
サンプルのソースコードを入手する
サンプルは、GitHubのリポジトリとして入手できます。リポジトリを自分のGitHubアカウントにフォークし、デスクトップにクローンを作成することができます。または、GitHubからリポジトリ全体のzipファイルをダウンロードします。
リポジトリはAlexaの公式GitHubアカウントにあります。このアカウントでスキルサンプルを参照するか、「skill sample」で検索することができます。言語フィルターを使用すると、プログラミング言語で検索結果を絞り込むことができます。
Alexaの公式GitHubアカウントには、次のAlexa Skills Kit SDKも含まれています。
各SDKのサンプルについては、次を参照してください。
サンプルのデプロイとテストをする
スキルサンプルなどのスキルをテストする方法の詳細については、スキルのテストを参照してください。具体的には、以下のセクションを参照してください。
プログラミングの概念
次の表には、具体的なコーディング概念とそれらを説明するためのサンプルが示されています。
概念 | 説明 | サンプル |
---|---|---|
NUMBER スロット |
NUMBER スロットタイプは、数字を表す単語を数値に変換し、その後数値として処理できるようにします。 |
トリビアスキル ハイ&ローゲームスキル |
カスタムスロットタイプ | これらのタイプは、スロットを定義する値のリストを使用します。項目がAmazonの標準タイプセットでは変換不可能で、スロット値が想定される一式のスロット値のいずれかである多くの場合に使用します。 | How Toスキル |
データベースストレージ | スキルでは、ユーザーがいったん中断したセッションを再開したときにも前回のデータを利用できるように、セッション間でデータを保持しておく必要がある場合があります。Alexa Skills Kit SDK for Node.jsでは、AWS DynamoDBを使用したデータ保持の処理を提供しています。 | ハイ&ローゲームスキル |
長い音声 | スキルでは、ポッドキャストなど、音声をストリーミングするディレクティブをAlexaサービスに送信することができます。詳細については、AudioPlayerインターフェースのリファレンスを参照してください。 | Audio Playerスキル |
複数ステージにわたる会話 | スキルでは、複数のステージにわたるユーザーの会話を処理でき、ユーザーが現在どのステージにいるかを追跡できます。 | トリビアスキル Audio Playerスキル |
複数言語 | 複数言語に対応するスキルを作成することもできます。Alexa Skills Kit SDK for Node.jsでは、スキルの読み上げテキストの複数言語への翻訳を含み、ユーザーのロケールに応じて正しい言語バージョンを返す処理を標準で提供します。 | トリビアスキル How Toスキル 豆知識スキル |
セッションの状態 | ユーザーが特定のスキルにマッピングされたアクションを実行するようにAlexaにリクエストすると、新しいセッションが開きます。このユーザーからのすべてのリクエストは、このセッションが閉じるまでそのスキルに送られます。スキルに送られた各リクエストには、新規のセッションか既存のセッションかを判断するために使用できるフラグが含まれます。また、セッションのアトリビュートを使用して、セッション中の応答とデータを保存できます。Alexa Skills Kit SDK for Node.jsには、セッション状態の処理が提供されています。 | トリビアスキル ハイ&ローゲームスキル 意思決定スキル 豆知識スキル |
関連トピック
- Hello Worldサンプルスキルのコード:
- Alexa Skills Kit SDKのいずれかをダウンロードします。
- カスタムスキルのビルド手順を確認します。
最終更新日: 2022 年 07 月 04 日