WonderPlanet Tech Blog

アドバンストテクノロジー部やCTO室のメンバーを中心に最新の技術情報を発信しています。

Alexa for Business でスキルを有効化する方法。Zoom for Alexaを試してみた。

こんにちはアドバンストテクノロジー部の@y-matsushitaです。
今回は先日発表されたAlexa for Businessのスキルを試しに有効化するまで触ってみたので、ご紹介します。
有効化してみたスキルはオンライン会議サービスであるZoomのAlexa for Business用スキルです。
こちらのスキルを使って声で通話を始めるスマート会議の構築にチャレンジしてみます。
Zoom for Alexa以外のスキルを有効化する場合にも参考になるかと思います。

Zoomについては紹介記事を投稿しているので、ご興味があればご覧ください。 tech.wonderpla.net

Alexa for Businessとは

Alexaを搭載するスマートスピーカーを一元管理したり、自社専用の「プライベートスキル」を開発できます。
Alexa for Business用に公開されているスキルもあり、社内で活用できる様々なスキルが利用できます。

aws.amazon.com

注意点

現時点(2018/1/15)でAlexa for Businessは日本語未対応です。
端末をAlexa for Businessに登録すると端末が英語版になってしまうため、日本語での操作が一切できなくなります。
元に戻すことは可能ですが、端末を再セットアップする必要があります。

必要なもの

・Amazon Echo(Alexa対応端末)
・AWSアカウント
・Windows機 *1
 Microsoft Windows 7 or later, the AWS Tools for Windows PowerShell, and the .NET Framework 3.5 or later.)
・Zoom Roomsアカウント*2

手順

手順としては以下のように進めていきます。

端末登録
Alexa for Businessでの設定
 ・ Room profileの作成
 ・ Skill groupの作成
 ・ Roomの作成
 ・ Skillの追加と「Zoom for Alexa」の有効化
 ・ Zoom for AlexaをSkill groupに登録
 ・ Zoom for AlexaとZoomアカウントの連携
 ・ Provider設定にZoomを追加
設定内容の確認
Zoom for Alexaを使う


端末登録

それでは早速はじめていきます。
まずはAlexa for BusinessにEchoを端末登録します。
AWSのAlexa for Businessを開き、Shared devicesから「Set up devices」をクリックします。
Alexa for Businessを利用するにはリージョンをバージニア北部に設定しなければいけない点に注意してください。 Alexa for Business Shared devices

セットアップ用のexeのダウンロードリンクが出るのでクリックしてダウンロードします。
f:id:y-matsushita:20171222122541j:plain:w500

ダウンロードしたexeを実行します。当然ですが実行はWindows環境で行います。
f:id:y-matsushita:20171222122743j

もし以下のような画面が出てたらインターネット回線が繋がっているか確認しましょう。
An Error occurred attempting to install DeviceSetupTool.

Access key IDとSecret access keyを入力します。
入力するKeyはAWSのIAMロールで発行します。
Alexa for Businessへのアクセス権限とプログラムによるアクセス許可をしておきましょう。 Setup AWS security credentials

認証が成功したらEchoとセットアップ用のPCをWi-Fiで接続します。
Select Alexa-enabled devices

この状態でEchoをセットアップモードにすると、EchoとDevice Setup Toolを接続させることができます。
セットアップモードにするには下図のボタンをオレンジ色が点灯するまで長押しします。
Echoのセットアップ

上手く検出できるとDevice Setup ToolにAmazon-◯◯◯という名前でデバイスが表示されます。 Echoのセットアップ

Echoで使用するWi-Fiの接続情報を入力します。 f:id:y-matsushita:20171222143318p

設定内容に問題がなければStatusがSuccessに変わります。
ここまででEchoとAlexa for Businessの連携は完了です。
f:id:y-matsushita:20171222145212j:plain:w700


Alexa for Businessでの設定

ここからはAWS上での操作になります。
Alexa for Business側を開いてEcho Deviceが新たに追加されていることを確認しましょう。
f:id:y-matsushita:20171222145738p:plain:w700

ここからはDeviceにSkillを追加する手順を記載します。
DeviceはRoomごとに異なるSkillを設定可能です。
必要な作業は以下の通りです。設定内容は後から変更可能です。

・Room profileとSkill groupを作成。
・Skillを有効化してSkill groupに追加。
・Roomを作成してRoom profileとSkill groupとDeviceを設定。
・Providerの追加。(Zoom for Alexa用)

Room profileの作成

まずはRoom profileとSkill groupを作成しましょう。
画面左のConfigurationからRoom profilesを開き、「Create room profile」をクリックします。
f:id:y-matsushita:20171222152213j:plain:w700

「Create room profile」で設定内容を記入します。
f:id:y-matsushita:20171222152346j:plain:w700
・Profile name : Room profile名
・Address : 所在地
・Time zone : タイムゾーン
・Wake word : ウェイクアップワード(Alexa, Amazon, Echo, Computerから選択)
・Temperature units : 摂氏・華氏の選択
・Distance units : フィート・メートルの選択
・Maximum volume : デバイス音量の最大値(6~10)
・Device setup mode : セットアップモードの有効化。Offの場合、セットアップモードにならなくなる
・Outbound calling : 電話の発信の有効化

Skill groupの作成

次はスキルを管理するためのSkill groupを作成します。
あとで「Zoom for Alexa」のスキルを有効化してグループ化させるためのものです。
「Create skill group」をクリックしましょう。
Alexa for Business Skill groupの作成

Skill groupの名前を入力するだけで、ひとまずの作成は完了です。
f:id:y-matsushita:20171222155208j:plain:w500

Roomの作成

画面左上のRoomsから「Create room」をクリックしてRoomを作成します。
Alexa for Business Roomの作成

Room名と先ほど作成したRoom profileを設定します。
Alexa for Business Room名の設定

Roomに先ほど端末登録したEchoを追加します。
端末登録したEchoを設定

Roomに先ほど作成したSkill groupを設定します。 Skill groupを設定

問題なければ作成完了です。
Roomの作成完了


Skillの追加と「Zoom for Alexa」の有効化

画面左のSkillsをクリックします。
Alexa for Business スキルの設定

Alexa skills storeタブを開いて「zoom」で検索しましょう。
Zoom for Alexa がヒットしたら Enable をクリックします。
Zoom for Alexaを有効化

Zoom RoomsアカウントでログインしてZoom for Alexa を有効化します。
Zoomアカウントと連携

問題なく有効化できればEnable skillsにZoom for Alexa が現れます。
Zoom for Alexaが追加される

Zoom for AlexaをSkill groupに登録

Skill groupsから先ほど作成したSkill groupを選択します。
Zoom for AlexaをSkill groupに登録

Add skillsからSkill groupにZoom for Alexaを追加します。
Zoom for Alexaを追加

追加されると以下のようにSkill groupに追加されます。
Zoom for Alexaを追加完了

Zoom for AlexaとZoomアカウントの連携

SkillsのZoom for AlexaをクリックしてZoom for Alexaの詳細設定を確認します。
「Link account to this room」が未設定になっている場合は、設定を行います。
Zoom for Alexaとアカウント連携

Zoom Roomsアカウントでログインして連携します。
Zoom for Alexaとアカウント連携

上手くいけばボタンの表示が「Link master account」になります。
ここでの連携は結構失敗しやすいですが、失敗したときの履歴が残っていると連続で失敗してしまうため、
上手くいかない場合は以下のようなことを試すと上手くいくかもしれません。

・一旦ブラウザでZoomのサイトへ行ってログアウトしてから管理者のZoom roomsアカウントで試す。
・ブラウザのシークレットウィンドウで試す。
・Configurationに適当なテキストを設定する。

Zoom for Alexa設定完了

Provider設定にZoomを追加

画面左のConferencingを開き、「Add provider」をクリックします。
ProviderにZoomを追加

Providerの設定情報を入力します。特に設定を変更しなくても動作しますが、
ミーティングスタート時にMeeting PINの要求が必要であれば、OptionalかRequiredに変更します。
ZoomのProvider設定

追加が完了すると以下のようにProviderとしてZoomが表示されます。
ZoomProvider追加完了


設定内容の確認

大変長くなりましたが、以上で設定は完了です。
確認として以下の点が問題なければ設定は大丈夫です。

・RoomにDeviceが設定されているか。
・RoomにRoom profileとZoom for Alexa スキルの入ったSkill groupが設定されているか。
・Zoom for AlexaスキルとZoom Roomsアカウントが連携できているか。
・ProviderにZoomが追加されているか。

あとは最後に重要な点ですが、Alexa for Businessのスキルを有効化するために、Echoを再起動しましょう。
どうやらスキルの追加をした後に再起動をしないと、有効化されないようなので注意が必要です。
(私はここに気付かず、何時間も設定を見直すハメになりました。)

スキルが動かない場合は適当に別のスキルを試して動くか確認してみると良いでしょう。
Alexa for Businessには「Crazy Jokes」のような単純にジョークを言うだけのスキルもあるので、
それらを有効化して動くかどうかを見るだけでも見直す箇所が絞り込めるかと思います。


Zoom for Alexaを使う

それでは、Zoom for Alexaを使ってみましょう。
Echoに「アレクサ、スタート、ミーティング!」と話しかけると、「ミーティングIDは何ですか?」と英語で返してくれます。
ここで返すミーティングIDはZoom Roomsだけでなく個人アカウントのミーティングIDでもOKです。

今回は試しに個人アカウントのzoom.usに繋げてみます。
zoom.usを開き、以下の画面に書かれている番号をAlexaに向かって英語で読み上げてください。
ZoomのミーティングID

しばらく待っていると、zoom.usのほうがホスト状態になっていれば自然に繋がります。
ホスト状態じゃなかった場合は、Alexaから軽快な音楽が流れ始めて待機状態になるようです。
待機状態のときにzoom.us側でインスタントミーティングを始めるとAlexaとの接続が開始されます。
ただし待機状態になっていたときにzoom.us側には通知などがされなかったので、
事前に繋げることを伝えておくか、常にホスト状態にしておく等の運用をする必要がありそうです。 Zoom for Alexaを繋げた結果

実際に動かしてみた様子です。 Amazon EchoとPCのZoomのクライアントで通話ができました!
Echoに向かって話しかけると、ちゃんとPCから音声が返ってきます。 (映像は繋がってません。)
Zoom for Alexa実行中

まとめ

今回はAlexa for BusinessのスキルとしてZoom for Alexaを試してみました。
ハンズフリーで相手と通話を可能にするのは未来感がありますね。
ただし相手のミーティングIDを読み上げなければいけなかったり、言語が英語だったりとまだまだ使い辛さを感じます。

個人的には「アレクサ、ズームルームでホールに接続して!」と日本語で言うだけで映像と音声を繋げたいですね。
Zoom RoomsにはAPIがあるので、次はそれを使って上記のような会議室同士をつなぐAlexaアプリを開発してみます。
上手くいったら、またこちらのブログで皆様にご紹介いたします!

参考

Alexa for Business Administration Guide
Zoom with Alexa for Business: Meet Without Lifting a Finger

*1:EchoをAlexa for Businessに端末登録するためにexeの実行環境が必要です。

*2:Zoom for Alexaを有効化するために必要。他のスキルであれば不要です。