C#によるAlexaスキル実装の基礎特集:はじめてのAlexaスキル開発(3/3 ページ)

» 2018年03月06日 05時00分 公開
[かわさきしんじInsider.NET編集部]
前のページへ 1|2|3       

Lambda側の設定

 AWSマネジメントコンソールからLambdaのページに移動すると、次のように作成したLambda関数が表示される。

作成した関数の一覧 作成した関数の一覧

 VSベースでLambda関数を作成した場合、ここには公開時に指定した関数名が表示される。この場合は「HelloAlexaFromCSharpSample」がそうだ。これをクリックすると、前回と同様なトリガーを指定する画面が表示される。

トリガーおよびスキルIDの設定画面 トリガーおよびスキルIDの設定画面

 ここでトリガーに[Alexa Skills Kit]を選択して、アクセスを許可するスキルのIDを指定すればLambda関数側の設定は完了する。具体的な手順は前回の記事を参照されたい。スキルを新規に作成した場合は、Lambda関数とスキルの両方でスキルIDや関数のARN(Amazon Resource Name)のコピー&ペーストを行う必要があることには注意しよう。

Alexa側の設定

 Alexaスキル側の設定も前回同様だ。ただし、今度は対話モデルの作成に「スキルビルダー」と呼ばれるツールを使ってみた。それ以外は前回と同様なので、具体的な手順の紹介は割愛する。

[対話モデル]タブにある[スキルビルダーを起動する]をクリック [対話モデル]タブにある[スキルビルダーを起動する]をクリック

 スキルビルダーを使うと、JSONスキーマを直に入力することなく、GUIベースで作成できる。

スキルビルダーの起動画面 スキルビルダーの起動画面

 インテントを新規に作成するには、画面中央の[Intents]部分にある[Add an Intent]をクリックする。これにより、次のような画面が表示される。

スキルを新規に作成 スキルを新規に作成

 [Create a new custom intent]欄にインテント名を入力する。ここでは上で述べた「HelloFromCSharpIntent」とする。そして、[Create Intent]ボタンをクリックする。すると、サンプル発話を入力する画面が表示される。

対話モデルの入力 対話モデルの入力

 [Sample Utterances]にフレーズを入力して、その隣にある[+]をクリックすればそのフレーズが追加される。これを何度か繰り返して、ウィンドウ上部にある[Save Model]ボタンをクリック、最後に[Build Model]ボタンをクリックすればインテントが作成される。その少し右側にある[Configuration]ボタンをクリックすると、スキルの構成画面に戻る。

 その後は前回と同様に構成を行えばよい。AlexaスキルとLambdaコードの関連付けができたら、実際に動作を確認してみよう。[テスト]タブで[テストシミュレータに進む]をクリックして、テストシミュレーターを起動し、動作を確認したところを以下に示す。

テストシミュレーターによる動作確認 テストシミュレーターによる動作確認

 なお、自分のAmazon開発者アカウントと同じアカウントに結び付けられているAmazon Echoがあれば、実機でのテストも可能だ。これにはスマートデバイスにAlexaアプリをインストールする(あるいはalexa.amazon.co.jpにブラウザでアクセスする)。その[スキル]タブを選択して、右上に表示された[有効なスキル]リンクをクリックしてみよう。[DEV スキル]タブに自分が開発中のスキルが表示されれば、実機でそのアプリを試せる。

Alexaアプリで[DEV スキル]タブに開発中のスキルがあるかを確認 Alexaアプリで[DEV スキル]タブに開発中のスキルがあるかを確認

 ただし、Google Homeアプリとは異なり、Alexaアプリに対してしゃべり掛けてもテストはできない。Alexaアプリではスキルの有効/無効を切り替えられるだけのようだ。ここに開発中のスキルが表示されないときには、自分のAmazonアカウントをAmazon.co.jpではAmazon.comと結び付けて、開発を行っているものと思われるので、「Alexa 開発者アカウント作成時のハマりどころ」などを参考に対処しよう。


 今回はAWS ToolkitとVSを使用して、Alexaから呼び出されるLambda関数をC#で実装してみた。Alexaスキル開発の基礎、VSを利用してスキル開発を行う基礎をこれまでに見てきたので、次回はスマートスピーカーと、より対話らしい対話をできるようにするとともに、何かおもしろネタを用意したいと思う(ハードル上げた!)。

「特集:はじめてのAlexaスキル開発」のインデックス

特集:はじめてのAlexaスキル開発

前のページへ 1|2|3       

Copyright© Digital Advantage Corp. All Rights Reserved.

RSSについて

アイティメディアIDについて

メールマガジン登録

@ITのメールマガジンは、 もちろん、すべて無料です。ぜひメールマガジンをご購読ください。