LoginSignup
2
1

More than 5 years have passed since last update.

ごきげんよう

この記事は
「するめごはんのVUI・スマートスピーカー Advent Calendar 2018」
の10日目の記事です。

以前、Alexaスキルを作るツールとしてNOIDについてこのアドベントカレンダーで触れました
https://qiita.com/surumegohan/items/a4170515010554e229a0

今回は同じくツールとしてNode-Redを使って挨拶スキルを作ります。

作り方

作り方と言っても、Qiitaや個人ブログに情報はあふれていると思います。

今回は以下の本に従ってみます。

スマートスピーカーアプリ開発入門 3大スマートスピーカー Amazon Echo Google Home LINE Clova対応

1.まずはNode-REDのアカウントを作成

1_NodeRed.png

2.次にIBM Cloudのアカウント作成

ライトで大丈夫です。

2_IBMaccount.png

3.IBM Cloudにログイン

ここで、アカウントIDはメールアドレスでログインできます。

3_IBMLogin.png

4.何も考えないと一部英語になる

本の通りに進めていけば問題ないですが、何も考えないでポチポチやっていくと、画面の一部が英語になります。

が、特に躓くような英単語はないと思います。

4_noderedEnglish.png

5.作成できる画面

商業誌の内容をそのままは書けないのですが、以下のような画面になります。

話しかけられたら、インテントの種類を判別して起動時はLaunchRequestなのでそのまま挨拶をする。
それ以外はインテントの場合分けをswitchをかませて対応を分岐させ、応答を返したらHttpのResponseにつないであげます。

5_nodedekita.png

6.Alexa Consoleもほぼ通常通り

Node-REDで作成したインテント名で、挨拶のためのインテントを作成してあげます。

6_AlexaConsole.png

ただし、エンドポイントはLambdaではないので、Node-REDで作成したURLをWebhookとして指定します。

6-2_endpoint.png

7.後は話しかけるだけ

きちんと動きます。

7_test.png

もし、「応答に時間がかかっている」というエラーになった場合は、Node-REDの画面で、線がすべて結びきれているか確認してみましょう。
JSONの作成はできていても、レスポンスを返すようになっていない場合があります。

まとめ

Node-REDでもスキル作成はできますし、本を参考にすれば、Node-REDもAlexaも初体験だったとしても、ぜいぜい2~3時間で作成できると思います。

※Amazonアカウント作成で躓く場合は別

Alexaのスキルをつくることに特化するならNOIDの方が断然楽だと思います。
ただ、Webhookとして、もっと汎用的にいろいろなことをやりたいとなると、Node-REDは選択肢の1つにはなるのではないでしょうか。

今回は以上です。

2
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
1