公開日:2017-11-30
二回に渡って Amazon Echo (Alexa) と kintone データの連携について触れましたが、会話が出来てこそ、スマートスピーカーだと言えるかもしれません。
今回は Amazon Echo を使用して、弊社が提供している kintoneアプリ開発プラットフォームサービス “gusuku” の説明をさせてみようと思います。
以下のように kintone でデータを用意し、このデータをもとに Alexa スキルで会話を組んでみます。
初めの挨拶の内容を文字列(複数行)フィールドに、さらに、人間の発話に対する応答をサブテーブル内に設定しています。
ひとつ注意点がありまして、Alexa は現在、残念ながら ”kintone” という単語を正しく発音できない(どのように発音されるかは、是非ご自身で試してみてください・・)ため、SSMLの subタグで発音して欲しい内容を指定しています。
Alexa スキルの設定を見ていきましょう。スキルの開発は https://developer.amazon.com/ja/ より「amazon alexa」を選択して進めていきます。
「Alexa Skills Kit」を選び、「新しいスキルを追加する」をクリックします。
「スキルの種類」は「カスタム対話モデル」、「スキルの対応言語」は「Japanese」を選択、「スキル名」はお好みで付け、「呼び出し名」にカタカナで「グスク」と入れます。
次に「対話モデル」の作成に移ります。
現在、対話モデルの作り方は
* 新しい “スキルビルダー” を使用する方法(ベータ)
* 従来からある作成方法
の 2種類があります。
「スキルビルダーを起動する ベータ」という目立つボタンがありますが、これを使わない場合は以下のように設定します。
「スキルビルダー」を起動した場合は以下のように設定します。
Google Home (Actions on Google) の Dialogflow 定義画面と操作感が似ているように感じますが、こちらの方がシンプルで洗練されていて扱いやすい印象を受けました。
「対話モデル」を作成すると、使用できるようになるまで数分かかるようなので、この間に Alexaスキルから起動する AWS Lambda Function を準備します。
ソースコードを こちら に置いていますが、 index.js が Alexa スキルから呼び出される処理です。
developer.amazon.com 側に戻り、 Lambda Function を起動するよう指定します。
以上で Alexa スキルの設定は完了です。
スキルを「有効」にして「サービスシミュレーター」を使います。
「聴く」のボタンを押すと 音声が流れます。
いかがだったでしょうか。
kintone に入れたデータをもとに会話を組み立てることが出来ていますが、あらかじめスキル開発画面側で「対話モデル」を作成しておく必要があります。
新しい「スキルビルダー」では対話モデルの定義を JSON形式で流し込むことが出来るようなので、こちらを使えば kintone側で対話モデルの組み立ても行って Alexa スキルを作ることができるようになるかもしれません。