するめごはんのIT日記

主にITネタを書いていくのさ

Alexaハンズオントレーニング(中級者向け)に参加してきたよ

ごきげんよう

昨日に引き続き、Amazonさんのビルでのイベント
Alexaハンズオントレーニング(中級者向け)
に参加してきました。

f:id:surumegohan:20181109202044p:plain

■イベント情報

alexahandson181109.splashthat.com

とは言いつつも、内容はASK CLIのインストール&お試しと、ダイアログモデルの2つでした。

■会場入り

いつものようにAWS Loftにいたので、そこから会場へ。

早めについたら、Alexaイベントではお馴染みクラスメソッド社の方々がいらっしゃいました。
全員知った顔です。
というか、新しく入った人も知人でした。

で、今後のイベント開催について話してたらAlexaエバンジェリスト畠中さん登場です。

畠中さん「あ、今日運営やってくれるの?」
僕「違いますよw 一般参加者ですよw」
畠中さん「( ´゚д゚`)エー スタッフやってよー こっち側の人でしょー」

なんてやりとりしながら、でてきたモノ

f:id:surumegohan:20181109202705p:plain

まず物理的にでかいんですけども、重低音を響かせるスピーカーがでてきました。
Echoシリーズとペアリング?していい感じの音を響かせてました。

■セッション1 ASK CLIのインストール&設定

公式リンクはこちら。
配れた資料は別にあります。

developer.amazon.com

この設定が結構躓くわけですが、1回設定してまえば、後は大変便利です。

Visual Studio Codeプラグインがあるので、サクサクとスキルが作れちゃいます。

Lambdaを開いて、Alexaコンソールを開いて、いったりきたりしなくて良くなります。
ソースコード管理できるのでgitとかチーム開発もできるし、でかいライブラリも含めることができます。
デプロイもコマンド一発です。

VS CodeでLambda相当の画面を開いて、askと入力すると補完候補がでてきてコードのスニペットが選べます。
いままでIntentごとにハンドラーとか作ってたのが瞬殺で作成できちゃいます。

これはもう大変すばらしいです。

ただ、新規作成すると強制バージニアリージョンになってしまいますので注意。
東京リージョンには今のところできないらしい。

また、過去の公開済みスキルのコード編集もgit cloneみたいなask cloneで落としてくることができて、そいつはリージョンが東京でいけます。

これは画期的ですね。

が、やはり躓きポイントがあったので、それをブログにしてくださいとのことなので記載します。

●ASK CLIインストール&設定の躓いた箇所

1.ユーザ設定の画面でリンククリックすると戻れなくなる

f:id:surumegohan:20181109204120p:plain

手順通りやっていると、ポリシーを設定したユーザが作成されますが、そこでコンソール画面のURLがでてきます。
で、この画面の下にキー類が記載されたCSVファイルをダウンロードするボタンがあるんですけど、それを押す前にこのリンクを押すと、画面遷移されます。

新規作成ユーザとして画面遷移するので、開いてたページが一旦サインアウトされちゃったりすることがあります。
そうなると、新規作成したユーザだとAWSコンソールにそもそも権限がなくて入れない。
かといって、今まで利用してたユーザで入りなおすと別画面になるわけです。

つまり、設定に必要なキー情報を取得できるページに二度と戻れなくなります

こうなったら仕方ないので新しくユーザ作成しちゃいましょう。

2.文字コード

WindowsでASK CLIを使ってask newとかすると新しいプロジェクトが作れますが、そこで生成されるひな形類を日本語対応させないといけません。
が、この時、文字コードSJISだとデプロイとかできないし、できてもスキルとして流れる音声がバグります

落としてきたファイルはUTF8に変換してあげましょう。

3.Node.jsのバージョン

僕は大丈夫だったんですけど、どうも人によってはNode.jsのバージョンが新しいとASK CLIのインストールや設定でコケるらしいです。

■セッション2 ダイアログモデル

公式ドキュメントはこことかになります。
配られた資料は別にあります。

developer.amazon.com

ほとんどの時間をセッション1に割いていたので、セッション2は聞いてるだけな状態でした。
けれども、ここは中級編なので、スキル開発経験者しか基本的に参加していないのです。

なので、
ダイアログモデルを使うとスロットの内容を逐一 if-elseしなくても楽に書けますよ
というのが即時わかりました。

これ結構便利なやりかたなので、活用できると強いと思います。
コード量が減るので大変良い感じです。

参加した所感

事前に展開されてた内容とは異なっていたものの、ASK CLIはすごいです。
存在は知ってたけど放置プレイしてました。

今後使いまくりたいと思います。

それにしても、VUIのスキルをGUIではなくCLIで作成するというのも中々面白いですね。