Visual Studio+C#でAlexaカスタムスキル2 Sessionを使って会話のキャッチボールをする

はじめに この記事はVisual Studio+C#でAlexaカスタムスキル1 Twitterにあいさつしてみたの続編です。 前回の記事の内容がベースになっています。 lambdaの記述方法としてはマイナー(と勝手に思っている)なC#を使ってカスタムスキルを作成します。 概要 前回の実装では以下のように、1往復の会話で処理が完了していました。 そこで今回は少し改良して、以下のように会話を続けてみます。 またユーザーの返答によって処理を分岐してみます。 実装 今回の実装は前回からほぼlambdaのみを変更します。 (対話モデルも少しだけ変更します) Alexaと会話を続けるにはセッションを利用する必要があるので、その辺りの実装をしました。セッション管理の利用方法はAlexaスキル開発トレーニングシリーズ 第3回 音声ユーザーインターフェースの設計が参考になります。 今回はここのNode.jsのサンプルをもとにC#のコードを作成しました。 lambdaのプロジェクトはこちらに上げてあります。 対話モデル インテントスキーマのみ少し変更しました。 ※Yes, Noを受け付けるためにAMAZON.NoIntentとAMAZON.YesIntentを追加しています。 カスタムスロットタイプ、サンプル発話は前回と同じです。 { "intents": [ { "slots": [ { "name": "Word", "type": "GREETING_WORD" } ], "intent": "TwitterIntent" }, { "intent": "AMAZON.NoIntent" }, { "intent": "AMAZON.YesIntent" }, { "intent": "AMAZON.HelpIntent" }, { "intent": "AMAZON.StopIntent" } ] } lambda 前回と同様AWS Toolkit for Visual Studioを導入済みの環境でコーディングしていきます。 ...

2017-12-28 · 2 分 · 319 文字 · ayumax

Visual Studio+C#でAlexaカスタムスキル1 Twitterにあいさつしてみた

やったこと 1か月以上待ってようやく届いたAmazon Echoを使ってTwitterで挨拶してみました。 IFTTTを使えばスキルを作らなくても可能なのかもしれませんが、 スキルを作る事が目的なのでカスタムスキルで実装します。 チュートリアルやサンプルではLambdaメソッドはNode.jsを使ったものが多いのですが、 C# LoveなのでC#で書いてみました。 環境 実装に必要な環境は以下になります。 なおC#は.NET Core1.0を使うためMacでも開発はできると思います。 VS(Windows版)は2017でやりましたが、AWS Toolkitは2017より前のバージョンにも対応しているっぽいです。 Windows10 Amazon Developerのアカウント AWSのアカウント Visual Studio 2017 AWS Toolkit for Visual Studio Amazon Echo TwitterのAPI Alexaのスキルの実装 ほぼチュートリアル通りに進みます (このチュートリアル日本語で書かれててめちゃ分かりやすかったです。) 事前に Amazon Developerのアカウント登録が必要です。 なお今回はスキルビルダーは使っていません。 スキル名 & 呼び出し名 ともに「ついったー」としました。 インテントスキーマ TwitterIntentというインテントで、WordというスロットをGREETING_WORD型で定義 { "intents": [ { "slots": [ { "name": "Word", "type": "GREETING_WORD" } ], "intent": "TwitterIntent" }, { "intent": "AMAZON.HelpIntent" }, { "intent": "AMAZON.StopIntent" } ] } カスタムスロットタイプ スロットには挨拶の言葉が入るようにします。 ざっと見た感じデフォルトのスロットタイプには該当しないように思えたので カスタムスロットにしました。 ...

2017-12-27 · 2 分 · 391 文字 · ayumax