ドラフト // 下階層用テンプレート #topicpath ---- //ここにコンテンツを記述します。 #contents Amazon Echoに搭載されてるAmazon Alexaは、スキルという仕組みを使うことで、自前のプログラムをEcho上で走らすことができます。 **やってみる [#ecd1c214] AWS/Amazon Developer Servicesアカウント作成メモ で作成したアカウントで https://developer.amazon.com/ からログインし、右上のDeveloper Consoleを選択。Devloper Consoleが表示されたら上部メニューの「ALEXA」を選択します。 #ref(IMG_3741.png_new.png) Alexa Skills Kit を選択。 #ref(IMG_3742.png_new.png) ***呼び出し名の定義 [#o390e5d1] 右上の「新しいスキルを追加する」を選択 #ref(IMG_3743.png_new.png) 言語やスキル名、呼び出し名を指定して、保存をクリック。 #ref(IMG_3745.png_new.png) スキル名: HelloWorld 呼び出し名: うちゅうのまめちしき としました。これで「アレクサ、宇宙の豆知識を開いて」みたいにアプリを起動することができるようになります。 *** インテントスキーマの設定 [#o34b3b0e] いわゆる呼び出すメソッドを定義します。 下記のように「GetNewFactIntent」というメソッドを定義してみます。 #ref(IMG_3746.png_new.png) { "intents": [ { "intent": "GetNewFactIntent" }, { "intent": "AMAZON.HelpIntent" }, { "intent": "AMAZON.StopIntent" }, { "intent": "AMAZON.CancelIntent" } ] } って定義しました。インテント名: GetNewFactIntent ってのはこのあと出てくる「サンプル発話」で日本語に関連付けられます。 インテント名には引数とかその他の設定もあるのですが、今回はこのままで。 ちなみにインテントスキーマについては https://developer.amazon.com/ja/docs/custom-skills/define-the-interaction-model-in-json-and-text.html#h2_sample_utterances この辺に整理されていて、そこには { "intents": [ { "intent": "GetHoroscope", "slots": [ ↓ GetHoroscope ってインテントはSignとDateっていう引数を持つって意味 { "name": "Sign", "type": "LIST_OF_SIGNS" }, ←型が LIST_OF_SIGNS っていうカスタム型 { "name": "Date", "type": "AMAZON.DATE" } ←型が ビルトインのAMAZON.DATE 型 ] }, { "intent": "GetLuckyNumbers" } ] } こんな感じのサンプルがあります ***サンプル発話の設定 [#fd764b0b] サンプル発話に以下のように定義します。サンプル発話を指定することで、先のインテント名を日本語に関連付けます。 #ref(IMG_3747.png_new.png) GetNewFactIntent 豆知識 GetNewFactIntent 豆知識を教えて GetNewFactIntent 他の豆知識 GetNewFactIntent 雑学 GetNewFactIntent 雑学を教えて GetNewFactIntent 他の雑学 GetNewFactIntent 知識 GetNewFactIntent 何か GetNewFactIntent 何か教えて としました。 サンプル発話の仕様についても、先とおなじサイトに説明があって https://developer.amazon.com/ja/docs/custom-skills/define-the-interaction-model-in-json-and-text.html#h2_sample_utterances ココをみると GetHoroscope {Sign} の運勢を教えて GetHoroscope {Sign} の {Date} の運勢を教えて というようにインテントの定義で定義したSign/Date などをプレースホルダとして指定することが出来るようですね。 ***関連リンク [#j7d38c18] -[[Alexa | アレクサ | Alexaスキル開発トレーニング>https://developer.amazon.com/ja/alexa-skills-kit/training/building-a-skill]] まずはコレをやる -[[開発中のAlexaスキルを実機テストする方法 - Qiita>https://qiita.com/hayao_k/items/a13b0c9327c49934eda3]] 仕様がころころかわるからか、実機テストするにはもうひと頑張り必要でした。参考になりました! -[[カスタムスキルのAWS Lambda関数を作成する | Custom Skills>https://developer.amazon.com/ja/docs/custom-skills/host-a-custom-skill-as-an-aws-lambda-function.html]] 公式 -[[スキルのテストがシミュレーター「Echosim.io」で可能になりました : Alexa Blogs>https://developer.amazon.com/ja/blogs/alexa/post/183200a2-1668-4831-aa8f-69f676e07957/echosim-io]] 試してないけど実機検証に近いことができるぽい -[[日本語のAlexaスキルの作り方(30分あればAmazon Echoがなくても試せるよ) - KAYAC engineers' blog>http://techblog.kayac.com/lets-make-alexa-skill-2017]] -[[Amazon Echo (Alexa) のSkillの開発に必要な基本概念を押さえる - Qiita>https://qiita.com/chroju/items/3f30fe424df36e4b4d80]] -[[Alexa Skill 開発メモ 開発用Amazonアカウント用意と、Alexa.appの入手方法 - Qiita>https://qiita.com/sitopp/items/1704c338206be7ebfced]] ---- この記事は #vote(おもしろかった,そうでもない) #comment #topicpath SIZE(10){現在のアクセス:&counter;}