家にEchoがあるが実際のところ音楽聞いたり天気予報確認することくらいでしか使っていない。
Alexaのスキルってどんなのあるのかな?と軽く調べてみた。
Alexaアプリのスキル一覧から各ジャンル毎にスキルの確認できる。
良くも悪くも、まぁこんなもんかって感じ。
既存のアプリどうこうは置いておいて
とりあえず何でもいいから作ってみてたら
ちょっとは息子が褒めてくれるかも。
息子に、「パパ、スゴイ」って言ってほしい。
よし、Alexa Skillやってみよう。
ということでチュートリアル的なのないかなと探していたら公式で動画があったので
それに沿って手を動かしてみることにしました。
https://developer.amazon.com/ja-JP/alexa/alexa-skills-kit/webinars
Season1 はじめてのAlexaスキル開発
- Episode1:スキル開発の準備をしよう
- Episode2:ハローワールドスキルを作ってみよう
- Episode3:スキルをテストしてみよう
Episode1:スキル開発の準備をしよう
動画
https://www.youtube.com/watch?v=KlU907D0ahY&feature=youtu.be
- amazon.co.jpのアカウントがなければ作成
- 開発者アカウントの作成
- Alexa開発者ポータルサイトの確認
ここではアカウント作成と開発者ポータルなどのページを確認するだけ。
Episode2:ハローワールドスキルを作ってみよう
動画
https://www.youtube.com/watch?v=nkzhxoOr0p8&feature=youtu.be
- カスタムスキルを作成する
- Alexaシミュレーターでテストする
- デベロッパーコンソールからスキルを作成しスキルのモデルとホスト先を選択する。
Alexaホストを選択しないとデベロッパーコンソールからエディタが使えないとのこと。
動画だと、ホスト選択でAlexaホストの選択が一つだけだがNode.jsがPythonかで選べるようになっていた。
今回も動画がNode.jsなのでNode.jsを選択。
画面上のシミュレーターを使って対話式のテストが出来る。
この時点では「ハローワールドを開いて」って入力するとアレクサから英語でゴニョゴニョ返してくれます。
Episode3:スキルをテストしてみよう
動画
https://www.youtube.com/watch?v=dRYtYQy5S6k&feature=youtu.be
- 日本語に修正する
- Echoデバイスでテストしてみる
Episode2ではAlexaが英語で応答してくれるが、これを日本語に変更します。
デベロッパーコンソールに付いているコードエディタにスキルのスクリプトが書いてあるので、英語で記載している部分を日本語に変更する。
def handle(self, handler_input):
# type: (HandlerInput) -> Response
speak_output = "ようこそハローワールドへ。ハローと言ってみて?"
...
def handle(self, handler_input):
# type: (HandlerInput) -> Response
speak_output = "こんにちわ。"
...
そう、これだけでAlexaが日本語で応答してくれます。
スキル作成しただけでスクリプトも書いてあってビルドとデプロイもポチってやるだけだし、自然言語も書き直すだけだし、ええ、そう、まさに至れり尽くせり。
対話形式で入力するとAlexaが応答してくれるが、入力をテキスト入力ではなくマイクから音声入力することも出来る。
入力インプットのところにマイクアイコンがあるので押しながら話すと応答してくれます。
さて、ここまでは、フムフムと言った感じで進めているのですが
なんと、Echoデイバイスをお持ちの方はこの時点でEchoを使ってハローワールドを試せます。
※Alexaアプリのスキルから有効なスキルに遷移して開発スキルのタブを開くと今回追加したハローワールドが追加されているはずです。
おそるおそるEchoデバイスに近づき「アレクサ、ハローワールドを開いて」と呟いてみました。
アレクサ「ようこそハローワールドへ。ハローと言ってみて?」
私「!!! 。。。ハロー」
アレクサ「こんにちわ」
私「まじか。。。。簡単すぎないかい、ちょっと」
次回は「Season2 Alexaスキル開発の基礎を学ぼう」をやります。